diff --git a/.gitignore b/.gitignore index c1dd7d6568f5d8fbb6f1b4023d63422bcb55e577..d8f0b11274f787754546a06a55e6cb9f1a924c8d 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ clients/flash/**/build clients/flash/**/.gradle **/.idea/* *.iml +*~ diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/GetWebcamsOnlyForModeratorReqMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/GetWebcamsOnlyForModeratorReqMsgHdlr.scala new file mode 100644 index 0000000000000000000000000000000000000000..8f626f74b98470c735f35093eed981bf7032aff1 --- /dev/null +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/GetWebcamsOnlyForModeratorReqMsgHdlr.scala @@ -0,0 +1,29 @@ +package org.bigbluebutton.core.apps.users + +import org.bigbluebutton.common2.msgs._ +import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } +import org.bigbluebutton.core2.MeetingStatus2x + +trait GetWebcamsOnlyForModeratorReqMsgHdlr { + this: UsersApp => + + val liveMeeting: LiveMeeting + val outGW: OutMsgRouter + + def handleGetWebcamsOnlyForModeratorReqMsg(msg: GetWebcamsOnlyForModeratorReqMsg) { + + def buildGetWebcamsOnlyForModeratorRespMsg(meetingId: String, userId: String, webcamsOnlyForModerator: Boolean): BbbCommonEnvCoreMsg = { + val routing = Routing.addMsgToClientRouting(MessageTypes.DIRECT, meetingId, userId) + val envelope = BbbCoreEnvelope(GetWebcamsOnlyForModeratorRespMsg.NAME, routing) + val body = GetWebcamsOnlyForModeratorRespMsgBody(webcamsOnlyForModerator, userId) + val header = BbbClientMsgHeader(GetWebcamsOnlyForModeratorRespMsg.NAME, meetingId, userId) + val event = GetWebcamsOnlyForModeratorRespMsg(header, body) + + BbbCommonEnvCoreMsg(envelope, event) + } + + val event = buildGetWebcamsOnlyForModeratorRespMsg(liveMeeting.props.meetingProp.intId, msg.body.requestedBy, + MeetingStatus2x.webcamsOnlyForModeratorEnabled(liveMeeting.status)) + outGW.send(event) + } +} \ No newline at end of file diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UpdateWebcamsOnlyForModeratorCmdMsgHdlr.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UpdateWebcamsOnlyForModeratorCmdMsgHdlr.scala new file mode 100644 index 0000000000000000000000000000000000000000..5c57980a4874acf802a690dd6a402a5b0ea88533 --- /dev/null +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UpdateWebcamsOnlyForModeratorCmdMsgHdlr.scala @@ -0,0 +1,32 @@ +package org.bigbluebutton.core.apps.users + +import org.bigbluebutton.common2.msgs._ +import org.bigbluebutton.core.running.{ LiveMeeting, OutMsgRouter } +import org.bigbluebutton.core2.MeetingStatus2x + +trait UpdateWebcamsOnlyForModeratorCmdMsgHdlr { + this: UsersApp => + + val liveMeeting: LiveMeeting + val outGW: OutMsgRouter + + def handleUpdateWebcamsOnlyForModeratorCmdMsg(msg: UpdateWebcamsOnlyForModeratorCmdMsg) { + log.info("Change webcams only for moderator status. meetingId=" + liveMeeting.props.meetingProp.intId + " webcamsOnlyForModeratorrecording=" + msg.body.webcamsOnlyForModerator) + if (MeetingStatus2x.webcamsOnlyForModeratorEnabled(liveMeeting.status) != msg.body.webcamsOnlyForModerator) { + MeetingStatus2x.setWebcamsOnlyForModerator(liveMeeting.status, msg.body.webcamsOnlyForModerator) + + val event = buildWebcamsOnlyForModeratorChangedEvtMsg(liveMeeting.props.meetingProp.intId, msg.body.setBy, msg.body.webcamsOnlyForModerator) + outGW.send(event) + } + + def buildWebcamsOnlyForModeratorChangedEvtMsg(meetingId: String, userId: String, webcamsOnlyForModerator: Boolean): BbbCommonEnvCoreMsg = { + val routing = Routing.addMsgToClientRouting(MessageTypes.BROADCAST_TO_MEETING, meetingId, userId) + val envelope = BbbCoreEnvelope(WebcamsOnlyForModeratorChangedEvtMsg.NAME, routing) + val body = WebcamsOnlyForModeratorChangedEvtMsgBody(webcamsOnlyForModerator, userId) + val header = BbbClientMsgHeader(WebcamsOnlyForModeratorChangedEvtMsg.NAME, meetingId, userId) + val event = WebcamsOnlyForModeratorChangedEvtMsg(header, body) + + BbbCommonEnvCoreMsg(envelope, event) + } + } +} \ No newline at end of file diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala index 5a8c6c37d540da089b2d3119bf900f281b04c4b8..d1bb4399568b635fec35a1ac36772f9eb8de4b63 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/apps/users/UsersApp.scala @@ -129,7 +129,9 @@ class UsersApp( with LogoutAndEndMeetingCmdMsgHdlr with MeetingActivityResponseCmdMsgHdlr with SetRecordingStatusCmdMsgHdlr + with UpdateWebcamsOnlyForModeratorCmdMsgHdlr with GetRecordingStatusReqMsgHdlr + with GetWebcamsOnlyForModeratorReqMsgHdlr with AssignPresenterReqMsgHdlr with EjectDuplicateUserReqMsgHdlr with EjectUserFromMeetingCmdMsgHdlr diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala index 8f02c57d6dc495f66e0c8ea321eeb938eec51e31..e0a0bb1f6064b1a9464d290809a776e42d6d5d2c 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/pubsub/senders/ReceivedJsonMsgHandlerActor.scala @@ -266,6 +266,10 @@ class ReceivedJsonMsgHandlerActor( routeGenericMsg[GetRecordingStatusReqMsg](envelope, jsonNode) case GetScreenshareStatusReqMsg.NAME => routeGenericMsg[GetScreenshareStatusReqMsg](envelope, jsonNode) + case GetWebcamsOnlyForModeratorReqMsg.NAME => + routeGenericMsg[GetWebcamsOnlyForModeratorReqMsg](envelope, jsonNode) + case UpdateWebcamsOnlyForModeratorCmdMsg.NAME => + routeGenericMsg[UpdateWebcamsOnlyForModeratorCmdMsg](envelope, jsonNode) // Lock settings case LockUserInMeetingCmdMsg.NAME => diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/record/events/WebcamsOnlyForModeratorRecordEvent.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/record/events/WebcamsOnlyForModeratorRecordEvent.scala new file mode 100644 index 0000000000000000000000000000000000000000..db1b18aa5d9950e12777187d2b74575b4b7915cd --- /dev/null +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/record/events/WebcamsOnlyForModeratorRecordEvent.scala @@ -0,0 +1,39 @@ +/** + * BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ + * + * Copyright (c) 2018 BigBlueButton Inc. and by respective authors (see below). + * + * This program is free software; you can redistribute it and/or modify it under the + * terms of the GNU Lesser General Public License as published by the Free Software + * Foundation; either version 3.0 of the License, or (at your option) any later + * version. + * + * BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A + * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License along + * with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. + * + */ + +package org.bigbluebutton.core.record.events; + +class WebcamsOnlyForModeratorRecordEvent extends AbstractParticipantRecordEvent { + import WebcamsOnlyForModeratorRecordEvent._ + + setEvent("WebcamsOnlyForModeratorEvent") + + def setUserId(userId: String) { + eventMap.put(USER_ID, userId) + } + + def setWebcamsOnlyForModerator(webcamsOnlyForModerator: Boolean) { + eventMap.put(WEBCAMS_ONLY_FOR_MODERATOR, webcamsOnlyForModerator.toString) + } +} + +object WebcamsOnlyForModeratorRecordEvent { + protected final val USER_ID = "userId" + protected final val WEBCAMS_ONLY_FOR_MODERATOR = "webacmsOnlyForModerator" +} diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala index ec3978af1205a63e21a20f8085486524da91fbbf..43cf715540c0b367c61c2670f5dab94e9e3e0e88 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core/running/MeetingActor.scala @@ -162,6 +162,9 @@ class MeetingActor( MeetingStatus2x.unmuteMeeting(liveMeeting.status) } + // Set webcamsOnlyForModerator property in case we didn't after meeting creation + MeetingStatus2x.setWebcamsOnlyForModerator(liveMeeting.status, liveMeeting.props.usersProp.webcamsOnlyForModerator) + /*******************************************************************/ // Helper to create fake users for testing (ralam jan 5, 2018) //object FakeTestData extends FakeTestData @@ -223,6 +226,8 @@ class MeetingActor( case m: MeetingActivityResponseCmdMsg => state = usersApp.handleMeetingActivityResponseCmdMsg(m, state) case m: LogoutAndEndMeetingCmdMsg => usersApp.handleLogoutAndEndMeetingCmdMsg(m, state) case m: SetRecordingStatusCmdMsg => usersApp.handleSetRecordingStatusCmdMsg(m) + case m: GetWebcamsOnlyForModeratorReqMsg => usersApp.handleGetWebcamsOnlyForModeratorReqMsg(m) + case m: UpdateWebcamsOnlyForModeratorCmdMsg => usersApp.handleUpdateWebcamsOnlyForModeratorCmdMsg(m) case m: GetRecordingStatusReqMsg => usersApp.handleGetRecordingStatusReqMsg(m) case m: ChangeUserEmojiCmdMsg => handleChangeUserEmojiCmdMsg(m) // Client requested to eject user diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala index 9de28236823d961531058d591486c2549fb643c3..ad82eb6a10282471ad919bc149ad938070009b3e 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/AnalyticsActor.scala @@ -40,6 +40,7 @@ class AnalyticsActor extends Actor with ActorLogging { case m: ValidateAuthTokenRespMsg => logMessage(msg) case m: UserJoinedMeetingEvtMsg => logMessage(msg) case m: RecordingStatusChangedEvtMsg => logMessage(msg) + case m: WebcamsOnlyForModeratorChangedEvtMsg => logMessage(msg) case m: UserLeftMeetingEvtMsg => logMessage(msg) case m: PresenterUnassignedEvtMsg => logMessage(msg) case m: PresenterAssignedEvtMsg => logMessage(msg) diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/MeetingStatus2x.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/MeetingStatus2x.scala index 884ce39caee78196eba3d16d170d773e5bd176bb..83804fcaaec33c08c60cb12bb69951cd8f927ef5 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/MeetingStatus2x.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/core2/MeetingStatus2x.scala @@ -52,6 +52,8 @@ object MeetingStatus2x { def isRecording(status: MeetingStatus2x): Boolean = status.recording def setVoiceRecordingFilename(status: MeetingStatus2x, path: String) = status.voiceRecordingFilename = path def getVoiceRecordingFilename(status: MeetingStatus2x): String = status.voiceRecordingFilename + def setWebcamsOnlyForModerator(status: MeetingStatus2x, value: Boolean) = status.webcamsOnlyForModerator = value + def webcamsOnlyForModeratorEnabled(status: MeetingStatus2x): Boolean = status.webcamsOnlyForModerator def permisionsInitialized(status: MeetingStatus2x): Boolean = status.permissionsInited def initializePermissions(status: MeetingStatus2x) = status.permissionsInited = true def audioSettingsInitialized(status: MeetingStatus2x): Boolean = status.audioSettingsInited @@ -85,5 +87,7 @@ class MeetingStatus2x { private var voiceRecordingFilename: String = "" private var extension = new MeetingExtensionProp + + private var webcamsOnlyForModerator = false } diff --git a/akka-bbb-apps/src/main/scala/org/bigbluebutton/endpoint/redis/RedisRecorderActor.scala b/akka-bbb-apps/src/main/scala/org/bigbluebutton/endpoint/redis/RedisRecorderActor.scala index a3508cc696ffe692da84b242adfdd8b93c0bca67..b6a151d1addb822756a4c62de23d24edc53cc681 100755 --- a/akka-bbb-apps/src/main/scala/org/bigbluebutton/endpoint/redis/RedisRecorderActor.scala +++ b/akka-bbb-apps/src/main/scala/org/bigbluebutton/endpoint/redis/RedisRecorderActor.scala @@ -95,6 +95,7 @@ class RedisRecorderActor(val system: ActorSystem) // Meeting case m: RecordingStatusChangedEvtMsg => handleRecordingStatusChangedEvtMsg(m) + case m: WebcamsOnlyForModeratorChangedEvtMsg => handleWebcamsOnlyForModeratorChangedEvtMsg(m) case m: EndAndKickAllSysMsg => handleEndAndKickAllSysMsg(m) // Recording @@ -462,6 +463,15 @@ class RedisRecorderActor(val system: ActorSystem) record(msg.header.meetingId, ev.toMap) } + + private def handleWebcamsOnlyForModeratorChangedEvtMsg(msg: WebcamsOnlyForModeratorChangedEvtMsg) { + val ev = new WebcamsOnlyForModeratorRecordEvent() + ev.setMeetingId(msg.header.meetingId) + ev.setUserId(msg.body.setBy) + ev.setWebcamsOnlyForModerator(msg.body.webcamsOnlyForModerator) + + record(msg.header.meetingId, ev.toMap) + } private def handleEndAndKickAllSysMsg(msg: EndAndKickAllSysMsg): Unit = { val ev = new EndAndKickAllRecordEvent() diff --git a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala index d8038d4654be609b00b3e93f63a651b5b4dce148..00fdc483958f309d3860de29fa4edbdad80aed47 100755 --- a/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala +++ b/bbb-common-message/src/main/scala/org/bigbluebutton/common2/msgs/UsersMgs.scala @@ -84,15 +84,13 @@ object GetRecordingStatusReqMsg { val NAME = "GetRecordingStatusReqMsg" } case class GetRecordingStatusReqMsg(header: BbbClientMsgHeader, body: GetRecordingStatusReqMsgBody) extends StandardMsg case class GetRecordingStatusReqMsgBody(requestedBy: String) - /** - * Sent by user as response to get recording mark. + * Sent to user as response to get recording mark. */ object GetRecordingStatusRespMsg { val NAME = "GetRecordingStatusRespMsg" } case class GetRecordingStatusRespMsg(header: BbbClientMsgHeader, body: GetRecordingStatusRespMsgBody) extends BbbCoreMsg case class GetRecordingStatusRespMsgBody(recording: Boolean, requestedBy: String) - /** * Sent by user to start recording mark. */ @@ -107,6 +105,34 @@ object RecordingStatusChangedEvtMsg { val NAME = "RecordingStatusChangedEvtMsg" case class RecordingStatusChangedEvtMsg(header: BbbClientMsgHeader, body: RecordingStatusChangedEvtMsgBody) extends BbbCoreMsg case class RecordingStatusChangedEvtMsgBody(recording: Boolean, setBy: String) +/** + * Sent by user to update webcamsOnlyForModerator meeting property. + */ +object UpdateWebcamsOnlyForModeratorCmdMsg { val NAME = "UpdateWebcamsOnlyForModeratorCmdMsg" } +case class UpdateWebcamsOnlyForModeratorCmdMsg(header: BbbClientMsgHeader, body: UpdateWebcamsOnlyForModeratorCmdMsgBody) extends StandardMsg +case class UpdateWebcamsOnlyForModeratorCmdMsgBody(webcamsOnlyForModerator: Boolean, setBy: String) + +/** + * Sent by user to get the value of webcamsOnlyForModerator mark. + */ +object GetWebcamsOnlyForModeratorReqMsg { val NAME = "GetWebcamsOnlyForModeratorReqMsg" } +case class GetWebcamsOnlyForModeratorReqMsg(header: BbbClientMsgHeader, body: GetWebcamsOnlyForModeratorReqMsgBody) extends StandardMsg +case class GetWebcamsOnlyForModeratorReqMsgBody(requestedBy: String) + +/** + * Sent to user as response to get webcamsOnlyForModerator mark. + */ +object GetWebcamsOnlyForModeratorRespMsg { val NAME = "GetWebcamsOnlyForModeratorRespMsg" } +case class GetWebcamsOnlyForModeratorRespMsg(header: BbbClientMsgHeader, body: GetWebcamsOnlyForModeratorRespMsgBody) extends BbbCoreMsg +case class GetWebcamsOnlyForModeratorRespMsgBody(webcamsOnlyForModerator: Boolean, requestedBy: String) + +/** + * Sent to all users about webcam only for moderator value. + */ +object WebcamsOnlyForModeratorChangedEvtMsg { val NAME = "WebcamsOnlyForModeratorChangedEvtMsg" } +case class WebcamsOnlyForModeratorChangedEvtMsg(header: BbbClientMsgHeader, body: WebcamsOnlyForModeratorChangedEvtMsgBody) extends BbbCoreMsg +case class WebcamsOnlyForModeratorChangedEvtMsgBody(webcamsOnlyForModerator: Boolean, setBy: String) + /** * Sent by user to get status of screenshare (meant for late joiners). */ diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java index c79a7bdc60bbc51a1848e7ba6d116e37736ed833..4a17a2332102bf48ae5d0db0e49637db0931dd66 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/MeetingService.java @@ -257,6 +257,7 @@ public class MeetingService implements MessageListener { logData.put("name", m.getName()); logData.put("duration", m.getDuration()); logData.put("isBreakout", m.isBreakout()); + logData.put("webcamsOnlyForModerator", m.getWebcamsOnlyForModerator()); logData.put("record", m.isRecord()); logData.put("event", "create_meeting"); logData.put("description", "Create meeting."); diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java index 6541cf81be418db5d60ff0f7fee36fa4b1c6ed88..d8891d2ed24358c06b90914f6077d28aa0dfabdc 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/ParamsProcessorUtil.java @@ -500,9 +500,9 @@ public class ParamsProcessorUtil { Boolean muteOnStart = defaultMuteOnStart; if (!StringUtils.isEmpty(params.get("muteOnStart"))) { muteOnStart = Boolean.parseBoolean(params.get("muteOnStart")); - meeting.setMuteOnStart(muteOnStart); } + meeting.setMuteOnStart(muteOnStart); return meeting; } diff --git a/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java b/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java index 8a5775126d19a08ba3f93152dc580e80af095b45..1095dec1356bf41ac18a4b50ba8ff722914c9305 100755 --- a/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java +++ b/bbb-common-web/src/main/java/org/bigbluebutton/api/domain/Meeting.java @@ -207,8 +207,8 @@ public class Meeting { return createdTime; } - public Integer setSequence(Integer s) { - return sequence = s; + public void setSequence(Integer s) { + sequence = s; } public Integer getSequence() { @@ -263,8 +263,8 @@ public class Meeting { return intMeetingId; } - public String setParentMeetingId(String p) { - return parentMeetingId = p; + public void setParentMeetingId(String p) { + parentMeetingId = p; } public String getParentMeetingId() { diff --git a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala index 7b82d7097112b0cc45a0ba67d9e0f83da64fc723..2fcd1f5d463684d8e83c996dad407ee369f4a5a2 100755 --- a/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala +++ b/bbb-common-web/src/main/scala/org/bigbluebutton/api2/BbbWebApiGWApp.scala @@ -12,10 +12,11 @@ import org.bigbluebutton.presentation.messages._ import scala.concurrent.duration._ -class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, - val screenshareRtmpServer: String, - val screenshareRtmpBroadcastApp: String, - val screenshareConfSuffix: String) extends IBbbWebApiGWApp with SystemConfiguration{ +class BbbWebApiGWApp( + val oldMessageReceivedGW: OldMessageReceivedGW, + val screenshareRtmpServer: String, + val screenshareRtmpBroadcastApp: String, + val screenshareConfSuffix: String) extends IBbbWebApiGWApp with SystemConfiguration { implicit val system = ActorSystem("bbb-web-common") @@ -38,15 +39,14 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, private val msgToAkkaAppsEventBus = new MsgToAkkaAppsEventBus /** - * Not used for now as we will still user MeetingService for 2.0 (ralam july 4, 2017) - */ + * Not used for now as we will still user MeetingService for 2.0 (ralam july 4, 2017) + */ //private val meetingManagerActorRef = system.actorOf( // MeetingsManagerActor.props(msgToAkkaAppsEventBus), "meetingManagerActor") //msgFromAkkaAppsEventBus.subscribe(meetingManagerActorRef, fromAkkaAppsChannel) private val oldMeetingMsgHdlrActor = system.actorOf( - OldMeetingMsgHdlrActor.props(oldMessageReceivedGW), "oldMeetingMsgHdlrActor" - ) + OldMeetingMsgHdlrActor.props(oldMessageReceivedGW), "oldMeetingMsgHdlrActor") msgFromAkkaAppsEventBus.subscribe(oldMeetingMsgHdlrActor, fromAkkaAppsChannel) private val msgToAkkaAppsToJsonActor = system.actorOf( @@ -55,7 +55,7 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, msgToAkkaAppsEventBus.subscribe(msgToAkkaAppsToJsonActor, toAkkaAppsChannel) private val appsRedisSubscriberActor = system.actorOf( - AppsRedisSubscriberActor.props(receivedJsonMsgBus,oldMessageEventBus), "appsRedisSubscriberActor") + AppsRedisSubscriberActor.props(receivedJsonMsgBus, oldMessageEventBus), "appsRedisSubscriberActor") private val receivedJsonMsgHdlrActor = system.actorOf( ReceivedJsonMsgHdlrActor.props(msgFromAkkaAppsEventBus), "receivedJsonMsgHdlrActor") @@ -67,7 +67,7 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, oldMessageEventBus.subscribe(oldMessageJsonReceiverActor, fromAkkaAppsOldJsonChannel) - /***** +/***** * External APIs for Gateway */ def send(channel: String, json: String): Unit = { @@ -77,21 +77,22 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, def createMeeting(meetingId: String, extMeetingId: String, parentMeetingId: String, meetingName: String, recorded: java.lang.Boolean, voiceBridge: String, duration: java.lang.Integer, - autoStartRecording: java.lang.Boolean, + autoStartRecording: java.lang.Boolean, allowStartStopRecording: java.lang.Boolean, webcamsOnlyForModerator: java.lang.Boolean, moderatorPass: String, viewerPass: String, createTime: java.lang.Long, createDate: String, isBreakout: java.lang.Boolean, sequence: java.lang.Integer, metadata: java.util.Map[String, String], guestPolicy: String, welcomeMsgTemplate: String, welcomeMsg: String, modOnlyMessage: String, - dialNumber: String, maxUsers: java.lang.Integer, maxInactivityTimeoutMinutes: java.lang.Integer, - warnMinutesBeforeMax: java.lang.Integer, - meetingExpireIfNoUserJoinedInMinutes: java.lang.Integer, + dialNumber: String, maxUsers: java.lang.Integer, maxInactivityTimeoutMinutes: java.lang.Integer, + warnMinutesBeforeMax: java.lang.Integer, + meetingExpireIfNoUserJoinedInMinutes: java.lang.Integer, meetingExpireWhenLastUserLeftInMinutes: java.lang.Integer, - muteOnStart: java.lang.Boolean): Unit = { + muteOnStart: java.lang.Boolean): Unit = { val meetingProp = MeetingProp(name = meetingName, extId = extMeetingId, intId = meetingId, isBreakout = isBreakout.booleanValue()) - val durationProps = DurationProps(duration = duration.intValue(), + val durationProps = DurationProps( + duration = duration.intValue(), createdTime = createTime.longValue(), createDate, maxInactivityTimeoutMinutes = maxInactivityTimeoutMinutes.intValue(), warnMinutesBeforeMax = warnMinutesBeforeMax.intValue(), @@ -108,7 +109,8 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, val usersProp = UsersProp(maxUsers = maxUsers.intValue(), webcamsOnlyForModerator = webcamsOnlyForModerator.booleanValue(), guestPolicy = guestPolicy) val metadataProp = MetadataProp(mapAsScalaMap(metadata).toMap) - val screenshareProps = ScreenshareProps(screenshareConf = voiceBridge + screenshareConfSuffix, + val screenshareProps = ScreenshareProps( + screenshareConf = voiceBridge + screenshareConfSuffix, red5ScreenshareIp = screenshareRtmpServer, red5ScreenshareApp = screenshareRtmpBroadcastApp) @@ -144,7 +146,7 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, msgToAkkaAppsEventBus.publish(MsgToAkkaApps(toAkkaAppsChannel, event)) } - def destroyMeeting (msg: DestroyMeetingMessage): Unit = { + def destroyMeeting(msg: DestroyMeetingMessage): Unit = { val event = MsgBuilder.buildDestroyMeetingSysCmdMsg(msg) msgToAkkaAppsEventBus.publish(MsgToAkkaApps(toAkkaAppsChannel, event)) } @@ -173,7 +175,7 @@ class BbbWebApiGWApp(val oldMessageReceivedGW: OldMessageReceivedGW, } def sendDocConversionMsg(msg: IDocConversionMsg): Unit = { - if (msg.isInstanceOf[DocPageGeneratedProgress]) { + if (msg.isInstanceOf[DocPageGeneratedProgress]) { val event = MsgBuilder.buildPresentationPageGeneratedPubMsg(msg.asInstanceOf[DocPageGeneratedProgress]) msgToAkkaAppsEventBus.publish(MsgToAkkaApps(toAkkaAppsChannel, event)) } else if (msg.isInstanceOf[OfficeDocConversionProgress]) { diff --git a/bigbluebutton-client/branding/default/style/css/V2Theme.css b/bigbluebutton-client/branding/default/style/css/V2Theme.css index 1ffe485fd4b30c9ec204d8df5b08f66439ef860b..4b1cc7a315bece3a8d0314c6bcee181f29df7db4 100755 --- a/bigbluebutton-client/branding/default/style/css/V2Theme.css +++ b/bigbluebutton-client/branding/default/style/css/V2Theme.css @@ -146,6 +146,8 @@ phonecomponents|MuteMeButton { backgroundColor : #FFFFFF; paddingTop : 0; paddingBottom : 6; + verticalAlign : middle; + verticalGap : 0; } .breakoutRoomRibbon { @@ -648,6 +650,10 @@ chat|ChatOptionsTab { fontSize : 14; } +chat|ChatMessageRenderer { + moderatorIcon : Embed(source="assets/swf/v2_skin.swf", symbol="Icon_User_Chat_Moderator"); +} + .chatMessageListStyle { borderStyle : none; rollOverColor : #FFFFFF; @@ -668,6 +674,15 @@ chat|ChatMessageRenderer { textAlign : right; } +.chatMessageHeader { + color : #808080; +} + +.chatMessageHeaderModerator { + color : #808080; + fontWeight : bold; +} + /* //------------------------------ // CheckBox @@ -932,6 +947,7 @@ layout|LayoutsCombo { views|LogoutWindow, views|LoggedOutWindow { headerHeight : 32; + horizontalAlign : center; paddingBottom : 8; paddingLeft : 8; paddingRight : 8; @@ -948,6 +964,58 @@ views|LogoutWindow, views|LoggedOutWindow { paddingBottom : 8; } +.logoutRatingBox { + paddingTop : 12; + paddingBottom : 12; + horizontalAlign : center; + verticalGap : 8; +} + +.logoutTitle { + fontSize : 24; +} + +.logoutSubTitle { + fontSize : 16; + color : #4E5A66; +} + +.loggedOutContainer { + horizontalAlign : center; + verticalGap : 4; +} + +.logoutFeedbackHintBoxStyle { + backgroundColor : #CDD4DB; + paddingLeft : 0; + paddingRight : 0; + verticalGap : 0; +} + +views|StarRating { + paddingTop : 4; + paddingBottom : 4; + verticalGap : 8; + horizontalGap : 0; + emptyStar : Embed(source="assets/swf/v2_skin.swf", symbol="Icon_Star_Empty"); + filledStar : Embed(source="assets/swf/v2_skin.swf", symbol="Icon_Star_Filled"); +} + +.starBoxStyle { + horizontalAlign : center; + verticalGap : 4; + paddingLeft : 0; + paddingRight : 0; + paddingTop : 4; + paddingBottom : 4; + +} + +.logoutRule { + strokeWidth : 1; + color : #BBBDBF; +} + /* //------------------------------ // Lock Settings @@ -958,10 +1026,19 @@ views|LockSettings { headerHeight : 0; } +.lockSettingsColumnTitleStyle { + fontSize : 14; + fontWeight : bold; +} + .lockSettingsDefaultLabelStyle { fontSize : 14; } +.lockSettingsCheckboxColumn { + horizontalAlign : center; +} + /* //------------------------------ // MainApplicationShell @@ -1366,13 +1443,17 @@ mx|Panel { textDecoration : underline; } -.presentationUploadFileFormatHintBoxStyle, .audioBroswerHintBoxStyle { +.presentationUploadFileFormatHintBoxStyle, .audioBroswerHintBoxStyle, .lockSettingsHintBoxStyle { backgroundColor : #CDD4DB; + horizontalAlign : center; + paddingTop : 8; + paddingBottom : 8; paddingLeft : 10; paddingRight : 10; + verticalAlign : middle; } -.presentationUploadFileFormatHintTextStyle, .audioBroswerHintTextStyle { +.presentationUploadFileFormatHintTextStyle, .audioBroswerHintTextStyle, .logoutFeedbackHint, .lockSettingHintTextStyle { fontWeight : bold; } @@ -1804,7 +1885,6 @@ videoconf|UserGraphicHolder { .userGraphicBackground { backgroundColor : #FFFFFF; - borderStyle : solid; borderColor : #000000; borderThickness : 0; } diff --git a/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.fla b/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.fla index a266fb404fd36406cf1fe74544a9a747d45b38be..2013f15199f0faaaa01ce1afd0c290ff3a9c86f3 100644 Binary files a/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.fla and b/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.fla differ diff --git a/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.swf b/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.swf index 58863e818a1e3ce9f7980c5ae95faea81d77849e..a228164ae1f6d88923f2e7bea1a2314d594ad932 100644 Binary files a/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.swf and b/bigbluebutton-client/branding/default/style/css/assets/swf/v2_skin.swf differ diff --git a/bigbluebutton-client/locale/am/bbbResources.properties b/bigbluebutton-client/locale/am/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/am/bbbResources.properties +++ b/bigbluebutton-client/locale/am/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/am_ET/bbbResources.properties b/bigbluebutton-client/locale/am_ET/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/am_ET/bbbResources.properties +++ b/bigbluebutton-client/locale/am_ET/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ar/bbbResources.properties b/bigbluebutton-client/locale/ar/bbbResources.properties index 0c7a7077d3e81668a79b65383c8dbb9ef938b197..17bbf6a6fd8009f569f66c05582c7f8dc43669f7 100644 --- a/bigbluebutton-client/locale/ar/bbbResources.properties +++ b/bigbluebutton-client/locale/ar/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = الإتصال بالخادم -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = تØميل bbb.mainshell.statusProgress.cannotConnectServer = عÙوا, لا يمكن الاتصال بالخادم. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (إصدار {0}) bbb.mainshell.logBtn.toolTip = اÙØªØ Ù†Ø§Ùذة السجلّ @@ -9,21 +9,21 @@ bbb.mainshell.invalidAuthToken = رمز مصادقة غير ØµØ§Ù„Ø bbb.mainshell.resetLayoutBtn.toolTip = اعادة تعيين التصميم bbb.mainshell.notification.tunnelling = النقل عبر الأنÙاق bbb.mainshell.notification.webrtc = صوت WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = تبديل الشاشة الكاملة +bbb.mainshell.quote.sentence.1 = إنما العلم بالتعلم. +bbb.mainshell.quote.attribution.1 = رسول الله Ù…Øمد ï·º +bbb.mainshell.quote.sentence.2 = عجبت لمن لم يطلب العلم كي٠تدعوه Ù†Ùسه إلى مكرمة.. +bbb.mainshell.quote.attribution.2 = عبد الله بن المبارك +bbb.mainshell.quote.sentence.3 = من ظن أنه يستغني عن التعلّم Ùليبك٠على Ù†Ùسه +bbb.mainshell.quote.attribution.3 = أبو يوس٠+bbb.mainshell.quote.sentence.4 = العلم مغرس كل Ùخر ÙاÙتخر ... واØذر ÙŠÙوتك Ùخر ذاك المغرس +bbb.mainshell.quote.attribution.4 = الشاÙعي +bbb.mainshell.quote.sentence.5 = اغد عالماً أو متعلماً ØŒ ولا تغد إمعة بين ذلك +bbb.mainshell.quote.attribution.5 = ابن مسعود رضي الله عنه bbb.oldlocalewindow.reminder1 = قد يكون لديك ترجمة قديمة لـBigBlueButton. bbb.oldlocalewindow.reminder2 = الرجاء Ù…Ø³Ø Ø§Ù„Ù…Ù„Ùات المؤقتة للمتصÙØ ÙˆØاول مرة أخرى. bbb.oldlocalewindow.windowTitle = تØذير: ترجمة قديمة -bbb.audioSelection.title = كي٠ترغب بالانضمام للصوت؟ +bbb.audioSelection.title = كي٠ترغب الانضمام للصوت؟ bbb.audioSelection.btnMicrophone.label = ميكيرÙون bbb.audioSelection.btnMicrophone.toolTip = الانضمام للصوت بالميكرÙون الخاص بك bbb.audioSelection.btnListenOnly.label = الاستماع Ùقط @@ -44,8 +44,8 @@ bbb.micSettings.recommendHeadset = استخدم سماعات الرأس مع ا bbb.micSettings.changeMic = اختبار أو تغيير المايك bbb.micSettings.changeMic.toolTip = ÙØªØ Ù…Ø±Ø¨Ø¹ الØوار لإعدادات المايك لمشغل الÙلاش. bbb.micSettings.comboMicList.toolTip = اختيار ميكرÙون -bbb.micSettings.micRecordVolume.label = gain -bbb.micSettings.micRecordVolume.toolTip = ضبط إعداد "gain" ÙÙŠ الميكرÙون الخاص بك +bbb.micSettings.micRecordVolume.label = التضخيم +bbb.micSettings.micRecordVolume.toolTip = ضبط إعداد "التضخيم" ÙÙŠ الميكرÙون الخاص بك bbb.micSettings.nextButton = التالي bbb.micSettings.nextButton.toolTip = بدء اختبار الصدى bbb.micSettings.join = انضم للمØادثة @@ -66,14 +66,15 @@ bbb.micSettings.webrtc.waitingforice = الاتصال bbb.micSettings.webrtc.transferring = تتم عملية النقل bbb.micSettings.webrtc.endingecho = الانضمام للصوت bbb.micSettings.webrtc.endedecho = انتهى اختبار الصدى. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = أذونات ميكرÙون Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = أذونات ميكرÙون Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = تØذير صوتي bbb.micWarning.joinBtn.label = الانضمام على أي Øال bbb.micWarning.testAgain.label = الاختبار مرة أخرى -bbb.micWarning.message = لا يعرض الميكرÙون الخاص بك أي نشاط، وقد لا يتمكن الآخرين من سماعك خلال الجلسة. +bbb.micWarning.message = لا يعرض الميكرÙون الخاص بك أي نشاط، وقد لا يتمكن الآخرون من سماعك خلال الجلسة. bbb.webrtcWarning.message = الكش٠عن Øالة WebRTC التالية: {0}. هل تريد تجربة الÙلاش بدلاً عن ذلك؟ bbb.webrtcWarning.title = خطأ سمعي ÙÙŠ تقنية "ويب آر. تي. سي." bbb.webrtcWarning.failedError.1001 = خطأ 1001: انقطاع اتصال WebSocket @@ -93,48 +94,48 @@ bbb.webrtcWarning.failedError.endedunexpectedly = انتهاء اختبار ص bbb.webrtcWarning.connection.dropped = Ùشل اتصال WebRTC bbb.webrtcWarning.connection.reconnecting = Ù…Øاولة استعادة الاتصال bbb.webrtcWarning.connection.reestablished = تم اعادة الاتصال WebRTC -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = إلغاء bbb.mainToolbar.helpBtn = مساعدة bbb.mainToolbar.logoutBtn = خروج bbb.mainToolbar.logoutBtn.toolTip = تسجيل الخروج -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = اختر اللغة bbb.mainToolbar.settingsBtn = الإعدادات bbb.mainToolbar.settingsBtn.toolTip = اÙØªØ Ø§Ù„Ø¥Ø¹Ø¯Ø§Ø¯Ø§Øª bbb.mainToolbar.shortcutBtn = اختصارات المÙØ§ØªÙŠØ bbb.mainToolbar.shortcutBtn.toolTip = ÙØªØ Ù†Ø§Ùذة Ù…ÙØ§ØªÙŠØ Ø§Ù„Ø§Ø®ØªØµØ§Ø±Ø§Øª bbb.mainToolbar.recordBtn.toolTip.start = بدء التسجيل -bbb.mainToolbar.recordBtn.toolTip.stop = ايقا٠التسجيل -bbb.mainToolbar.recordBtn.toolTip.recording = يتم تسجيل الجلسة -bbb.mainToolbar.recordBtn.toolTip.notRecording = يتم تسجيل الجلسة -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.stop = إيقا٠التسجيل +bbb.mainToolbar.recordBtn.toolTip.recording = الجلسة قيد التسجيل +bbb.mainToolbar.recordBtn.toolTip.notRecording = الجلسة غير مسجلة +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = تأكيد التسجيل -bbb.mainToolbar.recordBtn.confirm.message.start = هل أنت متأكد من رغبتك ÙÙŠ بدء التسجيل الجلسة؟ -bbb.mainToolbar.recordBtn.confirm.message.stop = هل أنت متأكد من رغبتك ÙÙŠ ايقا٠التسجيل الجلسة؟ -bbb.mainToolbar.recordBtn..notification.title = تسجيل اشعار -bbb.mainToolbar.recordBtn..notification.message1 = بإمكانك تسجيل هذا الاجتماع. -bbb.mainToolbar.recordBtn..notification.message2 = يجب عليك النقر على زر بدء/ايقا٠التسجيل ÙÙŠ شريط العنوان من أجل بدء/انهاء التسجيل. +bbb.mainToolbar.recordBtn.confirm.message.start = هل أنت متأكد من رغبتك ÙÙŠ بدء تسجيل الجلسة؟ +bbb.mainToolbar.recordBtn.confirm.message.stop = هل أنت متأكد من رغبتك ÙÙŠ ايقا٠تسجيل الجلسة؟ +bbb.mainToolbar.recordBtn.notification.title = تسجيل اشعار +bbb.mainToolbar.recordBtn.notification.message1 = بإمكانك تسجيل هذا الاجتماع. +bbb.mainToolbar.recordBtn.notification.message2 = يجب عليك النقر على زر بدء/ايقا٠التسجيل ÙÙŠ شريط العنوان من أجل بدء/انهاء التسجيل. bbb.mainToolbar.recordingLabel.recording = (تسجيل) bbb.mainToolbar.recordingLabel.notRecording = لا يسجل -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = انتظار +bbb.guests.title = الضيو٠+bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = رÙض +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = تذكر الاختيار +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = إدارة الضيو٠bbb.clientstatus.title = تنبيه الاعدادات bbb.clientstatus.notification = الإخطارات الغير مقروءة bbb.clientstatus.close = إغلاق @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = اتصالك الصوتي WebRTC bbb.clientstatus.webrtc.almostWeakStatus = اتصالك الصوتي WebRTC سيئ bbb.clientstatus.webrtc.weakStatus = ربما يكون عند مشكلة مع الاتصال الصوتي WebRTC bbb.clientstatus.webrtc.message = نوصي باستخدام متصÙØ "Ùاير Ùوكس" أو "كروم" لتقديم تقنية سمعية Ø£Ùضل. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = جاÙا +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = تصغير الناÙذة bbb.window.maximizeRestoreBtn.toolTip = تكبير الناÙذة bbb.window.closeBtn.toolTip = اغلاق @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = الØالة bbb.users.usersGrid.statusItemRenderer.changePresenter = انقر لاختيار مقدم bbb.users.usersGrid.statusItemRenderer.presenter = المقدم bbb.users.usersGrid.statusItemRenderer.moderator = المدير -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = صوت Ùقط +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = تصÙيق +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = مرتبك +bbb.users.usersGrid.statusItemRenderer.neutral = Ù…Øايد +bbb.users.usersGrid.statusItemRenderer.happy = سعيد +bbb.users.usersGrid.statusItemRenderer.sad = Øزين bbb.users.usersGrid.statusItemRenderer.clearStatus = Ù…Ø³Ø Ø§Ù„Øالة bbb.users.usersGrid.statusItemRenderer.viewer = عارض bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = مشاركة كاميرا الويب @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = إلغاء كتم الصوت bbb.users.usersGrid.mediaItemRenderer.pushToMute = كتم الصوت {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Ù‚ÙÙ„ {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = عدم القÙÙ„ {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = طرد {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = ØØ°Ù {0} bbb.users.usersGrid.mediaItemRenderer.webcam = مشاركة كاميرا الويب bbb.users.usersGrid.mediaItemRenderer.micOff = إغلاق الميكرÙون bbb.users.usersGrid.mediaItemRenderer.micOn = تشغيل الميكرÙون bbb.users.usersGrid.mediaItemRenderer.noAudio = غير موجود ÙÙŠ الاجتماع الصوتي -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Ù…Ø³Ø -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = سعيد +bbb.users.emojiStatus.neutral = Ù…Øايد +bbb.users.emojiStatus.sad = Øزين +bbb.users.emojiStatus.confused = مرتبك +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = أرÙع إبهامي +bbb.users.emojiStatus.thumbsDown = أخÙظ إبهامي +bbb.users.emojiStatus.applause = تصÙيق +bbb.users.emojiStatus.agree = أواÙÙ‚ +bbb.users.emojiStatus.disagree = لا أواÙÙ‚ +bbb.users.emojiStatus.none = Ù…Ø³Ø +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = عرض تقديمي bbb.presentation.titleWithPres = عرض تقديمي : {0} bbb.presentation.quickLink.label = ناÙذة التقديم bbb.presentation.fitToWidth.toolTip = ملائمة العرض التقديمي للعرض bbb.presentation.fitToPage.toolTip = ملائمة العرض التقديمي للصÙØØ© bbb.presentation.uploadPresBtn.toolTip = رÙع العرض التقديمي -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = تنزيل العروض التقديمية +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = الشريØØ© السابقة bbb.presentation.btnSlideNum.accessibilityName = شريØØ© {0} من {1} bbb.presentation.btnSlideNum.toolTip = اختيار شريØØ© @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = اكتمل الرÙع. يرجى الانتظا bbb.presentation.uploaded = تم رÙعه. bbb.presentation.document.supported = الوثيقة المرÙوعة مدعومة. بدء التØويل... bbb.presentation.document.converted = تم تØويل وثيقة المكتب بنجاØ. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = الرجاء تØويل هذا المل٠إلى صيغة PDF bbb.presentation.error.io = خطأ IO: يرجى التواصل مع المدير. bbb.presentation.error.security = خطأ أمني: يرجى التواصل مع المدير. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = ارÙع bbb.fileupload.uploadBtn.toolTip = ارÙع المل٠المØدد bbb.fileupload.deleteBtn.toolTip = Øذ٠العرض التقديمي bbb.fileupload.showBtn = اعرض -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = عرض العرض التقديمي -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = إغلاق +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = إنشاء الصور المصغرة.. bbb.fileupload.progBarLbl = التقدم: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = إغلاق +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = تØميل +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = المل٠قابل للتنزيل bbb.chat.title = Ù…Øادثة bbb.chat.quickLink.label = ناÙذة المØادثة bbb.chat.cmpColorPicker.toolTip = لون النص bbb.chat.input.accessibilityName = Øقل تعديل رسائل المØادثة bbb.chat.sendBtn.toolTip = أرسل الرسالة bbb.chat.sendBtn.accessibilityName = أرسل الرسالة للمØادثة -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = ØÙظ المØادثة +bbb.chat.saveBtn.accessibilityName = ØÙظ المØادثة ÙÙŠ مل٠نصي +bbb.chat.saveBtn.label = ØÙظ +bbb.chat.save.complete = تم ØÙظ المØادثة Ø¨Ù†Ø¬Ø§Ø +bbb.chat.save.ioerror = +bbb.chat.save.filename = دردشة-عامة +bbb.chat.copyBtn.toolTip = نسخ المØادثة +bbb.chat.copyBtn.accessibilityName = نسخ المØادثة إلى الØاÙظة +bbb.chat.copyBtn.label = نسخ +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = تØذير +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = انسخ جميع النص bbb.chat.publicChatUsername = عام bbb.chat.optionsTabName = خيارات @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = بدء المشاركة bbb.publishVideo.startPublishBtn.toolTip = بدء مشاركة كاميرا الويب الخاصة بك bbb.publishVideo.startPublishBtn.errorName = لا يمكن مشاركة الوب كام بسبب {0} bbb.webcamPermissions.chrome.title = أذونات كاميرا الويب Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = كاميرا الويب bbb.videodock.quickLink.label = ناÙذة كاميرا الويب bbb.video.minimizeBtn.accessibilityName = تصغير ناÙذة كاميرا الويب @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = إغلاق مربع Øوار إعداد bbb.video.publish.closeBtn.label = إلغاء bbb.video.publish.titleBar = نشر ناÙذة كاميرا الويب bbb.video.streamClose.toolTip = إغلاق البث من أجل {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = مشاركة الشاشة: معاينة المقدّم bbb.screensharePublish.pause.tooltip = إيقا٠مشاركة الشاشة مؤقتا bbb.screensharePublish.pause.label = إيقا٠مؤقت @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = غير قادر عل bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = يبدو أنك قد تكون مختÙÙŠ أو تستخدم التصÙØ Ø§Ù„Ø®Ø§Øµ. تأكد ضمن إعدادات النتصÙØ Ø§Ù„Ø®Ø§Øµ بك أنك ØªØ³Ù…Ø Ø¨ØªØ´ØºÙŠÙ„ الإضاÙات ÙÙŠ التخÙÙŠ أوالتصÙØ Ø§Ù„Ø®Ø§Øµ. bbb.screensharePublish.WebRTCExtensionInstallButton.label = انقر هنا للتثبيت bbb.screensharePublish.WebRTCUseJavaButton.label = استخدام مشاركة الشاشة جاÙا -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = مشاركة الشاشة bbb.screenshareView.fitToWindow = التلائم مع الناÙذة bbb.screenshareView.actualSize = عرض الØجم الأصلي bbb.screenshareView.minimizeBtn.accessibilityName = تصغير ناÙذة عرض مشاركة الشاشة bbb.screenshareView.maximizeRestoreBtn.accessibilityName = تكبير ناÙذة عرض مشاركة الشاشة bbb.screenshareView.closeBtn.accessibilityName = إغلاق ناÙذة عرض مشاركة الشاشة -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = تعطيل الصوت bbb.toolbar.phone.toolTip.mute = ايقا٠الاستماع للاجتماع bbb.toolbar.phone.toolTip.unmute = بدء الاستماع للاجتماع bbb.toolbar.phone.toolTip.nomic = لا يمكن الكش٠عن ميكرÙون bbb.toolbar.deskshare.toolTip.start = ÙØªØ Ù†Ø§Ùذة نشر مشاركة الشاشة bbb.toolbar.deskshare.toolTip.stop = إيقا٠مشاركة شاشتك -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = ÙØªØ Ø§Ù„Ù…Ù„Ø§Øظات المشتركة bbb.toolbar.video.toolTip.start = مشاركة كاميرا الويب الخاصة بك bbb.toolbar.video.toolTip.stop = ايقا٠مشاركة كاميرا الويب الخاصة بك +bbb.layout.addButton.label = إضاÙØ© bbb.layout.addButton.toolTip = أض٠ترتيب الصÙØØ© المخصص للقائمة -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = تغيير ترتيب الصÙØØ© الخاص بك bbb.layout.loadButton.toolTip = تØميل ترتيب الصÙØØ© من المل٠bbb.layout.saveButton.toolTip = ØÙظ ترتيب الصÙØØ© للمل٠@@ -458,24 +463,27 @@ bbb.layout.combo.prompt = تطبيق ترتيب الصÙØØ© bbb.layout.combo.custom = * تخصيص ترتيب الصÙØØ© bbb.layout.combo.customName = تخصيص ترتيب الصÙØØ© bbb.layout.combo.remote = بعيد -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = إغلاق +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = تم ØÙظ ترتيبات الصÙØØ© Ø¨Ù†Ø¬Ø§Ø +bbb.layout.save.ioerror = bbb.layout.load.complete = تم تØميل ترتيبات الصÙØØ© Ø¨Ù†Ø¬Ø§Ø bbb.layout.load.failed = عدم المقدرة على تØميل التصميم -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = المخطط الاÙتراضي bbb.layout.name.closedcaption = التعليقات السÙليّة bbb.layout.name.videochat = دردشة الÙيديو bbb.layout.name.webcamsfocus = اجتماع بكاميرا الويب bbb.layout.name.presentfocus = اجتماع العرض التقديمي -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = مساعد المØاضرة bbb.layout.name.lecture = Ù…Øاضرة -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = الملاØظات المشتركة +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = قلم رصاص bbb.highlighter.toolbar.pencil.accessibilityName = تØويل مؤشر الÙأرة ÙÙŠ السبورة إلى مؤشر قلم رصاص bbb.highlighter.toolbar.ellipse = دائرة @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = اختيار لون bbb.highlighter.toolbar.color.accessibilityName = علامة رسم اللون ÙÙŠ السبورة bbb.highlighter.toolbar.thickness = تغيير السماكة bbb.highlighter.toolbar.thickness.accessibilityName = سماكة الرسم ÙÙŠ السبورة -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = تسجيل الخروج +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = مواÙÙ‚ bbb.logout.appshutdown = تم اغلاق تطبيق الخادم bbb.logout.asyncerror = Øدث خطأ متزامن @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = تم انهاء التصال مع السيرÙر bbb.logout.rejected = تم رÙض الاتصال بالخادم bbb.logout.invalidapp = تطبيق red5 غير موجود bbb.logout.unknown = Ùقد العميل الخاص بك الاتصال بالخادم -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = تم تسجيل خروجك من الاجتماع bbb.logour.breakoutRoomClose = سيتم إغلاق ناÙذة المتصÙØ Ø§Ù„Ø®Ø§Øµ بك -bbb.logout.ejectedFromMeeting = المشر٠طردك من الاجتماع +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = إذا كان تسجيل الخروج هذا غير متوقع Ùقم بالنقر على الزر أدناه لإعادة الاتصال. bbb.logout.refresh.label = إعادة الاتصال -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = الإعدادات +bbb.settings.ok = مواÙÙ‚ +bbb.settings.cancel = إلغاء +bbb.settings.btn.toolTip = bbb.logout.confirm.title = تأكيد الخروج bbb.logout.confirm.message = هل أنت متأكد من تسجيل الخروج؟ -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = نعم bbb.logout.confirm.no = لا -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = تØذير +bbb.endSession.confirm.message = bbb.connection.failure=تم اكتشا٠مشاكل ÙÙ‰ الاتصال bbb.connection.reconnecting=إعادة الإتصال bbb.connection.reestablished=تم اعادة الاتصال @@ -530,59 +539,60 @@ bbb.notes.title = ملاØظات bbb.notes.cmpColorPicker.toolTip = لون النص bbb.notes.saveBtn = ØÙظ bbb.notes.saveBtn.toolTip = ØÙظ الملاØظة -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = الملاØظات المشتركة +bbb.sharedNotes.quickLink.label = ناÙذة الملاØظات المشتركة +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = إغلاق +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = {0} يكتب +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = ØÙظ الملاØظات إلى مل٠+bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = نص منسق (html.) +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = إنشاء +bbb.sharedNotes.new.toolTip = إنشاء ملاØظة إضاÙية +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = تراجع عن التعديل +bbb.sharedNotes.redo.toolTip = إعادة التعديل +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = إعدادات الملاØظات المشتركة +bbb.sharedNotes.clearWarning.title = تنظي٠الملاØظات المشتركة +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = إغلاق الملاØظات المشتركة +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = المساØØ© المتوÙرة ÙÙŠ الملاØظات المشتركة +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = اختيار Ø³Ù…Ø§Ø Ù…Ù† الناÙذة المنبثقة للتØقق من أن مشاركة Ø³Ø·Ø Ø§Ù„Ù…ÙƒØªØ¨ تعمل بشكل صØÙŠØ bbb.settings.deskshare.start = التØقق من مشاركة Ø³Ø·Ø Ø§Ù„Ù…ÙƒØªØ¨ bbb.settings.voice.volume = نشاط الميكيرÙون -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = خطأ ÙÙŠ إصدار الجاÙا +bbb.settings.java.text = +bbb.settings.java.command = تثبيت Ø£Øدث نسخة لجاÙا bbb.settings.flash.label = خطأ ÙÙŠ نسخة الÙلاش bbb.settings.flash.text = تم تنصيب Ùلاش {0} ولكنك بØاجة إلى نسخة {1} على الأقل لكي تتمكن من تشغيل BigBlueButton بشكل صØÙŠØ. سيقوم الزر أدناه بتنصيب Ø£Øدث نسخة Ùلاش Adobe. bbb.settings.flash.command = تنصيب Ø£Øدث نسخة للÙلاش bbb.settings.isight.label = خطأ ÙÙŠ كاميرا الويب iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = تنصيب Flash 10.2 RC2 bbb.settings.warning.label = تØذير bbb.settings.warning.close = اغلاق التØذير bbb.settings.noissues = لا يوجد مواضيع معلقة bbb.settings.instructions = قبول الÙلاش الذي يطلب منك أذونات كاميرا الويب. إذا تطابقت المخرجات مع المتوقع Ùإنه تم ضبط متصÙØÙƒ بشكل صØÙŠØ. وتجد أدناه المواضيع الأخرى المØتملة. قم بÙØصها لإيجاد ØÙ„ ممكن. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = رÙع +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = تØميل +bbb.bwmonitor.download.short = تØميل +bbb.bwmonitor.total = المجموع +bbb.bwmonitor.current = Øالي +bbb.bwmonitor.available = Ù…ØªØ§Ø +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = مؤشر المثلث ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = تبديل مؤشر السبورة إلى مؤشر المثلث ltbcustom.bbb.highlighter.toolbar.line = مؤشر الخط @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = لقد تصÙØت الرسال bbb.accessibility.chat.chatBox.navigatedLatestRead = لقد تصÙØت الرسالة الأØدث ÙÙŠ القراءة. bbb.accessibility.chat.chatwindow.input = مدخلات الدردشة bbb.accessibility.chat.chatwindow.audibleChatNotification = إخطارات المØادثة الصوتية -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = خيارات الدردشة العامة bbb.accessibility.chat.initialDescription = Ùضلاً قم باستخدام الأسهم ÙÙŠ لوØØ© المÙØ§ØªÙŠØ Ù„ØªØµÙØ Ø±Ø³Ø§Ø¦Ù„ الدردشة. bbb.accessibility.notes.notesview.input = مدخلات الملاØظات @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = ملائمة Ø§Ù„Ø´Ø±Ø§Ø¦Ø Ù…Ø¹ ال bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = تعيين الشخص الذي تم اختياره مقدم bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = استبعاد الشخص الذي تم اختياره من الاجتماع +bbb.shortcutkey.users.kick.function = أزالة الشخص المØدد من الاجتماع bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = كتم أو عدم كتم الصوت الذي تم اختياره bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = نشر bbb.polling.closeButton.label = اغلق bbb.polling.customPollOption.label = تصويت خصوصي... bbb.polling.pollModal.title = نتائج الاستطلاع الØية +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = أدخل خيارات الاستطلاع bbb.polling.respondersLabel.novotes = بانتظار الإجابات bbb.polling.respondersLabel.text = قد اجاب {0} مستخدم @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = تطبيق إعدادات القÙÙ„ bbb.lockSettings.cancel = إلغاء bbb.lockSettings.cancel.toolTip = إغلاق هذه الناÙذة بدون الØÙظ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Ù‚ÙÙ„ المشر٠bbb.lockSettings.privateChat = دردشة خاصة bbb.lockSettings.publicChat = دردشة عامة bbb.lockSettings.webcam = كاميرا الويب +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = ميكيرÙون bbb.lockSettings.layout = الترتيب bbb.lockSettings.title=Ù‚ÙÙ„ المستعرضين @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=إغلاق الاتصال "Lock on Join" bbb.users.breakout.breakoutRooms = الغر٠المÙرقة bbb.users.breakout.updateBreakoutRooms = تØديث الغر٠المÙرقة +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = الوقت المتبقي قبل إغلاق الغر٠المتÙرقة bbb.users.breakout.calculatingRemainingTime = Øساب الوقت المتبقي... bbb.users.breakout.closing = إغلاق +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = غر٠bbb.users.breakout.roomsCombo.accessibilityName = عدد الغر٠للإنشاء bbb.users.breakout.room = غرÙØ© -bbb.users.breakout.randomAssign = تعيين المستخدمين عشوائيا bbb.users.breakout.timeLimit = الØد الزمني bbb.users.breakout.durationStepper.accessibilityName = الØد الزمني بالدقائق bbb.users.breakout.minutes = دقيقة @@ -834,14 +848,14 @@ bbb.users.breakout.invite = دعوة bbb.users.breakout.close = إغلاق bbb.users.breakout.closeAllRooms = إغلاق كل الغر٠المتÙرقة bbb.users.breakout.insufficientUsers = عدد المستخدمين غير كاÙ. يجب وضع مستخدم واØد على الأقل ÙÙŠ غرÙØ© متÙرقة واØدة. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = إغلاق +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = غرÙØ© bbb.users.roomsGrid.users = المستخدمون bbb.users.roomsGrid.action = إجراء @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = نقل الصوت bbb.users.roomsGrid.join = الانضمام bbb.users.roomsGrid.noUsers = لا يوجد مستخدمون ÙÙŠ هذه الغرÙØ© -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=اللغة الاÙتراضية + +bbb.alert.cancel = إلغاء +bbb.alert.ok = مواÙÙ‚ +bbb.alert.no = لا +bbb.alert.yes = نعم diff --git a/bigbluebutton-client/locale/ar_EG/bbbResources.properties b/bigbluebutton-client/locale/ar_EG/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ar_EG/bbbResources.properties +++ b/bigbluebutton-client/locale/ar_EG/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ar_SA/bbbResources.properties b/bigbluebutton-client/locale/ar_SA/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ar_SA/bbbResources.properties +++ b/bigbluebutton-client/locale/ar_SA/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/az_AZ/bbbResources.properties b/bigbluebutton-client/locale/az_AZ/bbbResources.properties index d8e30609c6b51e74819f0f30c734e88034d6dae4..28c50b82527a876524e5912f2ada62f546e471a2 100644 --- a/bigbluebutton-client/locale/az_AZ/bbbResources.properties +++ b/bigbluebutton-client/locale/az_AZ/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Xahis edirik gozlÉ™yin {0} modul yuklÉ™nir: -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Xahis edirik biz serverin test muddÉ™ti É™rzindÉ™ gozlÉ™yÉ™siz. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Loq pÉ™ncÉ™rÉ™sini aç -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = PÉ™ncÉ™rÉ™ni yenilÉ™ -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Ola bilÉ™r ki sizdÉ™ video konfransın köhnÉ™ versiyası var. bbb.oldlocalewindow.reminder2 = Brovseri yenilÉ™yin. bbb.oldlocalewindow.windowTitle = DiqqÉ™t: köhnÉ™ dil ayarları -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Yardım bbb.mainToolbar.logoutBtn = Çıxış -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentasiya -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = ÆvvÉ™lki slayd. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = Sonrakı slayd bbb.presentation.maxUploadFileExceededAlert = SÉ™hv: Faylın ölçüsü böyükdür. bbb.presentation.uploadcomplete = YüklÉ™mÉ™ sona çatdı. SÉ™nÉ™d yüklÉ™nÉ™nÉ™ qÉ™dÉ™r gözlÉ™yin. bbb.presentation.uploaded = yüklÉ™ndi. bbb.presentation.document.supported = YüklÉ™nmiÅŸ sÉ™nÉ™d proqram tÉ™rÉ™findÉ™n dÉ™stÉ™klÉ™nir. bbb.presentation.document.converted = UÄŸurla konvertasiya olundu. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO SÉ™hv: 111. bbb.presentation.error.security = SÉ™hv: 112. bbb.presentation.error.convert.notsupported = SÉ™hv: YüklÉ™nmiÅŸ sÉ™nÉ™d dÉ™stÉ™klÉ™nmir. bbb.presentation.error.convert.nbpage = SÉ™hv: YüklÉ™nmiÅŸ sÉ™nÉ™ddÉ™ itki var. bbb.presentation.error.convert.maxnbpagereach = SÉ™hv: YüklÉ™nmiÅŸ sÉ™nÉ™di çevirmÉ™k mümkün olmadı. bbb.presentation.converted = {0} dan {1} i çevirildi -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Prezentasiya faylı bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = bbb.fileupload.title = Prezentasiyanı yüklÉ™yin -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = bbb.fileupload.selectBtn.toolTip = Faylı axtar bbb.fileupload.uploadBtn = YüklÉ™ bbb.fileupload.uploadBtn.toolTip = Faylı yüklÉ™ bbb.fileupload.deleteBtn.toolTip = Prezentasiyanı sil bbb.fileupload.showBtn = GöstÉ™r -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Prezentasiyanı göstÉ™r -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = ÅŸÉ™killÉ™r hazırlanır.. bbb.fileupload.progBarLbl = ÆmÉ™liyyat: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Yazışma -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = MÉ™tn rÉ™ngi -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = Yazını göndÉ™r -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Hamı -bbb.chat.optionsTabName = Options +bbb.chat.optionsTabName = bbb.chat.privateChatSelect = Yazışma üçün istifadəçini seçin -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Sazlamalar bbb.chat.fontSize = Åžrift ölçüsüe -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = bbb.publishVideo.startPublishBtn.toolTip = Kamera qoÅŸulur -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = RÉ™nglÉ™ndirÉ™n -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = ÇevrÉ™ -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = Dördbucaq -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = RÉ™ng seç -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = DÉ™yiÅŸ -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Ä°mtina -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/be_BY/bbbResources.properties b/bigbluebutton-client/locale/be_BY/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/be_BY/bbbResources.properties +++ b/bigbluebutton-client/locale/be_BY/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/bg_BG/bbbResources.properties b/bigbluebutton-client/locale/bg_BG/bbbResources.properties index 5f408e4689de402a1f393fc3664f8177203e33da..46ef2b00b576511e09391cb25260855f8e17d295 100644 --- a/bigbluebutton-client/locale/bg_BG/bbbResources.properties +++ b/bigbluebutton-client/locale/bg_BG/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Свързване ÑÑŠÑ Ñървъра -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = СъжалÑвамe, не можем да Ñе Ñвържем ÑÑŠÑ Ñървъра. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Отвори Дневник Прозорецът bbb.mainshell.meetingNotFound = СеÑиÑта не бе намерена bbb.mainshell.invalidAuthToken = Ðевалиден активационен код bbb.mainshell.resetLayoutBtn.toolTip = Занули Изгледа bbb.mainshell.notification.tunnelling = Връзката минава през тунел - tunnelling bbb.mainshell.notification.webrtc = WebRTC Ðудио -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Вие може да имате Ñтар превод на BigBlueButton. bbb.oldlocalewindow.reminder2 = МолÑ, изчиÑтете кеша на браузъра Ñи и опитайте отново. bbb.oldlocalewindow.windowTitle = Предупреждение: Стар превод на езика @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Свързване bbb.micSettings.webrtc.transferring = Ð’ Ð¿Ñ€Ð¾Ñ†ÐµÑ Ð½Ð° транÑфер bbb.micSettings.webrtc.endingecho = Свързване към аудиото bbb.micSettings.webrtc.endedecho = Изпробването на аудиото приключи. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð·Ð° микрофон под Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð·Ð° микрофон под Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Предупреждение за звука bbb.micWarning.joinBtn.label = Влез вÑе пак bbb.micWarning.testAgain.label = Изпробвай отново @@ -79,28 +80,28 @@ bbb.webrtcWarning.title = WebRTC Ðудио проблем bbb.webrtcWarning.failedError.1001 = Грешка 1001: Връзката Ñ WebSocket е прекъÑната. bbb.webrtcWarning.failedError.1002 = Грешка 1002: Ðе може да Ñе оÑъщеÑтви връзка Ñ WebSocket. bbb.webrtcWarning.failedError.1003 = Грешка 1003: ВерÑиÑта на браузъра не е поддържана. -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) +bbb.webrtcWarning.failedError.1004 = bbb.webrtcWarning.failedError.1005 = Грешка 1005: Повикването завърши неочаквано. -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = Грешка {0}: Ðепознат код на грешка. -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Помощ bbb.mainToolbar.logoutBtn = Изход bbb.mainToolbar.logoutBtn.toolTip = Изход -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Изберете език bbb.mainToolbar.settingsBtn = ÐаÑтройки bbb.mainToolbar.settingsBtn.toolTip = Отвори наÑтройки @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = Започни Ð·Ð°Ð¿Ð¸Ñ bbb.mainToolbar.recordBtn.toolTip.stop = Спри Ð·Ð°Ð¿Ð¸Ñ bbb.mainToolbar.recordBtn.toolTip.recording = Тази ÑеÑÐ¸Ñ Ñе запиÑва. bbb.mainToolbar.recordBtn.toolTip.notRecording = Тази ÑеÑÐ¸Ñ Ð½Ðµ Ñе запиÑва. -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Потвърди Ð·Ð°Ð¿Ð¸Ñ bbb.mainToolbar.recordBtn.confirm.message.start = Сигурни ли Ñте, че иÑкате да започнете да запиÑвате тази ÑеÑиÑ? bbb.mainToolbar.recordBtn.confirm.message.stop = Сигурни ли Ñте, че иÑкате да Ñпрете запиÑа на тази ÑеÑиÑ? -bbb.mainToolbar.recordBtn..notification.title = ИзвеÑтие за запиÑване -bbb.mainToolbar.recordBtn..notification.message1 = Можете да запишете ÑеÑиÑта -bbb.mainToolbar.recordBtn..notification.message2 = За да започнете/Ñпрете да запиÑвате, използвайте бутона под заглавитето +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = bbb.mainToolbar.recordingLabel.recording = (ЗапиÑва Ñе) bbb.mainToolbar.recordingLabel.notRecording = Ðе Ñе запиÑва -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = ÐаÑтройки на извеÑтиÑта bbb.clientstatus.notification = Ðепрочетени извеÑÑ‚Ð¸Ñ bbb.clientstatus.close = Затвори -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = bbb.clientstatus.flash.title = Флаш плейър -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. +bbb.clientstatus.flash.message = bbb.clientstatus.webrtc.title = Ðудио -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = За по-добър звук, Ð¼Ð¾Ð»Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹Ñ‚Ðµ браузър Firefox или Chrome. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Минимизирай bbb.window.maximizeRestoreBtn.toolTip = Увеличи bbb.window.closeBtn.toolTip = Затвори @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Ð¡Ñ‚Ð°Ñ‚ÑƒÑ bbb.users.usersGrid.statusItemRenderer.changePresenter = ÐатиÑнете тук за да презентирате bbb.users.usersGrid.statusItemRenderer.presenter = Лектор bbb.users.usersGrid.statusItemRenderer.moderator = Модератор -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Заличи ÑÑ‚Ð°Ñ‚ÑƒÑ bbb.users.usersGrid.statusItemRenderer.viewer = Ðаблюдаващ bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Сподели уебкамера @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Щракнете, за да bbb.users.usersGrid.mediaItemRenderer.pushToMute = Щракнете, за да заглушите потребителÑÑ‚ bbb.users.usersGrid.mediaItemRenderer.pushToLock = Заключи {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Отключи {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = ОтÑтранете потребител +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Споделена камера bbb.users.usersGrid.mediaItemRenderer.micOff = Изкл. микрофон bbb.users.usersGrid.mediaItemRenderer.micOn = Вкл. микрофон bbb.users.usersGrid.mediaItemRenderer.noAudio = Ðе е аудио ÐºÐ¾Ð½Ñ„ÐµÑ€ÐµÐ½Ñ†Ð¸Ñ -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = ИзчиÑти -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.presentation.titleWithPres = ПрезентациÑ: {0} bbb.presentation.quickLink.label = Прозорец за презентациÑта bbb.presentation.fitToWidth.toolTip = Регулиране на широчината на панела за Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.presentation.fitToPage.toolTip = Регулиране на размера на панела за Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.presentation.uploadPresBtn.toolTip = Качване на Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Прозорец ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ ÐŸÑ€ÐµÐ´Ð¸ÑˆÐµÐ½ Ñлайд. bbb.presentation.btnSlideNum.accessibilityName = Слайд {0} от {1} bbb.presentation.btnSlideNum.toolTip = Избери Ñлайд @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Качването завърши. МолÑ, bbb.presentation.uploaded = качено. bbb.presentation.document.supported = КачениÑÑ‚ документ Ñе поддържа. Започва конвертиране... bbb.presentation.document.converted = УÑпешно конвертиране на Ð¾Ñ„Ð¸Ñ Ð´Ð¾ÐºÑƒÐ¼ÐµÐ½Ñ‚Ð°. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Грешка: МолÑ, Ñвържете Ñе Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратор. bbb.presentation.error.security = Грешка в ÑигурноÑтта: МолÑ, Ñвържете Ñе Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратор. bbb.presentation.error.convert.notsupported = Грешка: КачениÑÑ‚ документ не Ñе поддържа. МолÑ, заредете ÑъвмеÑтим файл. @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = Качване bbb.fileupload.uploadBtn.toolTip = Качи файл bbb.fileupload.deleteBtn.toolTip = Премахни ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.fileupload.showBtn = Покажи -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Покажи ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Генериране на миникартинки... bbb.fileupload.progBarLbl = ПрогреÑ: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Чат bbb.chat.quickLink.label = Прозорец за ÑъобщениÑта bbb.chat.cmpColorPicker.toolTip = ЦвÑÑ‚ на текÑта в прозорец Чат bbb.chat.input.accessibilityName = Поле за редактиране на Ñъобщението bbb.chat.sendBtn.toolTip = Изпрати Ñъобщение bbb.chat.sendBtn.accessibilityName = Изпрати чат Ñъобщение -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Копирай вÑÐ¸Ñ‡ÐºÐ¸Ñ Ñ‚ÐµÐºÑÑ‚ bbb.chat.publicChatUsername = Ð’Ñички bbb.chat.optionsTabName = ÐаÑтройки bbb.chat.privateChatSelect = Прозорец Чат Избери лице за перÑонален чат bbb.chat.private.userLeft = ПотребителÑÑ‚ е напуÑнал. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Избери потребител за директно Ñъобщение -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Прозорец Чат Чат опции bbb.chat.fontSize = Прозорец Чат Големина на шрифта bbb.chat.cmbFontSize.toolTip = Изберете размер на шрифта на чата -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Минимизирайте прозорец Чат bbb.chat.maximizeRestoreBtn.accessibilityName = МакÑимизирайте прозорец Чат bbb.chat.closeBtn.accessibilityName = Затворете прозорец Чат bbb.chat.chatTabs.accessibleNotice = Ðовите ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñе показват тук. bbb.chat.chatMessage.systemMessage = СиÑтема -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = СмÑна на камерата bbb.publishVideo.changeCameraBtn.toolTip = Прозорец за избиране на видео камера bbb.publishVideo.cmbResolution.tooltip = Избери Ñ€ÐµÐ·Ð¾Ð»ÑŽÑ†Ð¸Ñ Ð½Ð° камерата bbb.publishVideo.startPublishBtn.labelText = Стартиране на ÑподелÑнето bbb.publishVideo.startPublishBtn.toolTip = Започни ÑподелÑне -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð·Ð° камера под Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Закачи видео bbb.videodock.quickLink.label = Прозорец за Видео/Уеб камерите bbb.video.minimizeBtn.accessibilityName = Минимизирай прозорец Видео @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = Публикуване... bbb.video.publish.closeBtn.accessName = Прозорец Уебкамера Затвори прозорец bbb.video.publish.closeBtn.label = Отмени bbb.video.publish.titleBar = Прозорец Публикуване на камера -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Минимизирай -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = bbb.screensharePublish.startButton.label = Ðачало -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = СподелÑне на екрана -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Спрете да Ñлушате аудиото. bbb.toolbar.phone.toolTip.unmute = Слушайте аудиото. bbb.toolbar.phone.toolTip.nomic = Ðе бе намерен микрофон -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Споделете камерата Ñи bbb.toolbar.video.toolTip.stop = Прекратете ÑподелÑнето на камерата Ñи +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Добави потребителÑки изглед към ÑпиÑъка -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Променете изгледа bbb.layout.loadButton.toolTip = Зареждане на изгледи от файл bbb.layout.saveButton.toolTip = Съхрани изгледите във файл @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Задай изглед bbb.layout.combo.custom = *ПотребителÑки изглед bbb.layout.combo.customName = ПотребителÑки изглед bbb.layout.combo.remote = Отдалечен -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Изгледите бÑха уÑпешно Ñъхранени +bbb.layout.save.ioerror = bbb.layout.load.complete = Изгледите бÑха уÑпешно заредени -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Стандартен изглед -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Видео Чат -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = ÐÑиÑтент bbb.layout.name.lecture = Ð›ÐµÐºÑ†Ð¸Ñ -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Молив bbb.highlighter.toolbar.pencil.accessibilityName = Превключи от курÑор към молив bbb.highlighter.toolbar.ellipse = Кръг @@ -492,97 +500,99 @@ bbb.highlighter.toolbar.color = Избери цвÑÑ‚ bbb.highlighter.toolbar.color.accessibilityName = ЦвÑÑ‚ на маркера bbb.highlighter.toolbar.thickness = Смени дебелината bbb.highlighter.toolbar.thickness.accessibilityName = Дебелина на маркера -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Вие Ñте напуÑнали +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ДРbbb.logout.appshutdown = Приложението на Ñървъра беше ÑпрÑно bbb.logout.asyncerror = Възникнала е аÑинхронна грешка bbb.logout.connectionclosed = Връзката ÑÑŠÑ Ñървъра е била затворена -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Връзката до Ñървъра беше отказана bbb.logout.invalidapp = Приложението red5 не ÑъщеÑтвува bbb.logout.unknown = ВашиÑÑ‚ клиент е загубил връзка ÑÑŠÑ Ñървъра -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Вие Ñте излезли от конференциÑта -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ðко изходът от ÑиÑтемата е неочакван, натиÑнете бутона по-долу, за да Ñе Ñвържете повторно. bbb.logout.refresh.label = Повторно Ñвързване -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Потвърдете, че иÑкате да напуÑнете bbb.logout.confirm.message = Сигурни ли Ñте, че иÑкате да напуÑнете? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Да bbb.logout.confirm.no = Ðе -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= bbb.connection.video=Видео -bbb.connection.deskshare=Deskshare +bbb.connection.deskshare= bbb.notes.title = Бележки bbb.notes.cmpColorPicker.toolTip = ЦвÑÑ‚ на текÑта bbb.notes.saveBtn = Съхрани bbb.notes.saveBtn.toolTip = Съхрани бележката -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Кликни "Allow", когато изкочи, за проверка на правилната работа на ÑподелÑнето на Ñ€Ð°Ð±Ð¾Ñ‚Ð½Ð¸Ñ Ð¿Ð»Ð¾Ñ‚ bbb.settings.deskshare.start = Проверете ÑподелÑнето на работниÑÑ‚ екран bbb.settings.voice.volume = Микрофон -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Грешка на Flash верÑиÑта bbb.settings.flash.text = Имате инÑталирана Flash верÑÐ¸Ñ {0}, но Ñ‚Ñ€Ñбва да имате инÑталирана верÑÐ¸Ñ Ð¿Ð¾Ð½Ðµ {1}, за да използвате ÑподелÑне на екрана през BigBlueButton. Щракнете бутона по-долу, за да инÑталирате най-новата верÑÐ¸Ñ Ð½Ð° Adobe Flash. bbb.settings.flash.command = ИнÑталирайте най-Ð½Ð¾Ð²Ð¸Ñ Flash bbb.settings.isight.label = Грешка на iSight камера -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = ИнÑталирай Flash верÑÐ¸Ñ 10.2 RC2 bbb.settings.warning.label = Предупреждение bbb.settings.warning.close = Затвори предупреждението bbb.settings.noissues = ÐÑма открити възпрепÑÑ‚Ñващи проблеми. bbb.settings.instructions = Приемете Flash запитването за доÑтъп до вашата камера. Ðко можете да видите и чуете Ñебе Ñи, вашиÑÑ‚ браузър е наÑтроен правилно. Други потенциални проблеми Ñа показани по-долу. Кликнете върху вÑеки, за да намерите възможно решение. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Триъгълник ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Превключи курÑор към триъгълник ltbcustom.bbb.highlighter.toolbar.line = Ð›Ð¸Ð½Ð¸Ñ @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = ТекÑÑ‚ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Превключи от курÑор към текÑÑ‚ ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = ЦвÑÑ‚ на текÑÑ‚ ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Размер на шрифта -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Ð’ готовноÑÑ‚ @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Преминали Ñте на bbb.accessibility.chat.chatBox.navigatedLatest = Преминали Ñте към най-поÑледното Ñъобщение. bbb.accessibility.chat.chatBox.navigatedLatestRead = Преминали Ñте към оÑледното Ñъобщение, което Ñте чели. bbb.accessibility.chat.chatwindow.input = Въвеждане в чата -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = ÐœÐ¾Ð»Ñ Ð¸Ð·Ð¿Ð¾Ð»Ð·Ð²Ð°Ð¹Ñ‚Ðµ Ñтрелките на клавиатурата за Ð½Ð°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð² ÑъобщениÑта bbb.accessibility.notes.notesview.input = Вход за бележки bbb.shortcuthelp.title = Úûðòøшýø úþüñøýðцøø -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Минимизирай прозорец Клавишни комбинации bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = МакÑимизирай прозорец Клавишни комбинации bbb.shortcuthelp.closeBtn.accessibilityName = Затвори прозорец Клавишни комбинации -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = ОÑновни клавишни комбинации bbb.shortcuthelp.dropdown.presentation = Клавишни комбинации за презентациÑта bbb.shortcuthelp.dropdown.chat = Клавишни комбинации за чата bbb.shortcuthelp.dropdown.users = ПотребителÑки клавишни комбинации -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = ПрÑк път bbb.shortcuthelp.headers.function = ÐаÑтройки @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = ПремеÑтете фокуÑÑŠÑ‚ върху прозорецът ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = ПремеÑтете фокуÑÑŠÑ‚ върху чат прозореца -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Отворете прозорецът за ÑподелÑне на Ñ€Ð°Ð±Ð¾Ñ‚Ð½Ð¸Ñ ÐµÐºÑ€Ð°Ð½ @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = ÐапуÑнете тази Ñреща bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Вдигнете ръка -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Качване на Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Преминете към Ð¿Ñ€ÐµÐ´Ñ…Ð¾Ð´Ð½Ð¸Ñ Ñлайд @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Преминете към ÑÐ»ÐµÐ´Ð²Ð°Ñ‰Ð¸Ñ Ñлайд bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Слайдовете да паÑнат на широчината -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Слайдовете да паÑнат към Ñтраницата -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Ðаправете избраната личноÑÑ‚ лектор -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = ОтÑтранете избраната личноÑÑ‚ от Ñрещата +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Заглушете или позволете да говори избраната личноÑÑ‚ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Заглушете или позволете да говорÑÑ‚ вÑички потребители bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Заглушете вÑеки един Ñ Ð¸Ð·ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ðµ на Лектора -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = ФокуÑиране върху чат табовете -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Превключи към палитрата. bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Изпрати Ñъобщение -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = За навигиране на ÑъобщениÑ, Ñ‚Ñ€Ñбва да фокуÑирате върху чат кутиÑта. @@ -746,18 +756,19 @@ bbb.shortcutkey.chat.chatbox.goread.function = Преминете към Ð¿Ð¾Ñ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Временна дебъг клавишна ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = Публикувай bbb.polling.closeButton.label = Затвори -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = bbb.polling.respondersLabel.finished = Готово bbb.polling.answer.Yes = Да bbb.polling.answer.No = Ðе @@ -770,8 +781,8 @@ bbb.polling.answer.D = Г bbb.polling.answer.E = Д bbb.polling.answer.F = Е bbb.polling.answer.G = Ж -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Стартиране на ÑподелÑнето bbb.publishVideo.changeCameraBtn.labelText = СмÑна на камерата @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Затвори вÑички ви bbb.users.settings.lockAll = Заключи вÑички потребители bbb.users.settings.lockAllExcept = Заключи вÑички потребители без презентиращиÑ. bbb.users.settings.lockSettings = Заключи вÑички потребители -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Отключи вÑички потребители bbb.users.settings.roomIsLocked = Заключено по подразбиране bbb.users.settings.roomIsMuted = Заглушен по подразбиране @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Задай наÑтройки за заключ bbb.lockSettings.cancel = Отмени bbb.lockSettings.cancel.toolTip = Затвори този прозорец без запазване на информациÑта +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Заключване за модератор bbb.lockSettings.privateChat = Лични ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ bbb.lockSettings.publicChat = Общ чат bbb.lockSettings.webcam = Видео/Уеб камера +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Микрофон bbb.lockSettings.layout = Изглед bbb.lockSettings.title=Заключи потребителите @@ -813,91 +826,46 @@ bbb.lockSettings.feature=ФункционалноÑÑ‚ bbb.lockSettings.locked=Заключен bbb.lockSettings.lockOnJoin=Заключи при Ñвързване -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Стаи -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create +bbb.users.breakout.roomsCombo.accessibilityName = bbb.users.breakout.room = Ð¡Ñ‚Ð°Ñ -bbb.users.breakout.randomAssign = Randomly Assign Users bbb.users.breakout.timeLimit = Лимит -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes +bbb.users.breakout.durationStepper.accessibilityName = bbb.users.breakout.minutes = Минути -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = bbb.users.breakout.start = Ðачало -bbb.users.breakout.invite = Invite +bbb.users.breakout.invite = bbb.users.breakout.close = Затвори -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Ð¡Ñ‚Ð°Ñ -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/bn_IN/bbbResources.properties b/bigbluebutton-client/locale/bn_IN/bbbResources.properties index 851ea0e733494ef730a196b6fd58035cbcb18ff1..c04d078f2dad04142293788648263af4713a231e 100644 --- a/bigbluebutton-client/locale/bn_IN/bbbResources.properties +++ b/bigbluebutton-client/locale/bn_IN/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ঠিক আছে -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = বনà§à¦§ করà§à¦¨ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/bs_BA/bbbResources.properties b/bigbluebutton-client/locale/bs_BA/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/bs_BA/bbbResources.properties +++ b/bigbluebutton-client/locale/bs_BA/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ca_ES/bbbResources.properties b/bigbluebutton-client/locale/ca_ES/bbbResources.properties index cb4aaefecd7a08478147faf2601ca97b0b9083d5..5120e75b8e22241db19507026b9469e61a662a3e 100644 --- a/bigbluebutton-client/locale/ca_ES/bbbResources.properties +++ b/bigbluebutton-client/locale/ca_ES/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Connectant amb el servidor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Ho sentim, no vam poder connectar amb el servidor. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Obrir finestra d'històric -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Reiniciar posició de finestres -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Podria ser una traducció obsoleta de BigBlueButton. bbb.oldlocalewindow.reminder2 = Si us plau, buidi la memòria cau del seu navegador, i torneu a provar. bbb.oldlocalewindow.windowTitle = AvÃs: Traducció d'idioma obsoleta -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = bbb.micSettings.speakers.header = Prova de parlants bbb.micSettings.microphone.header = Provar Micròfon bbb.micSettings.playSound = Reproduir so de prova bbb.micSettings.playSound.toolTip = Escoltar música per provar els parlants. bbb.micSettings.hearFromHeadset = S'haurien d'usar els auriculars en lloc dels altaveus de l'ordinador. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = Si bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Canviar micròfon bbb.micSettings.changeMic.toolTip = Obrir la finestra de configuracions del micròfon de Flash Player -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Connectar à udio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = Cancel·lar la unió a la conferència d'à udio bbb.micSettings.access.helpButton = Ajuda (obrir videotutorials en una pà gina nova) bbb.micSettings.access.title = Configuracions d'Àudio. Aquesta finestra romandrà enfocada fins que es tanqui la mateixa. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Ajuda bbb.mainToolbar.logoutBtn = Desconnectar -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Selecciona Idioma bbb.mainToolbar.settingsBtn = Configuració bbb.mainToolbar.settingsBtn.toolTip = Obrir configuració -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimitzar bbb.window.maximizeRestoreBtn.toolTip = Maximitzar bbb.window.closeBtn.toolTip = Tancar @@ -166,88 +167,89 @@ bbb.users.quickLink.label = Finestra d'Usuaris bbb.users.minimizeBtn.accessibilityName = Minimitzar la Finestra d'Assistents bbb.users.maximizeRestoreBtn.accessibilityName = Maximitzar la Finestra d'Assistents bbb.users.settings.buttonTooltip = Configuracions -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = Configuració de la Cambra bbb.users.settings.muteAll = Silenciar a tots bbb.users.settings.muteAllExcept = Silenciar a tots excepte al presentador bbb.users.settings.unmuteAll = Activar à udio a tots -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = Click per parlar bbb.users.pushToMute.toolTip = Cliqueu per desactivar l'à udio bbb.users.muteMeBtnTxt.talk = Activar à udio bbb.users.muteMeBtnTxt.mute = Desactivar Àudio bbb.users.muteMeBtnTxt.muted = Àudio Desactivat -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Llista d'Assistents. Utilitza les tecles de direcció per navegar. bbb.users.usersGrid.nameItemRenderer = Nom bbb.users.usersGrid.nameItemRenderer.youIdentifier = el teu bbb.users.usersGrid.statusItemRenderer = Estat -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter +bbb.users.usersGrid.statusItemRenderer.changePresenter = bbb.users.usersGrid.statusItemRenderer.presenter = Presentador bbb.users.usersGrid.statusItemRenderer.moderator = Moderador -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Assistent -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Mitjana bbb.users.usersGrid.mediaItemRenderer.talking = Parlant bbb.users.usersGrid.mediaItemRenderer.webcam = Cambra Compartida bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Cliqueu per veure la cà mera bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Fes click per activar l'à udio a l'assistent bbb.users.usersGrid.mediaItemRenderer.pushToMute = Fes click per desactivar l'à udio a l'assistent -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Expulsar a l'assistent +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Cambra Compartida bbb.users.usersGrid.mediaItemRenderer.micOff = Micròfon apagat bbb.users.usersGrid.mediaItemRenderer.micOn = Micròfon encès bbb.users.usersGrid.mediaItemRenderer.noAudio = No està en la Conferència de Veu -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentació bbb.presentation.titleWithPres = Presentació: {0} bbb.presentation.quickLink.label = Finestra de Presentació -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Diapositiva anterior. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = Fes click per a seleccionar una diapositiva bbb.presentation.forwardBtn.toolTip = Diapositiva següent bbb.presentation.maxUploadFileExceededAlert = Error: La mida del fitxer supera el mà xim permès. @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Cà rrega completa. Si us plau espereu mentre bbb.presentation.uploaded = carregat. bbb.presentation.document.supported = El document carregat està suportat. Començant la conversió ... bbb.presentation.document.converted = Document convertit amb èxit. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Error E / S: Si us plau, contacti amb l'Administrador. bbb.presentation.error.security = Error de Seguretat: Si us plau, contacti amb l'Administrador. bbb.presentation.error.convert.notsupported = El tipus de fitxer carregat no està suportat. Si us plau, carregueu un fitxer compatible. @@ -276,77 +278,78 @@ bbb.presentation.minimizeBtn.accessibilityName = Minimitzar la finestra de prese bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximitzar la finestra de presentació bbb.presentation.closeBtn.accessibilityName = Tancar la finestra de presentació bbb.fileupload.title = Carregar un nou document per presentar. -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = Seleccionar arxiu bbb.fileupload.selectBtn.toolTip = Seleccioneu un arxiu bbb.fileupload.uploadBtn = Carregar bbb.fileupload.uploadBtn.toolTip = Carregar l'arxiu bbb.fileupload.deleteBtn.toolTip = Eliminar presentació bbb.fileupload.showBtn = Mostrar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Mostra la Presentació -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Generant miniatures ... bbb.fileupload.progBarLbl = Progrés: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Xat bbb.chat.quickLink.label = Finestra del Xat bbb.chat.cmpColorPicker.toolTip = Color de text bbb.chat.input.accessibilityName = Camp per editar el missatge del xat. bbb.chat.sendBtn.toolTip = Enviar el missatge bbb.chat.sendBtn.accessibilityName = Enviar missatge del xat -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Tots bbb.chat.optionsTabName = Opcions bbb.chat.privateChatSelect = Seleccioneu una persona per xerrar en privat -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Opcions de xat bbb.chat.fontSize = Mida del text -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimitzar la finestra del xat bbb.chat.maximizeRestoreBtn.accessibilityName = Maximitzar la finestra del xat bbb.chat.closeBtn.accessibilityName = Tancar a finestra del xat bbb.chat.chatTabs.accessibleNotice = Nous missatges en aquesta pestanya. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Canviar la configuració de la cà mera bbb.publishVideo.changeCameraBtn.toolTip = Obre per obrir la finestra de canvis a la cambra bbb.publishVideo.cmbResolution.tooltip = Seleccionar la resolució de la cà mera bbb.publishVideo.startPublishBtn.labelText = Començar a compartir bbb.publishVideo.startPublishBtn.toolTip = Comparteix la meva cà mera -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Àrea de vÃdeo bbb.videodock.quickLink.label = Finestra de Cà meres web bbb.video.minimizeBtn.accessibilityName = Minimitzar la finestra d'à rea de vÃdeos @@ -361,96 +364,98 @@ bbb.video.publish.hint.waitingApproval = Esperant per aprovació bbb.video.publish.hint.videoPreview = Vista prèvia del vÃdeo bbb.video.publish.hint.openingCamera = Obrint cà mera ... bbb.video.publish.hint.cameraDenied = Accés denegat a cà mera -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Publicant ... bbb.video.publish.closeBtn.accessName = Tancar la finestra de configuracions de la cà mera web bbb.video.publish.closeBtn.label = Cancel bbb.video.publish.titleBar = Finestra d'iniciació de la cà mera web -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Afegir el disseny personalitzat a la llista -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = bbb.layout.loadButton.toolTip = Carregar dissenys d'un arxiu bbb.layout.saveButton.toolTip = Desar dissenys en un arxiu bbb.layout.lockButton.toolTip = Bloquejar disseny @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplicar disseny bbb.layout.combo.custom = * Disseny personalitzat bbb.layout.combo.customName = Disseny personalitzat bbb.layout.combo.remote = Remot -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Els dissenys van ser guardats amb èxit +bbb.layout.save.ioerror = bbb.layout.load.complete = Els dissenys van ser carregats -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Ressaltat bbb.highlighter.toolbar.pencil.accessibilityName = Canviar el cursor a llapis bbb.highlighter.toolbar.ellipse = Cercle @@ -484,105 +492,107 @@ bbb.highlighter.toolbar.rectangle = Rectangle bbb.highlighter.toolbar.rectangle.accessibilityName = Canviar cursos a rectangle bbb.highlighter.toolbar.panzoom = Panorà mic i Zoom bbb.highlighter.toolbar.panzoom.accessibilityName = Canviar el cursor a panorà mic i zoom -bbb.highlighter.toolbar.clear = Clear All Annotations +bbb.highlighter.toolbar.clear = bbb.highlighter.toolbar.clear.accessibilityName = Netejar la pà gina de la pissarra -bbb.highlighter.toolbar.undo = Undo Annotation +bbb.highlighter.toolbar.undo = bbb.highlighter.toolbar.undo.accessibilityName = Desfer l'última figura de la pissarra bbb.highlighter.toolbar.color = Selecciona color bbb.highlighter.toolbar.color.accessibilityName = Dibuixar un color a la pissarra bbb.highlighter.toolbar.thickness = Modificar el gruix de la lÃnia bbb.highlighter.toolbar.thickness.accessibilityName = Dibuixar gruix a la pissarra -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = L'aplicació de servidor ha estat detinguda bbb.logout.asyncerror = S'ha produït un error asÃncron bbb.logout.connectionclosed = S'ha tancat la connexió amb el servidor -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = La connexió amb el servidor ha estat rebutjada bbb.logout.invalidapp = No existeix l'aplicació Red5 bbb.logout.unknown = S'ha perdut la connexió amb el servidor -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Ha desconnectat de la conferència -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Confirmar Tancar Sessió bbb.logout.confirm.message = Està segur que desitja tancar sessió? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Si bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Notes bbb.notes.cmpColorPicker.toolTip = Color de Text bbb.notes.saveBtn = Desa bbb.notes.saveBtn.toolTip = Guardar Nota -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Premeu Permetre a la finestra emergent per verificar que la compartició del escriptori us està funcionant adequadament bbb.settings.deskshare.start = Comprovar Compartició de pantalla bbb.settings.voice.volume = Activitat del micròfon -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Error de versió de Flash bbb.settings.flash.text = Disposa de Flash {0}, però necessita almenys {1} per a utilitzar la videoconferència. Premi el botó per actualitzar la seva versió de Adobe Flash. bbb.settings.flash.command = Actualitzar Flash bbb.settings.isight.label = Error de cà mera iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instal·lar Flash 10.2 RC2 bbb.settings.warning.label = AvÃs bbb.settings.warning.close = Tancar aquest avÃs bbb.settings.noissues = No s'ha trobat cap problema greu. bbb.settings.instructions = Accepteu la sol·licitud de Flash que li demana permisos per utilitzar la seva cà mera. Si pot veure i escoltar, el seu navegador es troba configurat correctament. A continuació, es llisten problemes potencials. Premi en cada un d'ells per les seves possibles solucions. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triangle ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Canviar Cursor de Pissarra a Triangle ltbcustom.bbb.highlighter.toolbar.line = LÃnia @@ -591,34 +601,34 @@ ltbcustom.bbb.highlighter.toolbar.text = Text ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Canviar Cursos de pissarra a text ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Color de text ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Mida de font -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Has arribat al primer missatge bbb.accessibility.chat.chatBox.reachedLatest = Has arribat a l'últim missatge @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Has navegat al primer missatge bbb.accessibility.chat.chatBox.navigatedLatest = Has navegat a l'últim missatge bbb.accessibility.chat.chatBox.navigatedLatestRead = Has navegat al missatge llegit més recent bbb.accessibility.chat.chatwindow.input = Entrada del xat -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Si us plau usar les tecles direccionals per navegar a través dels missatges del xat. bbb.accessibility.notes.notesview.input = Entrades de les notes -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimitzar la finestra d'accessos rà pids bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximitzar la finestra d'accessos rà pids bbb.shortcuthelp.closeBtn.accessibilityName = Tancar la finestra d'accessos rà pids -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Accessos rà pids globals bbb.shortcuthelp.dropdown.presentation = Accessos rà pids a la presentació bbb.shortcuthelp.dropdown.chat = Accés rà pid al xat bbb.shortcuthelp.dropdown.users = Accés rà pid als usuaris -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Accés Rà pid bbb.shortcuthelp.headers.function = Funció @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Minimitzar finestra actual bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Maximitzar finestra actual -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Desenfocar de la finestra de flash bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Activar o Desactivar el so del teu micròfon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Moure enfocament a la finestra de presentació bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Moure enfocament a la venda de xat -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Obrir la finestra de compartir escriptori @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Tancar Sessió d'aquesta reunió bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Aixecar la mà -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Pujar presentació bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Anar a la diapositiva anterior @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Anar a la següent diapositiva bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Ajustar diapositives a l'ample -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Ajustar diapositives a la pà gina -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Fer presentador a la persona seleccionada -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Expulsar la persona seleccionada de la reunió +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activar o Desactivar so de la persona seleccionada bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Activar o Desactivar so a tots els usuaris bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Silenciar a tots excepte al presentador -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Enfocar a les pestanyes del xat -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Enfocar al seleccionador de color de la font bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Enviar missatge del xat -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = Per navegar en el missatge, el teu has enfocar a la finestra del xat @@ -746,32 +756,33 @@ bbb.shortcutkey.chat.chatbox.goread.function = Navegar al missatge llegit més r bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Tecla d'accés rà pid per depurar temporalment -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = Publicar bbb.polling.closeButton.label = Tancar -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Si bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Començar a compartir bbb.publishVideo.changeCameraBtn.labelText = Canviar la configuració de la cà mera @@ -787,117 +798,74 @@ bbb.shortcutkey.specialKeys.down = Fletxa direccional baix bbb.shortcutkey.specialKeys.plus = Més bbb.shortcutkey.specialKeys.minus = Menys -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/cs_CZ/bbbResources.properties b/bigbluebutton-client/locale/cs_CZ/bbbResources.properties index 61ae65bb2174dc944c635d892d5ec3bf2bea8f28..abecc53cf48a7f434d10d97161760a1159a8c18f 100644 --- a/bigbluebutton-client/locale/cs_CZ/bbbResources.properties +++ b/bigbluebutton-client/locale/cs_CZ/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = PÅ™ipojovánà k serveru -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Omlouváme se, k serveru se nelze pÅ™ipojit. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = OtevÅ™Ãt okno záznamu bbb.mainshell.meetingNotFound = Konference nenalezena bbb.mainshell.invalidAuthToken = Neplatný autentizaÄnà kód bbb.mainshell.resetLayoutBtn.toolTip = Původnà nastavenà vzhledu bbb.mainshell.notification.tunnelling = Tunelovánà bbb.mainshell.notification.webrtc = WebRTC zvuk -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Máte starý jazykový pÅ™eklad BigBlueButtonu. bbb.oldlocalewindow.reminder2 = Vymažte cache VaÅ¡eho prohlÞeÄe a zkuste to znovu, prosÃm. bbb.oldlocalewindow.windowTitle = UpozornÄ›nÃ: Starý jazykový pÅ™eklad @@ -54,7 +54,7 @@ bbb.micSettings.cancel = ZruÅ¡it bbb.micSettings.connectingtoecho = PÅ™ipojovánà bbb.micSettings.connectingtoecho.error = Chyba ozvÄ›nové zkouÅ¡ky: ProsÃm kontaktujte administrátora. bbb.micSettings.cancel.toolTip = ZruÅ¡it pÅ™ihlášenà do audio konference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Nastavenà zvuku. Fokus zůstane v tomto oknÄ› až do jeho zavÅ™enÃ. bbb.micSettings.webrtc.title = WebRTC Podpora bbb.micSettings.webrtc.capableBrowser = Váš prohlÞeÄ podporuje WebRTC @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = PÅ™ipojovánà bbb.micSettings.webrtc.transferring = PÅ™enášÃm bbb.micSettings.webrtc.endingecho = PÅ™ipojovánà ke zvuku bbb.micSettings.webrtc.endedecho = OzvÄ›nová zkouÅ¡ka ukonÄena. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = OprávnÄ›nà pro mikrofon -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = OprávnÄ›nà pro mikrofon -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = UpozornÄ›nà zvuku bbb.micWarning.joinBtn.label = Vstoupit bbb.micWarning.testAgain.label = Znovu otestovat @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = OzvÄ›nový test WebRTC byl neo bbb.webrtcWarning.connection.dropped = PÅ™ipojenà pomocà WebRTC bylo pÅ™eruÅ¡eno bbb.webrtcWarning.connection.reconnecting = PokouÅ¡Ãm se o opÄ›tovné navázánà spojenà bbb.webrtcWarning.connection.reestablished = PÅ™ipojenà pomocà WebRTC bylo opÄ›tovnÄ› navázáno -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Pomoc bbb.mainToolbar.logoutBtn = Odhlásit se bbb.mainToolbar.logoutBtn.toolTip = Odhlásit se -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Volba jazyka bbb.mainToolbar.settingsBtn = Nastavenà bbb.mainToolbar.settingsBtn.toolTip = OtevÅ™Ãt nastavenà @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Spustit nahrávánà bbb.mainToolbar.recordBtn.toolTip.stop = Zastavit nahrávánà bbb.mainToolbar.recordBtn.toolTip.recording = MÃstnost je nahrávána bbb.mainToolbar.recordBtn.toolTip.notRecording = MÃstnost nenà nahrávána -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Potvrdit nahrávánà bbb.mainToolbar.recordBtn.confirm.message.start = Opravdu chcete nahrávat tuto mÃstnost? bbb.mainToolbar.recordBtn.confirm.message.stop = Opravdu chcete zastavit nahrávánÃ? -bbb.mainToolbar.recordBtn..notification.title = Nahrát oznámenà -bbb.mainToolbar.recordBtn..notification.message1 = Můžete nahrát tuto konferenci -bbb.mainToolbar.recordBtn..notification.message2 = Pro zahájenà nebo ukonÄenà nahrávánà stisknÄ›te tlaÄÃtko na titulnà liÅ¡tÄ›. +bbb.mainToolbar.recordBtn.notification.title = Nahrát oznámenà +bbb.mainToolbar.recordBtn.notification.message1 = Můžete nahrát tuto konferenci +bbb.mainToolbar.recordBtn.notification.message2 = Pro zahájenà nebo ukonÄenà nahrávánà stisknÄ›te tlaÄÃtko na titulnà liÅ¡tÄ›. bbb.mainToolbar.recordingLabel.recording = (NahrávánÃ) bbb.mainToolbar.recordingLabel.notRecording = Nahrávánà zastaveno -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = KonfiguraÄnà oznámenà bbb.clientstatus.notification = NepÅ™eÄtená oznámenà bbb.clientstatus.close = ZavÅ™Ãt @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Váš prohlÞeÄ ({0}) je zastaralý. Dopor bbb.clientstatus.flash.title = Flash pÅ™ehrávaÄ bbb.clientstatus.flash.message = Váš Flash pÅ™ehrávaÄ plugin ({0}) je zastaralý. DoporuÄujeme aktualizovat na poslednà verzi. bbb.clientstatus.webrtc.title = Zvuk -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Pro lepÅ¡Ã zvuk doporuÄujeme Firefox nebo Chrome. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimalizovat bbb.window.maximizeRestoreBtn.toolTip = Maximalizovat bbb.window.closeBtn.toolTip = ZavÅ™Ãt @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Stav bbb.users.usersGrid.statusItemRenderer.changePresenter = KliknÄ›te pro volbu prezentujÃcÃho bbb.users.usersGrid.statusItemRenderer.presenter = PrezentujÃcà bbb.users.usersGrid.statusItemRenderer.moderator = Moderátor -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Vymazat stav bbb.users.usersGrid.statusItemRenderer.viewer = Pozorovatel bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = SdÃlenà webové kamery. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = ZesÃlit {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Ztlumit {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Zamknout {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Odemknout {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Vyhodit {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = SdÃlenà webové kamery bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon vypnut bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon zapnut bbb.users.usersGrid.mediaItemRenderer.noAudio = Nenà ve zvukové konferenci -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = VyÄistit -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentace bbb.presentation.titleWithPres = Prezentace: {0} bbb.presentation.quickLink.label = Okno prezentace bbb.presentation.fitToWidth.toolTip = Pžizpůsobit prezentaci Å¡ÃÅ™ce bbb.presentation.fitToPage.toolTip = Pžizpůsobit prezentaci stránce bbb.presentation.uploadPresBtn.toolTip = Nahrát prezentaci -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = PÅ™edchozà snÃmek. bbb.presentation.btnSlideNum.accessibilityName = SnÃmek {0} z {1} bbb.presentation.btnSlideNum.toolTip = VýbÄ›r stránky prezentace @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Nahrávánà bylo dokonÄeno. ProsÃme chvÃli bbb.presentation.uploaded = nahráno. bbb.presentation.document.supported = Nahraný dokument je podporován. Zahajuji pÅ™evod... bbb.presentation.document.converted = Dokument byl úspěšnÄ› pÅ™eveden. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO chyba: ProsÃme kontaktujte administratora. bbb.presentation.error.security = BezpeÄnostnà chyba: ProsÃme kontaktujte administratora. bbb.presentation.error.convert.notsupported = Chyba: Nahraný soubor nenà podporován. ProsÃme nahrajte kompatibilnà soubor. @@ -283,61 +285,62 @@ bbb.fileupload.uploadBtn = Nahrát bbb.fileupload.uploadBtn.toolTip = Nahrát soubor bbb.fileupload.deleteBtn.toolTip = Odstranit prezentaci bbb.fileupload.showBtn = Zobrazit -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Zobrazit prezentaci -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = VytvářÃm náhledy.. bbb.fileupload.progBarLbl = Postup: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat bbb.chat.quickLink.label = Okno chatu bbb.chat.cmpColorPicker.toolTip = Barva textu bbb.chat.input.accessibilityName = Pole pro editaci zprávy chatu bbb.chat.sendBtn.toolTip = Odeslat zprávu bbb.chat.sendBtn.accessibilityName = Odeslat zprávu chatu -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = KopÃrovat vÅ¡echen text bbb.chat.publicChatUsername = VÅ¡ichni bbb.chat.optionsTabName = Volby bbb.chat.privateChatSelect = Vyberte osobu, se kterou chcete chatovat soukromÄ› bbb.chat.private.userLeft = Uživatel se odhlásil. bbb.chat.private.userJoined = Uživatel se pÅ™ihlásil. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Vyberte uživatele pro soukromý chat bbb.chat.usersList.accessibilityName = Vyberte uživatele k otevÅ™enà soukromého chatu. Použijte klávesy s Å¡ipkami pro navigaci. bbb.chat.chatOptions = Nastavenà chatu bbb.chat.fontSize = Velikost pÃsma bbb.chat.cmbFontSize.toolTip = VýbÄ›r velikosti pÃsma pro chat -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimalizovat okno chatu bbb.chat.maximizeRestoreBtn.accessibilityName = Maximalizovat okno chatu bbb.chat.closeBtn.accessibilityName = ZavÅ™Ãt okno chatu bbb.chat.chatTabs.accessibleNotice = Nové zprávy na této záložce. bbb.chat.chatMessage.systemMessage = Systém -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Zpráva je delÅ¡Ã o {0} znak(ů) bbb.publishVideo.changeCameraBtn.labelText = ZmÄ›nit webovou kameru bbb.publishVideo.changeCameraBtn.toolTip = OtevÅ™Ãt dialogové okno pro zmÄ›nu kamery @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Zahájit sdÃlenà bbb.publishVideo.startPublishBtn.toolTip = Zahájit sdÃlenà webové kamery bbb.publishVideo.startPublishBtn.errorName = Nelze nasdÃlet webkameru. Důvod: {0} bbb.webcamPermissions.chrome.title = OprávnÄ›nà pro webovou kameru -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Webové kamery bbb.videodock.quickLink.label = Okno webových kamer bbb.video.minimizeBtn.accessibilityName = Minimalizovat okno webových kamer @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = ZavÅ™Ãt dialogové okno pro nastavenà bbb.video.publish.closeBtn.label = ZruÅ¡it bbb.video.publish.titleBar = Okno zveÅ™ejnÄ›nà webové kamery bbb.video.streamClose.toolTip = UkonÄit stream pro: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = bbb.screensharePublish.closeBtn.toolTip = UkonÄit sdÃlenà a zavÅ™Ãt -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Minimalizovat -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = bbb.screenshareView.fitToWindow = PÅ™izpůsobit oknu bbb.screenshareView.actualSize = Zobrazit aktuálnà velikost -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = UkonÄit poslouchánà konference bbb.toolbar.phone.toolTip.unmute = Zahájit poslouchánà konference bbb.toolbar.phone.toolTip.nomic = Mikrofon nebyl nalezen -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = SdÃlet VaÅ¡i webovou kameru bbb.toolbar.video.toolTip.stop = Zastavit sdÃlenà webové kamery +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = PÅ™idat vlastnà vzhled do seznamu -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = ZmÄ›nit vzhled bbb.layout.loadButton.toolTip = Nahrát vzhledy ze souboru bbb.layout.saveButton.toolTip = Uložit vzhledy do souboru @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplikovat vzhled bbb.layout.combo.custom = * Vlastnà vzhled bbb.layout.combo.customName = Vlastnà vzhled bbb.layout.combo.remote = Vzdálený -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Vzhledy byly úspěšnÄ› uloženy +bbb.layout.save.ioerror = bbb.layout.load.complete = Vzhledy byly úspěšnÄ› nahrány bbb.layout.load.failed = Nelze nahrát rozvrženà vzhledu -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Původnà vzhled -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Video chat bbb.layout.name.webcamsfocus = Sezenà s webovou kamerou bbb.layout.name.presentfocus = Sezenà s prezentacà -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = PÅ™ednáškový pomocnÃk bbb.layout.name.lecture = PÅ™ednáška -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = ZvýrazňovaÄ bbb.highlighter.toolbar.pencil.accessibilityName = PÅ™epnout ukazovátko tabule na tužku bbb.highlighter.toolbar.ellipse = Kruh @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Vybrat barvu bbb.highlighter.toolbar.color.accessibilityName = OznaÄit barvu pro kreslenà na tabuli bbb.highlighter.toolbar.thickness = ZmÄ›nit tlouÅ¡Å¥ku Äáry bbb.highlighter.toolbar.thickness.accessibilityName = TlouÅ¡Å¥ka Äáry pro kreslenà na tabuli -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Odhlášen +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serverová aplikace byla ukonÄena bbb.logout.asyncerror = DoÅ¡lo k asynchronnà chybÄ› @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Spojenà se serverem bylo ukonÄeno bbb.logout.rejected = PÅ™ipojenà k serveru bylo zamÃtnuto bbb.logout.invalidapp = Aplikace red5 neexistuje bbb.logout.unknown = Váš klient ztratil spojenà se serverem -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Odhlásil-a jste se z konference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Moderátor Vás vyhodil z konference. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Pokud jste se odhlásil-a neúmyslnÄ›, použijte tlaÄÃtko dole pro opÄ›tovné pÅ™ipojenÃ. bbb.logout.refresh.label = Znovu pÅ™ipojit -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Potvrdit odhlášenà bbb.logout.confirm.message = Opravdu se chcete odhlásit? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ano bbb.logout.confirm.no = Ne -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Detekovány problémy s pÅ™ipojenÃm bbb.connection.reconnecting=Znovu se pÅ™ipojuji bbb.connection.reestablished=Spojenà navázáno @@ -530,59 +539,60 @@ bbb.notes.title = Poznámky bbb.notes.cmpColorPicker.toolTip = Barva textu bbb.notes.saveBtn = Uložit bbb.notes.saveBtn.toolTip = Uložit poznámku -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = V následujÃcÃm oknÄ› zvolte "Povolit" pro správné fungovánà sdÃlenà pracovnà plochy bbb.settings.deskshare.start = ZaÅ¡krtnout sdÃlenà pracovnà plochy bbb.settings.voice.volume = Aktivita na mikrofonu -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Chybná verze Flashe bbb.settings.flash.text = Máte nainstalovánu verzi Flash {0}, pro použÃvánà této aplikace je potÅ™eba alespoň verze {1}. TlaÄÃtkem dole nainstalujete nejnovÄ›jÅ¡Ã verzi Flash od Adobe. bbb.settings.flash.command = Instalovat nejnovÄ›jÅ¡Ã verzi Flash bbb.settings.isight.label = Chyba webové kamery iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instalovat Flash 10.2 RC2 bbb.settings.warning.label = Varovánà bbb.settings.warning.close = ZavÅ™Ãt toto varovánà bbb.settings.noissues = Nebyly detekovány žádné nevyÅ™eÅ¡ené problémy. bbb.settings.instructions = PotvrÄte žádost Flash na použÃvánà webové kamery. Pokud výstup odpovÃdá oÄekávánÃ, je Váš prohlÞeÄ nastaven správnÄ›. Ostatnà možné problémy jsou popsány dole. Prozkoumejte je pro nalezenà vhodného Å™eÅ¡enÃ. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = TrojúhelnÃk ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = PÅ™epnout ukazovátko tabule na trojúhelnÃk ltbcustom.bbb.highlighter.toolbar.line = Čára @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Text ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = PÅ™epnout ukazovátko tabule na text ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Barva textu ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Velikost pÃsma -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Hotovo @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = PÅ™eÅ¡li jste na poslednà zpr bbb.accessibility.chat.chatBox.navigatedLatestRead = PÅ™eÅ¡li jste na zprávu, kterou jste Äetli naposledy bbb.accessibility.chat.chatwindow.input = Vstup pro chat bbb.accessibility.chat.chatwindow.audibleChatNotification = Akustické oznámenà z chatu -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = ProsÃme použijte klávesové Å¡ipky pro navigaci mezi zprávami chatu bbb.accessibility.notes.notesview.input = Vkládánà poznámek bbb.shortcuthelp.title = Klávesové zkratky -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimalizovat okno nápovÄ›dy bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximalizovat okno nápovÄ›dy bbb.shortcuthelp.closeBtn.accessibilityName = ZavÅ™Ãt okno nápovÄ›dy -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Globálnà zkratky bbb.shortcuthelp.dropdown.presentation = Zkratky prezentace bbb.shortcuthelp.dropdown.chat = Zkratky chatu bbb.shortcuthelp.dropdown.users = Zkratky uživatelů -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Zkratka bbb.shortcuthelp.headers.function = Funkce @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Minimalizovat aktuálnà okno bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Maximalizovat aktuálnà okno -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Opustit okno Flash bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Ztlumit a zesÃlit Váš mikrofon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = PÅ™ejÃt na okno prezentace bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = PÅ™ejÃt na okno chatu -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = OtevÅ™Ãt okno sdÃlenà pracovnà plochy @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Odhlásit z této konference bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Zvednout ruku -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Nahrát prezentaci bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = PÅ™ejÃt na pÅ™edchozà snÃmek @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = PÅ™ejÃt na následujÃcà snÃmek bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = PÅ™izpůsobit snÃmky Å¡ÃÅ™ce -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = PÅ™izpůsobit snÃmky stránce -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Vybranou osobu udÄ›lat prezentujÃcÃm -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Vyhodit vybranou osobu z konference +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Ztlumit nebo zesÃlit vybranou osobu bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Ztlumit nebo zesÃlit vÅ¡echny uživatele bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Ztlumit vÅ¡echny kromÄ› prezentujÃcÃho -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = PÅ™ejÃt na záložky chatu -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = PÅ™ejÃt na volbu barvy pÃsma. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Navigovat na zprávu, kterou jste bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = DoÄasná horká klávesa pro debugovánà -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Zahájit anketu bbb.polling.startButton.label = Zahájit anketu bbb.polling.publishButton.label = ZveÅ™ejnit bbb.polling.closeButton.label = ZavÅ™Ãt -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Výsledky ankety živÄ› +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Vložit možnosti hlasovánà bbb.polling.respondersLabel.novotes = ÄŒeká se na odpovÄ›di bbb.polling.respondersLabel.text = OdpovÄ›dÄ›lo uživatelů: {0} @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = ZavÅ™Ãt vÅ¡echna videa bbb.users.settings.lockAll = Zamknout vÅ¡echny uživatele bbb.users.settings.lockAllExcept = Zamknout vÅ¡echny uživatele vyjma pÅ™ednášejÃcÃho bbb.users.settings.lockSettings = Zamknout pozorovatele -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Odemknout vÅ¡echny pozorovatele bbb.users.settings.roomIsLocked = StandardnÄ› uzamÄeno bbb.users.settings.roomIsMuted = StandardnÄ› ztlumeno @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = PoužÃt nastavenà zámku bbb.lockSettings.cancel = ZruÅ¡it bbb.lockSettings.cancel.toolTip = UzavÅ™Ãt toto okno bez uloženà +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Zamknutà moderátora bbb.lockSettings.privateChat = Soukromý chat bbb.lockSettings.publicChat = VeÅ™ejný chat bbb.lockSettings.webcam = Webová kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Vzhled bbb.lockSettings.title=Zamknout pozorovatele @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Vlastnost bbb.lockSettings.locked=ZamÄeno bbb.lockSettings.lockOnJoin=Zamknout po pÅ™ihlášenà -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = bbb.users.breakout.close = ZavÅ™Ãt -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/cy_GB/bbbResources.properties b/bigbluebutton-client/locale/cy_GB/bbbResources.properties index 24840cef93e92d1f9f294b1e9514eafc5f3370cb..f9a5c25a4d156e1851869e150efeba94a03b2f49 100644 --- a/bigbluebutton-client/locale/cy_GB/bbbResources.properties +++ b/bigbluebutton-client/locale/cy_GB/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Cysylltu â'r gweinydd -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Mae'n ddrwg gennym, ni allwn cysylltu â'r gweinydd. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Agor ffenestr cofnodi bbb.mainshell.meetingNotFound = Ni Chanfuwyd y Cyfarfod bbb.mainshell.invalidAuthToken = Tocyn Dilysu Annilys bbb.mainshell.resetLayoutBtn.toolTip = Ailosod Gosodiad bbb.mainshell.notification.tunnelling = Twneli bbb.mainshell.notification.webrtc = Sain WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Efallai bod gennych hen gyfieithiadau iaith BigBlueButton. bbb.oldlocalewindow.reminder2 = Gliriwch storfa eich porwr a cheisiwch eto. bbb.oldlocalewindow.windowTitle = Rhybudd: Hen Cyfieithiadau Iaith @@ -66,41 +66,42 @@ bbb.micSettings.webrtc.waitingforice = Cysylltu bbb.micSettings.webrtc.transferring = Trosglwyddo bbb.micSettings.webrtc.endingecho = Ymuno â'r Sain bbb.micSettings.webrtc.endedecho = Diweddwyd y prawf atsain. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Caniatâd Meicroffon Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Caniatâd Meicroffon Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Rhybudd Sain bbb.micWarning.joinBtn.label = Ymuno ta beth bbb.micWarning.testAgain.label = Profi eto bbb.micWarning.message = Nid yw eich meicroffon wedi dangos unrhyw weithgaredd, mae'n debyg ni fydd eraill yn gallu eich clywed yn ystod y sesiwn. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? +bbb.webrtcWarning.message = bbb.webrtcWarning.title = Methwyd Sain WebRTC -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Cymorth bbb.mainToolbar.logoutBtn = Allgofnodi bbb.mainToolbar.logoutBtn.toolTip = Allgofnodi -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Dewis iaith bbb.mainToolbar.settingsBtn = Gosodiadau bbb.mainToolbar.settingsBtn.toolTip = Agor Gosodiadau @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = Dechrau recordio bbb.mainToolbar.recordBtn.toolTip.stop = Terfynu recordio bbb.mainToolbar.recordBtn.toolTip.recording = Recordir y sesiwn bbb.mainToolbar.recordBtn.toolTip.notRecording = Ni recordir y sesiwn -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Cadarnhau recordio bbb.mainToolbar.recordBtn.confirm.message.start = Ydych chi'n sicr eich bod am dechrau recordio? bbb.mainToolbar.recordBtn.confirm.message.stop = Ydych chi'n sicr eich bod am terfynu recordio? -bbb.mainToolbar.recordBtn..notification.title = Hysbysiad Recordio -bbb.mainToolbar.recordBtn..notification.message1 = Gallwch recordio'r cyfarfod yma. -bbb.mainToolbar.recordBtn..notification.message2 = Mae'n rhaid i chi glicio ar y botwm Dechrau / Terfynu Recordio yn y bar teitl i ddechrau / terfynu recordio. +bbb.mainToolbar.recordBtn.notification.title = Hysbysiad Recordio +bbb.mainToolbar.recordBtn.notification.message1 = Gallwch recordio'r cyfarfod yma. +bbb.mainToolbar.recordBtn.notification.message2 = Mae'n rhaid i chi glicio ar y botwm Dechrau / Terfynu Recordio yn y bar teitl i ddechrau / terfynu recordio. bbb.mainToolbar.recordingLabel.recording = (Recordio) bbb.mainToolbar.recordingLabel.notRecording = Dim yn Recordio -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = bbb.clientstatus.close = Cau bbb.clientstatus.tunneling.title = Mur gwarchod bbb.clientstatus.tunneling.message = Mae mur gwarchod yn atal eich cleient rhag cysylltu yn uniongyrchol ar borth 1935 i'r gweinydd. Argymell ymuno â rhwydwaith llai cyfyngol ar gyfer cysylltiad mwy sefydlog bbb.clientstatus.browser.title = Fersiwn Porwr -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. +bbb.clientstatus.browser.message = bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. +bbb.clientstatus.flash.message = bbb.clientstatus.webrtc.title = Sain -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Argymhellir defnyddio naill ai Firefox neu Chrome ar gyfer gwell sain. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Lleihau bbb.window.maximizeRestoreBtn.toolTip = Ehangu bbb.window.closeBtn.toolTip = Cau @@ -171,8 +172,8 @@ bbb.users.settings.webcamSettings = Gosodiadau Gwegamera bbb.users.settings.muteAll = Pylu Pob Defnyddiwr bbb.users.settings.muteAllExcept = Pylu Pob Defnyddiwr Ac Eithrio'r Cyflwynydd bbb.users.settings.unmuteAll = Datpylu Pob Defnyddiwr -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = bbb.users.roomMuted.text = Pylwyd Gwylwyr bbb.users.roomLocked.text = Gwylwyr Dan Glo bbb.users.pushToTalk.toolTip = Siarad @@ -180,7 +181,7 @@ bbb.users.pushToMute.toolTip = Pylu eich hun bbb.users.muteMeBtnTxt.talk = Datpylu bbb.users.muteMeBtnTxt.mute = Pylu bbb.users.muteMeBtnTxt.muted = Pylwyd -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Rhestr Defnyddwyr. Defnyddiwch y bysellau saeth i lywio. bbb.users.usersGrid.nameItemRenderer = Enw bbb.users.usersGrid.nameItemRenderer.youIdentifier = chi @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Statws bbb.users.usersGrid.statusItemRenderer.changePresenter = Cliciwch I Wneud Y Cyflwynydd bbb.users.usersGrid.statusItemRenderer.presenter = Cyflwynydd bbb.users.usersGrid.statusItemRenderer.moderator = Cymedrolwr -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Clirio'r statws bbb.users.usersGrid.statusItemRenderer.viewer = Gwyliwr bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Rhannu eich gwegamera. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Datpylu {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Pylu {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Cloi {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Datgloi {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Cicio {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Rhannu Gwegamera bbb.users.usersGrid.mediaItemRenderer.micOff = Meicroffon i ffwrdd bbb.users.usersGrid.mediaItemRenderer.micOn = Meicroffon ar bbb.users.usersGrid.mediaItemRenderer.noAudio = Dim mewn cynhadledd sain -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Clirio -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Cyflwyniad bbb.presentation.titleWithPres = Cyflwyniad: {0} bbb.presentation.quickLink.label = Ffenestr Cyflwyniad bbb.presentation.fitToWidth.toolTip = Addasu'r Cyflwyniad i'r Lled bbb.presentation.fitToPage.toolTip = Addasu'r Cyflwyniad I'r Dudalen bbb.presentation.uploadPresBtn.toolTip = Llwytho I Fyny Cyflwyniad -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Sleid Blaenorol bbb.presentation.btnSlideNum.accessibilityName = Sleid {0} o {1} bbb.presentation.btnSlideNum.toolTip = Dewiswch slide @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Llwythwyd i fyny. Arhoswch tra trosir y ddogfe bbb.presentation.uploaded = wedi'i lwytho i fynnu. bbb.presentation.document.supported = Cefnogir y ddogfen a lwythwyd i fyny. Dechrau trosi... bbb.presentation.document.converted = Troswyd y ddogfen yn llwyddiannus. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Gwall IO: Cysylltwch â'r gweinyddwr. bbb.presentation.error.security = Gwall Diogelwch: Cysylltwch â'r gweinyddwr. bbb.presentation.error.convert.notsupported = Gwall: Ni chefnogir y ddogfen a lwythwyd i fyny. Llwythwch i fyny dogfen a gefnogir. @@ -283,62 +285,63 @@ bbb.fileupload.uploadBtn = Llwytho i fyny bbb.fileupload.uploadBtn.toolTip = Llwytho i fyny'r ffeil a ddewiswyd bbb.fileupload.deleteBtn.toolTip = Dileu'r Cyflwyniad bbb.fileupload.showBtn = Dangos -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Dangos y Cyflwyniad -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Cynhyrchu mân-luniau. bbb.fileupload.progBarLbl = Ar y gweill: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Sgwrs bbb.chat.quickLink.label = Ffenestr Sgwrsio bbb.chat.cmpColorPicker.toolTip = Lliw'r Testun bbb.chat.input.accessibilityName = Maes Golygu Neges Sgwrsio bbb.chat.sendBtn.toolTip = Anfon Neges bbb.chat.sendBtn.accessibilityName = Anfon neges sgwrsio -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Copïo'r Holl Destun bbb.chat.publicChatUsername = Cyhoeddus bbb.chat.optionsTabName = Dewisiadau bbb.chat.privateChatSelect = Dewiswch defnyddiwr i sgwrsio gyda'n breifat bbb.chat.private.userLeft = Gadawodd y defnyddiwr. bbb.chat.private.userJoined = Ymunodd y defnyddiwr -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Dewiswch Gyfranogwr i Agor Sgwrs Breifat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Dewisiadau sgwrsio bbb.chat.fontSize = Maint Testun Neges Sgwrsio bbb.chat.cmbFontSize.toolTip = Dweis Maint Testun Neges Sgwrsio -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Lleihau Ffenestr Sgwrsio bbb.chat.maximizeRestoreBtn.accessibilityName = Ehangu Ffenestr Sgwrsio bbb.chat.closeBtn.accessibilityName = Cau Ffenestr Sgwrsio bbb.chat.chatTabs.accessibleNotice = Neges newydd yn y tab bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Newid Gwegamera bbb.publishVideo.changeCameraBtn.toolTip = Agor blwch deialog newid gwegamera bbb.publishVideo.cmbResolution.tooltip = Dewiswch gydraniad gwegamera @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Dechrau Rhannu bbb.publishVideo.startPublishBtn.toolTip = Dechrau rannu eich gwegamera bbb.publishVideo.startPublishBtn.errorName = Methu rhannu eich gwegamera. Rheswm: {0} bbb.webcamPermissions.chrome.title = Caniatâd Gwegamera Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Gwegamerau bbb.videodock.quickLink.label = Ffenestr Gwegamera bbb.video.minimizeBtn.accessibilityName = Lleihau Ffenestr Gwegamera @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = Cyhoeddi... bbb.video.publish.closeBtn.accessName = Cau blwch deialog newid gwegamera bbb.video.publish.closeBtn.label = Diddymu bbb.video.publish.titleBar = Cyhoeddi Ffenestr Gwegamera -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Terfynu gwrando ar y gynhadledd bbb.toolbar.phone.toolTip.unmute = Dechrau gwrando ar y gynhadledd bbb.toolbar.phone.toolTip.nomic = Ni chanfuwyd meicroffon -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Rhannu Dy Wegamera bbb.toolbar.video.toolTip.stop = Terfynu Rhannu Dy Wegamera +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Ychwanegu'r addasiad gosodiad i'r rhestr -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Newid Dy Osodiad bbb.layout.loadButton.toolTip = Llwytho cynllun sgrin o ffeil bbb.layout.saveButton.toolTip = Arbed cynllun sgrin i ffeil @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Cymhwyso gosodiad bbb.layout.combo.custom = * Addasiad gosodiad bbb.layout.combo.customName = Addasiad gosodiad bbb.layout.combo.remote = Anghysbell -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Arbedwyd y gosodiadau yn llwyddiannus +bbb.layout.save.ioerror = bbb.layout.load.complete = Llwythwyd y gosodiadau yn llwyddiannus bbb.layout.load.failed = Methwyd llwytho'r gosodiadau -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Gosodiad Rhagosodedig -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Sgwrs Fideo bbb.layout.name.webcamsfocus = Cyfarfod Gwegamera bbb.layout.name.presentfocus = Cyfarfod Cyflwyniad -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Cynorthwy-ydd Darlithydd bbb.layout.name.lecture = Darlith -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Pensil bbb.highlighter.toolbar.pencil.accessibilityName = Newid cyrchwr bwrdd gwyn i bensil bbb.highlighter.toolbar.ellipse = Cylch @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Dewis Lliw bbb.highlighter.toolbar.color.accessibilityName = Lliw lluniadu'r bwrdd gwyn bbb.highlighter.toolbar.thickness = Newid Trwch bbb.highlighter.toolbar.thickness.accessibilityName = Trwch lluniadu'r bwrdd gwyn -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Allgofnodwyd +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Iawn bbb.logout.appshutdown = Mae'r rhaglen gweinyddu wedi'i gau i lawr bbb.logout.asyncerror = Digwyddodd Gwall Anghydamseredig @@ -502,87 +509,90 @@ bbb.logout.connectionfailed = Bennwyd y cysylltiad â'r gweinydd bbb.logout.rejected = Gwrthodwyd cysylltiad â'r gweinydd bbb.logout.invalidapp = Nid yw'r rhaglen red5 yn bodoli bbb.logout.unknown = Collwyd cysylltiad â'r gweinydd gan eich cleient -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Fe allgofnodoch o'r gynhadledd -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = bbb.logout.refresh.label = Ailgysylltu -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Cadarnhau Allgofnodi bbb.logout.confirm.message = Ydych chi'n sicr eich bod eisiau allgofnodi? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ydw bbb.logout.confirm.no = Nac ydw -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= bbb.connection.reconnecting=Wrthi'n ailgysylltu -bbb.connection.reestablished=Connection reestablished +bbb.connection.reestablished= bbb.connection.bigbluebutton=BigBlueButton bbb.connection.sip=SIP bbb.connection.video=Fideo -bbb.connection.deskshare=Deskshare +bbb.connection.deskshare= bbb.notes.title = Nodiadau bbb.notes.cmpColorPicker.toolTip = Lliw'r Testun bbb.notes.saveBtn = Arbed bbb.notes.saveBtn.toolTip = Arbed nodiadau -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Dewiswch Ganiatáu ar yr annog sy'n amlygu'i hun i wirio bod rhannu bwrdd gwaith yn gweithio'n iawn i chi bbb.settings.deskshare.start = Gwirio Rhannu Bwrdd Gwaith bbb.settings.voice.volume = Gweithgaredd Meicroffon -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Gwall fersiwn Flash bbb.settings.flash.text = Mae gennych Flash {0} wedi'i osod, ond mae angen o leiaf fersiwn {1} i defnyddio BigBlueButton yn effeithiol. Bydd y botwm isod yn gosod y fersiwn diweddaraf o Adobe Flash. bbb.settings.flash.command = Gosodwch Flash diweddaraf bbb.settings.isight.label = Gwall gwegamera iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Gosodwch Flash 10.2 RC2 bbb.settings.warning.label = Rhybudd bbb.settings.warning.close = Cau'r rhybudd hwn bbb.settings.noissues = Ni ddarganfuwyd materion sydd heb ei ddatrys bbb.settings.instructions = Derbyniwch yr anogwr Flash sy'n gofyn am ganiatâd gwe-gamera. Os yw'r allbwn yn cyfateb i'r hyn a ddisgwylir, mae eich porwr wedi'i osod yn gywir. Rhestrir materion potensial eraill rhestru isod, archwiliwch hwy i ganfod datrysiadau phosibl. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triongl ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Newid cyrchwr bwrdd gwyn i driongl ltbcustom.bbb.highlighter.toolbar.line = Llinell @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Testun ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Newid cyrchwr bwrdd gwyn i destun ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Lliw'r Testun ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Maint Ffont -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Yn Barod @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Fe lywiwyd i'r neges gyntaf bbb.accessibility.chat.chatBox.navigatedLatest = Fe lywiwyd i'r neges ddiweddaraf bbb.accessibility.chat.chatBox.navigatedLatestRead = Fe lywiwyd i'r neges ddiweddaraf a ddarllenwyd bbb.accessibility.chat.chatwindow.input = Mewnbwn sgwrsio -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Defnyddiwch y bysellau saeth i lywio drwy negeseuon sgwrsio. bbb.accessibility.notes.notesview.input = Mewnbwn nodiadau bbb.shortcuthelp.title = Bysellau Byrlwybr -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Lleihau ffenestr Cymorth Llwybrau Byr bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Ehangu ffenestr Cymorth Llwybrau Byr bbb.shortcuthelp.closeBtn.accessibilityName = Cau ffenestr Cymorth Llwybrau Byr -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Llwybrau Byr Cyffredinol bbb.shortcuthelp.dropdown.presentation = Llwybrau Byr Cyflwyniad bbb.shortcuthelp.dropdown.chat = Llwybrau Byr Sgwrsio bbb.shortcuthelp.dropdown.users = Llwybrau Byr Defnyddwyr -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Llwybr Byr bbb.shortcuthelp.headers.function = Ffrwythiant @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Lleihau ffenestr bresennol bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Ehangu ffenestr bresennol -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Symud ffocws oddi ar y ffenestr Flash bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Pylu neu Datpylu eich meicroffon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Symud ffocws i'r Ffenestr Cyflwyniad bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Symud ffocws i'r Ffenestr Sgwrsio -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Agor ffenestr rhannu bwrdd gwaith @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Allgofnodi o'r cyfarfod bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Codi eich llaw -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Llwytho i fyny cyflwyniad bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Symud yn ôl i'r sleid blaenorol @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Symud ymlaen i'r sleid nesaf bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Addasu'r sleid i'r lled -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Addasu'r sleid i'r dudalen -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Gwneud y person a ddetholir yn gyflwynydd. -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Cicio'r person a ddewiswyd o'r cyfarfod +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Pylu neu datpylu'r person detholedig bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Pylu neu datpylu pob defnyddiwr bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Pylu pawb ac eithrio'r Cyflwynydd -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Ffocysu'r tabiau sgwrsio -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Ffocysu'r dweissydd lliw ffont. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,19 +756,20 @@ bbb.shortcutkey.chat.chatbox.goread.function = Llywio i'r neges ddiweddaraf a dd bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Bysell frys dadfygio dros dro -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll +bbb.polling.startButton.tooltip = bbb.polling.startButton.label = Dechrau Pleidleisio bbb.polling.publishButton.label = Cyhoeddi bbb.polling.closeButton.label = Cau -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Ydw bbb.polling.answer.No = Nac ydw bbb.polling.answer.True = Gwir @@ -770,8 +781,8 @@ bbb.polling.answer.D = D bbb.polling.answer.E = E bbb.polling.answer.F = F bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Dechrau Rhannu bbb.publishVideo.changeCameraBtn.labelText = Newid Gwegamera @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Cau pob fideo bbb.users.settings.lockAll = Cloi Pob Defnyddiwr bbb.users.settings.lockAllExcept = Cloi Pob Defnyddiwr Ac Eithrio'r Cyflwynydd bbb.users.settings.lockSettings = Cloi Gwyliwr ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Datgloi Pob Defnyddiwr bbb.users.settings.roomIsLocked = Rhagosod Dan glo bbb.users.settings.roomIsMuted = Rhagosod Pylu @@ -802,102 +813,59 @@ bbb.lockSettings.save.tooltip = Cymhwyso gosodiadau cloi bbb.lockSettings.cancel = Diddymu bbb.lockSettings.cancel.toolTip = Caewch y ffenestr hon heb achub +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Cloi Cymedrolwr bbb.lockSettings.privateChat = Sgwrs Preifat bbb.lockSettings.publicChat = Sgwrs Gyhoeddus bbb.lockSettings.webcam = Gwegamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Meicroffon bbb.lockSettings.layout = Gosodiad bbb.lockSettings.title=Cloi Gwyliwr bbb.lockSettings.feature=Nodwedd bbb.lockSettings.locked=Dan Glo -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/da_DK/bbbResources.properties b/bigbluebutton-client/locale/da_DK/bbbResources.properties index df7d441cc1f6e9b3f8e40517547f6c6a2c6f028d..6530e862603dc8205b0f8966ebcc438c40fb1135 100644 --- a/bigbluebutton-client/locale/da_DK/bbbResources.properties +++ b/bigbluebutton-client/locale/da_DK/bbbResources.properties @@ -6,26 +6,26 @@ bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton bbb.mainshell.logBtn.toolTip = Ã…bn log-vinduet bbb.mainshell.meetingNotFound = Ingen møde fundet. bbb.mainshell.invalidAuthToken = Ugyldig godkendelse -bbb.mainshell.resetLayoutBtn.toolTip = Nulstil layout pÃ¥ værktøjsbjælke +bbb.mainshell.resetLayoutBtn.toolTip = Nulstil layout bbb.mainshell.notification.tunnelling = Tunnel bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.fullscreenBtn.toolTip = SlÃ¥ fuldskærm til og fra +bbb.mainshell.quote.sentence.1 = Der er ikke hemmeligheder bag succes Det er resultatet af forberedelse, hÃ¥rdt arbejde og at lære af sine fejl bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Fortæl mig og jeg glemmer. Undervis mig og jeg husker. Involver mig og jeg lærer. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = Jeg lærte værdien af hÃ¥rdt arbejde ved at arbejde hÃ¥rdt bbb.mainshell.quote.attribution.3 = Margaret Mead bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = Research er at skabe ny viden bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = Du har mÃ¥ske en gammel oversættelse af BigBlueButton. bbb.oldlocalewindow.reminder2 = Tøm din browsers cache og prøv igen. bbb.oldlocalewindow.windowTitle = Advarsel: gamle oversættelser bbb.audioSelection.title = Hvorledes vil du deltage i audio. bbb.audioSelection.btnMicrophone.label = Mikrofon -bbb.audioSelection.btnMicrophone.toolTip = Deltag i audio med din mikrofon. +bbb.audioSelection.btnMicrophone.toolTip = Deltag i onlinesession med lyd med din mikrofon. bbb.audioSelection.btnListenOnly.label = Kun lyt. bbb.audioSelection.btnListenOnly.toolTip = Kun lyt bbb.audioSelection.txtPhone.text = For at deltage i dette møde via telefon, ring: {0} eller indtast {1} som konference pin nummer. @@ -48,12 +48,12 @@ bbb.micSettings.micRecordVolume.label = Vælg bbb.micSettings.micRecordVolume.toolTip = Aktiver mikrofon bbb.micSettings.nextButton = Næste bbb.micSettings.nextButton.toolTip = Start Echo test -bbb.micSettings.join = Forbind lyd -bbb.micSettings.join.toolTip = Deltag med lyd +bbb.micSettings.join = Deltag med lyd +bbb.micSettings.join.toolTip = Deltag i audiowebinar bbb.micSettings.cancel = Fortryd bbb.micSettings.connectingtoecho = Forbinder bbb.micSettings.connectingtoecho.error = Echo test fejl: Venligst kontakt administratoren. -bbb.micSettings.cancel.toolTip = Fortryd deltagelse i audio konference +bbb.micSettings.cancel.toolTip = Fortryd deltagelse i audiowebinar bbb.micSettings.access.helpButton = Hjælp (Du kan Ã¥bne tutorial videoer i en ny side) bbb.micSettings.access.title = Lydindstillinger. Fokus vil forblive i dette lydindstillingsvindue indtil vinduet er lukket. bbb.micSettings.webrtc.title = WebTRC Support @@ -66,12 +66,13 @@ bbb.micSettings.webrtc.waitingforice = Forbinder bbb.micSettings.webrtc.transferring = Overfør bbb.micSettings.webrtc.endingecho = Deltager med lyd bbb.micSettings.webrtc.endedecho = Echo testen er slut. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox Mikrofon tilladelser -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = Klik pÃ¥ Tillad for at give Firefox adgang til din mikrofon. bbb.micPermissions.chrome.title = Chrome mikrofon tillladelser -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = Klik pÃ¥ Tillad for at give Chrome adgang til din mikrofon. bbb.micWarning.title = Advarsel - lyd -bbb.micWarning.joinBtn.label = Deltage alligevel +bbb.micWarning.joinBtn.label = Deltag alligevel bbb.micWarning.testAgain.label = Test igen bbb.micWarning.message = Din mikrofon lader ikke til at virke, de andre deltagere vil sikkert ikke være i stand til at høre dig. bbb.webrtcWarning.message = Har opdaget følgende WebRTC problem: {0}. Vil du som alternativt anvende Flash? @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC Echo testen sluttede pl bbb.webrtcWarning.connection.dropped = WebRTC forbindelsen er afsluttet bbb.webrtcWarning.connection.reconnecting = Forsøger at etablere forbindelse bbb.webrtcWarning.connection.reestablished = WebRTC forbindelsen er etableret igen -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = Ingen aktivitet er detekteret +bbb.inactivityWarning.message = Mødet ser ikke ud til at være aktivet. Lukker automatisk ned... +bbb.shuttingDown.message = Dette møde vil blive lukket pÃ¥ grund af manglende aktivitet +bbb.inactivityWarning.cancel = Fortryd bbb.mainToolbar.helpBtn = Hjælp bbb.mainToolbar.logoutBtn = Log ud bbb.mainToolbar.logoutBtn.toolTip = Log ud -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | Nulstil logud timer bbb.mainToolbar.langSelector = Vælg sprog bbb.mainToolbar.settingsBtn = Indstillinger bbb.mainToolbar.settingsBtn.toolTip = Ã…bn indstillinger @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Start optagelse bbb.mainToolbar.recordBtn.toolTip.stop = Stop optagelse bbb.mainToolbar.recordBtn.toolTip.recording = Denne session er blevet optaget bbb.mainToolbar.recordBtn.toolTip.notRecording = Denne session er ikke blevet optaget -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Kun moderatorer kan start og stoppe optagelser +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = Denne optagelse mÃ¥ ikke afbrydes +bbb.mainToolbar.recordBtn.toolTip.wontRecord = Denne session kan ikke optages bbb.mainToolbar.recordBtn.confirm.title = Bekræft optagelse bbb.mainToolbar.recordBtn.confirm.message.start = Er du sikker pÃ¥, at du ønsker at optage? bbb.mainToolbar.recordBtn.confirm.message.stop = Er du sikker pÃ¥, at du ønsker at stoppe optagelse? -bbb.mainToolbar.recordBtn..notification.title = Optage notifikation. -bbb.mainToolbar.recordBtn..notification.message1 = Du kan optage denne session. -bbb.mainToolbar.recordBtn..notification.message2 = Du skal klikke pÃ¥ Start/Stop optage knappen for at begynde samt slutte optagelsen. +bbb.mainToolbar.recordBtn.notification.title = Optage notifikation. +bbb.mainToolbar.recordBtn.notification.message1 = Du kan optage denne session. +bbb.mainToolbar.recordBtn.notification.message2 = Du skal klikke pÃ¥ Start/Stop optage knappen for at begynde samt slutte optagelsen. bbb.mainToolbar.recordingLabel.recording = (Optager) bbb.mainToolbar.recordingLabel.notRecording = Optager ikke -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = Du er gæst, afvent at moderator godkender. +bbb.waitWindow.waitMessage.title = Venter +bbb.guests.title = Gælster +bbb.guests.message.singular = {0} bruger vil gerne deltage i dette møde +bbb.guests.message.plural = {0} bruger vil gerne deltage i dette møde +bbb.guests.allowBtn.toolTip = Tillad +bbb.guests.allowEveryoneBtn.text = Tillad alle +bbb.guests.denyBtn.toolTip = Afvis +bbb.guests.denyEveryoneBtn.text = Afvis alle +bbb.guests.rememberAction.text = Husk valg +bbb.guests.alwaysAccept = Accepter altid +bbb.guests.alwaysDeny = Afvis altid +bbb.guests.askModerator = Spørg moderator +bbb.guests.Management = Gæstestyring bbb.clientstatus.title = Konfigurations meddelelser bbb.clientstatus.notification = Ikke læst notifikationer bbb.clientstatus.close = Luk @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Din browser ({0}) er ikke op til date. Vi anb bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Din Flash Player plugin ({0}) er forældet. Vi anbefaler at opdatere til den seneste version. bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = Din WebRTC lydforbindelse er fantastisk +bbb.clientstatus.webrtc.almostStrongStatus = Din WebRTC lydforbindelse er ok +bbb.clientstatus.webrtc.almostWeakStatus = Din WebRTC forbindelse er dÃ¥rlig +bbb.clientstatus.webrtc.weakStatus = MÃ¥ske er der problemer med din WebRTC lydforbindelse bbb.clientstatus.webrtc.message = Vi anbefaler anvendelse af Firefox eller Chrome for bedre lydkvalitet bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.notdetected = Java version er ikke detekteret +bbb.clientstatus.java.notinstalled = Du har ikke installeret Java. Venligst tryk <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> for at installere den seneste Java til at anvende dele skrivebord funktionen. +bbb.clientstatus.java.oldversion = Du har en ældre Java installeret, venligst tryk <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> for at installere den seneste Java for at anvende dele skrivebord funktionen. bbb.window.minimizeBtn.toolTip = Minimér bbb.window.maximizeRestoreBtn.toolTip = Maksimér bbb.window.closeBtn.toolTip = Luk @@ -188,15 +189,15 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Gør vedkommende til foredragsholder bbb.users.usersGrid.statusItemRenderer.presenter = Foredragsholder bbb.users.usersGrid.statusItemRenderer.moderator = Ordfører -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Kun stemme +bbb.users.usersGrid.statusItemRenderer.raiseHand = Ræk hÃ¥nden op bbb.users.usersGrid.statusItemRenderer.applause = Klap -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower +bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumps up +bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thumbs down +bbb.users.usersGrid.statusItemRenderer.speakLouder = Tal højere +bbb.users.usersGrid.statusItemRenderer.speakSofter = Tal lavere +bbb.users.usersGrid.statusItemRenderer.speakFaster = Tal hurtigere +bbb.users.usersGrid.statusItemRenderer.speakSlower = Tal langsomere bbb.users.usersGrid.statusItemRenderer.away = Væk bbb.users.usersGrid.statusItemRenderer.confused = Forvirret bbb.users.usersGrid.statusItemRenderer.neutral = Neutral @@ -214,13 +215,13 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = LÃ¥s {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = LÃ¥s op {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Spark {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Dele webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Luk mikrofon bbb.users.usersGrid.mediaItemRenderer.micOn = Tænd mikrofon -bbb.users.usersGrid.mediaItemRenderer.noAudio = Deltager ikke i lyd konference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.noAudio = Deltager ikke i audiowebinar +bbb.users.usersGrid.mediaItemRenderer.promoteUser = Gør {0} til moderator +bbb.users.usersGrid.mediaItemRenderer.demoteUser = Nedgrader {0} til seer bbb.users.emojiStatus.clear = Clear bbb.users.emojiStatus.raiseHand = Ræk hÃ¥nden op bbb.users.emojiStatus.happy = Glad @@ -231,21 +232,22 @@ bbb.users.emojiStatus.away = Væk bbb.users.emojiStatus.thumbsUp = Thumbs Up bbb.users.emojiStatus.thumbsDown = Thumbs Down bbb.users.emojiStatus.applause = Klap -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.agree = Jeg er enig +bbb.users.emojiStatus.disagree = Jeg er uenig +bbb.users.emojiStatus.none = Ryd +bbb.users.emojiStatus.speakLouder = Vil du venligst tale højere? +bbb.users.emojiStatus.speakSofter = Kan du tale lavere? +bbb.users.emojiStatus.speakFaster = Kan du tale hurtigere? +bbb.users.emojiStatus.speakSlower = Kan du tale langsommere? +bbb.users.emojiStatus.beRightBack = Jeg er tilbage om et øjeblik bbb.presentation.title = Præsentation bbb.presentation.titleWithPres = Præsentation: {0} bbb.presentation.quickLink.label = Præsentationsvinduet bbb.presentation.fitToWidth.toolTip = Tilpas preæsentationen bbb.presentation.fitToPage.toolTip = Tilpas præsentationen til siden bbb.presentation.uploadPresBtn.toolTip = Upload din præsentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = Download præsentationer +bbb.presentation.poll.response = Svar pÃ¥ afstemning bbb.presentation.backBtn.toolTip = Forrige slide. bbb.presentation.btnSlideNum.accessibilityName = Slide {0} af {1} bbb.presentation.btnSlideNum.toolTip = Vælg slide @@ -256,7 +258,7 @@ bbb.presentation.uploaded = uploadet. bbb.presentation.document.supported = Det uploadede dokument er understøttet. Begynder at konvertere... bbb.presentation.document.converted = Office-dokumentet konverteredes vellykket. bbb.presentation.error.document.convert.failed = Prøv at konvertere dokumentet til PDF og upload igen. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.invalid = Konverter først dokumentet til PDF. bbb.presentation.error.io = IO-fejl: Kontakt administratoren. bbb.presentation.error.security = Sikkerhedsfejl: Kontakt administratoren. bbb.presentation.error.convert.notsupported = Fejl: Det uploadede dokument er ikke understøttet. Upload en kompatibel fil. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Upload bbb.fileupload.uploadBtn.toolTip = Upload fil bbb.fileupload.deleteBtn.toolTip = Slet præsentation bbb.fileupload.showBtn = Vis -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Prøv en anden fil bbb.fileupload.showBtn.toolTip = Vis præsentation bbb.fileupload.close.tooltip = Luk -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.accessibilityName = Luk "Fil upload"-vinduet bbb.fileupload.genThumbText = Genererer thumbnails.. bbb.fileupload.progBarLbl = Fremskridt: bbb.fileupload.fileFormatHint = Du kan uploade alle Office eller PDF-dokumenter. Vi anbefaler, at du bruger PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations +bbb.fileupload.letUserDownload = Tillad download af præsentationer +bbb.fileupload.letUserDownload.tooltip = Marker her hvis du gerne vil have at andre kan downloade din præsentation +bbb.filedownload.title = Download præsentationer bbb.filedownload.close.tooltip = Luk -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: +bbb.filedownload.close.accessibilityName = Luk fil download-vinduet +bbb.filedownload.fileLbl = Vælg fil at downloade: bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.filedownload.downloadBtn.toolTip = Download præsentation +bbb.filedownload.thisFileIsDownloadable = Fil kan downloades bbb.chat.title = Chat bbb.chat.quickLink.label = Chatvinduet bbb.chat.cmpColorPicker.toolTip = Tekstfarve i chatvindue bbb.chat.input.accessibilityName = Chat besked editoren bbb.chat.sendBtn.toolTip = Send besked bbb.chat.sendBtn.accessibilityName = Send chat besked -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = Gem chat +bbb.chat.saveBtn.accessibilityName = Del chat i textfil +bbb.chat.saveBtn.label = Gem +bbb.chat.save.complete = Chat er gemt +bbb.chat.save.ioerror = Chat er ikke gemt. Prøv af gemme igen. +bbb.chat.save.filename = Fælleschat +bbb.chat.copyBtn.toolTip = Kopier tekst +bbb.chat.copyBtn.accessibilityName = Kopier chat til udklipsholderen +bbb.chat.copyBtn.label = Kopier +bbb.chat.copy.complete = Chatten er kopieret til udklipsholderen +bbb.chat.clearBtn.toolTip = Slet fælleschat +bbb.chat.clearBtn.accessibilityName = Slet fælleschat historik +bbb.chat.clearBtn.chatMessage = Fælleschat-historikken er blevet slette af en moderator +bbb.chat.clearBtn.alert.title = Advarsel +bbb.chat.clearBtn.alert.text = Du er i færd med at slette fælleschat-historikken og det kan ikke fortrydes. Vil du forsætte? bbb.chat.contextmenu.copyalltext = Kopi al tekst bbb.chat.publicChatUsername = Alle bbb.chat.optionsTabName = Indstillinger @@ -337,7 +340,7 @@ bbb.chat.maximizeRestoreBtn.accessibilityName = Maksimer chatvinduet bbb.chat.closeBtn.accessibilityName = Luk chatvinduet bbb.chat.chatTabs.accessibleNotice = Nye beskeder bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = Fra {0} {1} klokken {2} bbb.chat.chatMessage.tooLong = Denne besked er {0} tegn for lang bbb.publishVideo.changeCameraBtn.labelText = Skift kamera bbb.publishVideo.changeCameraBtn.toolTip = Ã…bn skift webcam vinduet @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = PÃ¥begynd deling bbb.publishVideo.startPublishBtn.toolTip = Start deling bbb.publishVideo.startPublishBtn.errorName = Det er ikke muligt at dele webcam. De skyldes: {0} bbb.webcamPermissions.chrome.title = Chrome Webcam tilladelser -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = Klik pÃ¥ Tillad for at give Chrome adgang til dit webcam. bbb.videodock.title = Video-dok bbb.videodock.quickLink.label = Webcam vindue bbb.video.minimizeBtn.accessibilityName = Minimer webcam vinduet @@ -367,69 +370,70 @@ bbb.video.publish.closeBtn.accessName = Luk webcam indstillingsvinduet bbb.video.publish.closeBtn.label = Fortryd bbb.video.publish.titleBar = Offentliggør webcam vindue bbb.video.streamClose.toolTip = Afslut stream for: {0} +bbb.video.message.browserhttp = Denne server er ikke indstillet til at køre med SSL. Derfor vil {0} deaktivere deling af dit webcam. bbb.screensharePublish.title = Skærmdeling: Præsentators forhÃ¥ndsvisning -bbb.screensharePublish.pause.tooltip = Pause screen share +bbb.screensharePublish.pause.tooltip = Sæt skærmdeling pÃ¥ pause bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.screensharePublish.restart.tooltip = Genoptag skærmdeling +bbb.screensharePublish.restart.label = Genoptag bbb.screensharePublish.maximizeRestoreBtn.toolTip = Du kan ikke maksimere dette vindue. bbb.screensharePublish.closeBtn.toolTip = Stop deling og luk -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = Stop deling og luk skærmdelingsvinduet bbb.screensharePublish.minimizeBtn.toolTip = Minimér bbb.screensharePublish.minimizeBtn.accessibilityName = Minimer skærmdelings offentliggørelses vinduet bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maksimer skærmdelings offentliggørelses vinduet -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.commonHelpText.text = Skridtene herunder hjælper dig igang med skærmdeling. (Kræver Java). +bbb.screensharePublish.helpButton.toolTip = Hjælp +bbb.screensharePublish.helpButton.accessibilityName = Hjælp (Ã…bner tutorial i et et nyt vindue) +bbb.screensharePublish.helpText.PCIE1 = 1. Vælg 'Ã…ben' +bbb.screensharePublish.helpText.PCIE2 = 2. Accepter certifikatet bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = 1. Klik "Ok" for at starte +bbb.screensharePublish.helpText.PCFirefox2 = 2. Accepter certifikatet bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = 1. Find "sceenshare.jnlp" +bbb.screensharePublish.helpText.PCChrome2 = 2. Klik for Ã¥bne +bbb.screensharePublish.helpText.PCChrome3 = 3. Accepter certifikatet +bbb.screensharePublish.helpText.MacSafari1 = 1. Find "sceenshare.jnlp" +bbb.screensharePublish.helpText.MacSafari2 = 2. Vælg "Vis i Finder" +bbb.screensharePublish.helpText.MacSafari3 = 3. Højre-klik og vælg "Ã…ben" +bbb.screensharePublish.helpText.MacSafari4 = 4. Vælg "Ã…ben" (hvis du bliver spurgt om det) +bbb.screensharePublish.helpText.MacFirefox1 = 1. Vælg "Gem fil" (hvis du bliver spurgt om det) +bbb.screensharePublish.helpText.MacFirefox2 = 2. Vælg "Vis i Finder" +bbb.screensharePublish.helpText.MacFirefox3 = 3. Højre-klik og vælg Ã¥ben +bbb.screensharePublish.helpText.MacFirefox4 = 4. Vælg "Ã…ben" (hvis du bliver spurgt om det) +bbb.screensharePublish.helpText.MacChrome1 = 1. Find "screenshare.jnlp" +bbb.screensharePublish.helpText.MacChrome2 = 2. Vælg "Vis i finder" +bbb.screensharePublish.helpText.MacChrome3 = 3. Højre-klik og vælg "Ã…ben" +bbb.screensharePublish.helpText.MacChrome4 = 4. Vælg "Ã…ben" (hvis du bliver spurgt om det) +bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Klik pÃ¥ "OK" for at starte +bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accepter certifikatet bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen +bbb.screensharePublish.helpText.LinuxChrome1 = 1. Find "screenshare.jnlp" +bbb.screensharePublish.helpText.LinuxChrome2 = 2. Klik pÃ¥ Ã¥ben +bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accepter certifikatet +bbb.screensharePublish.shareTypeLabel.text = Del: +bbb.screensharePublish.shareType.fullScreen = Fuldskærm bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel +bbb.screensharePublish.pauseMessage.label = Skærmdeling er i øjeblikke pauset. +bbb.screensharePublish.startFailed.label = Kunne ikke detektere start af skærmdeling +bbb.screensharePublish.restartFailed.label = Kunne ikke detektere genstart af skærmdeling +bbb.screensharePublish.jwsCrashed.label = Skærmdelingsprogrammet stoppede uventet. +bbb.screensharePublish.commonErrorMessage.label = Vælg "Fortryd" og prøv igen. +bbb.screensharePublish.tunnelingErrorMessage.one = Skærmdeling kan ikke køre +bbb.screensharePublish.tunnelingErrorMessage.two = Prøve at genindlæse (klik pÃ¥ genindlæs i browseren). Hvis du efter genindlæs kan se ordene '[ Tunneling ]' i det nederste højre af siden, sÃ¥ prøv igen fra et andet netværk. +bbb.screensharePublish.cancelButton.label = Fortryd bbb.screensharePublish.startButton.label = Start bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.toolTip = Stop skærmdeling +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = Du bruger en aktuel version af Chrome men har ikke skærmdelingsudvidelsen installeret. +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = NÃ¥r du har installeret skærmdelingsudvidelsen, sÃ¥ klik pÃ¥ "Prøv igen" herunder. +bbb.screensharePublish.WebRTCExtensionFailFallback.label = Kunne ikke finde skærmdelingsudvidelsen. Klik her for at installere igen eller vælg "Brug Java skærmdeling" +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Det ser ud at bruger "Inkognito" eller privat surfing. Tjek at dine udvidelsesindstillinger tillader dig at køre udvidelsen i Inkognito eller privat tilstand. +bbb.screensharePublish.WebRTCExtensionInstallButton.label = Klik her for at installere +bbb.screensharePublish.WebRTCUseJavaButton.label = Brug Java-skærmdeling +bbb.screensharePublish.WebRTCVideoLoading.label = Video indlæses... Vent venligst +bbb.screensharePublish.sharingMessage= Dette er din skærm som bliver delt bbb.screenshareView.title = Skærmdeling bbb.screenshareView.fitToWindow = Tilpas til vindue bbb.screenshareView.actualSize = Vis faktisk størrelse @@ -438,17 +442,18 @@ bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maksimer skærmdeling bbb.screenshareView.closeBtn.accessibilityName = Luk skærmdelingsvinduet bbb.toolbar.phone.toolTip.start = SlÃ¥ lyd til (mikrofon eller kun lyt) bbb.toolbar.phone.toolTip.stop = SlÃ¥ lyd fra -bbb.toolbar.phone.toolTip.mute = Stop med at lytte til sessionen. +bbb.toolbar.phone.toolTip.mute = Stop med at lytte til webniaret. bbb.toolbar.phone.toolTip.unmute = Begynd med at lytte til sessionen bbb.toolbar.phone.toolTip.nomic = Ingen mikrofon opdaget bbb.toolbar.deskshare.toolTip.start = Ã…ben offentliggørelse af Del Skærm bbb.toolbar.deskshare.toolTip.stop = Stop deling af din skærm -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = Ã…ben delte noter bbb.toolbar.video.toolTip.start = Del dit webcam bbb.toolbar.video.toolTip.stop = Stop deling af dit webcam +bbb.layout.addButton.label = Tilføj bbb.layout.addButton.toolTip = Tilføj det skræddersyede layout til listen -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? +bbb.layout.overwriteLayoutName.title = Overskriv layout +bbb.layout.overwriteLayoutName.text = Navnet er allerede i brug. Vil du gerne overskrive? bbb.layout.broadcastButton.toolTip = Anvend nuværende layout til alle seere bbb.layout.combo.toolTip = Ændre din layout bbb.layout.loadButton.toolTip = Upload layouts fra en fil @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Anvend en layout bbb.layout.combo.custom = *Skræddersyet layout bbb.layout.combo.customName = Skræddersyet layout bbb.layout.combo.remote = Fjern -bbb.layout.window.name = Layout name +bbb.layout.window.name = Layoutnavn +bbb.layout.window.close.tooltip = Luk +bbb.layout.window.close.accessibilityName = Luk og tilføj nyt layout vindue bbb.layout.save.complete = Layouts er gemt +bbb.layout.save.ioerror = Layouts kunne ikke gemmes. Prøv at gemme igen. bbb.layout.load.complete = Layouts er uploaded bbb.layout.load.failed = Ikke muligt at indlæse layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = Dit layout er blevet sendt til alle deltagere bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = Undertekster bbb.layout.name.videochat = Video Chat bbb.layout.name.webcamsfocus = Webcam møde bbb.layout.name.presentfocus = Præsentationsmøde -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Præsentation + brugere bbb.layout.name.lectureassistant = Undervisningsassistent bbb.layout.name.lecture = Undervisning -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = Delte noter +bbb.layout.addCurrentToFileWindow.title = Tilføj nuværende layout til fil +bbb.layout.addCurrentToFileWindow.text = Vil du gemme nuværende layout i en fil? +bbb.layout.denyAddToFile.toolTip = Afvis tilføjelse til det nuværende layout +bbb.layout.confirmAddToFile.toolTip = Bekræft tilføjelse til det nuværende layout bbb.highlighter.toolbar.pencil = Highlighter bbb.highlighter.toolbar.pencil.accessibilityName = Skift whiteboard cursoren til en pen bbb.highlighter.toolbar.ellipse = Cirkel @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Vælg farve bbb.highlighter.toolbar.color.accessibilityName = Whiteboard tegnefarve bbb.highlighter.toolbar.thickness = Skift tykkelse bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard tegne tykkelse -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Du har forladt sessionen +bbb.highlighter.toolbar.multiuser = Multi-bruger tegning bbb.logout.button.label = OK bbb.logout.appshutdown = Serverens program er lukket ned bbb.logout.asyncerror = En asynkron fejl opstod @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Forbindelsen med serveren er afsluttet bbb.logout.rejected = Forbindelsen til serveren blev afvist bbb.logout.invalidapp = Programmet red5 findes ikke bbb.logout.unknown = Din klient mistede forbindelsen til serveren -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = Du er logget ud af konferencen -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Du er blevet udelukket af den ansvarlige i whiteboardet +bbb.logout.guestkickedout = Moderatoren tillod dig ikke at deltage i dette møde +bbb.logout.usercommand = Du er logget ud af webniaret +bbb.logour.breakoutRoomClose = Dit browservindue vil blive lukket +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = I tilfælde af at forbindelsen pludselig forsvandt, klik pÃ¥ knappen for at forbinde igen. bbb.logout.refresh.label = Forbind igen. -bbb.settings.title = Settings +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = Indstillinger bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.settings.cancel = Fortryd +bbb.settings.btn.toolTip = Ã…ben konfigurationsvinduet bbb.logout.confirm.title = Bekræft log ud bbb.logout.confirm.message = Er du helt sikker pÃ¥, du vil forlade sessionen? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = Ja og slut mødet bbb.logout.confirm.yes = Ja bbb.logout.confirm.no = Nej -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = Advarsel +bbb.endSession.confirm.message = Hvis du lukker sessionen, vil alle deltagere blive afbrudt. Vil du forsætte? bbb.connection.failure=Har opdaget tilslutningsproblemer bbb.connection.reconnecting=Forbinder igen bbb.connection.reestablished=Forbindelsen er etableret igen. @@ -530,40 +539,41 @@ bbb.notes.title = Noter bbb.notes.cmpColorPicker.toolTip = Tekst farver bbb.notes.saveBtn = Gem bbb.notes.saveBtn.toolTip = Gem noter -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name +bbb.sharedNotes.title = Delte noter +bbb.sharedNotes.quickLink.label = Delte noter vindue +bbb.sharedNotes.createNoteWindow.label = Notenavn bbb.sharedNotes.createNoteWindow.close.tooltip = Luk -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Luk "Opret ny note"-vinduet +bbb.sharedNotes.typing.single = {0} skriver... +bbb.sharedNotes.typing.double = {0} og {1} skriver... +bbb.sharedNotes.typing.multiple = Flere deltagere skriver... +bbb.sharedNotes.save.toolTip = Gem noter i en fil +bbb.sharedNotes.save.complete = Noterne er gemt +bbb.sharedNotes.save.ioerror = Noter kunne ikke gemmes. Prøv at gemme igen. +bbb.sharedNotes.save.htmlLabel = Formateret text (.html) +bbb.sharedNotes.save.txtLabel = Almindelig text (.txt) +bbb.sharedNotes.new.label = Opret +bbb.sharedNotes.new.toolTip = Tilføj en note mere +bbb.sharedNotes.limit.label = Grænse for noter er nÃ¥et +bbb.sharedNotes.clear.label = Ryd denne note +bbb.sharedNotes.undo.toolTip = Fortryd ændring +bbb.sharedNotes.redo.toolTip = Gentag modifikation +bbb.sharedNotes.toolbar.toolTip = Textformatværktøjslinje +bbb.sharedNotes.settings.toolTip = Indstillinger for delte noter +bbb.sharedNotes.clearWarning.title = Rydder op i delte noter +bbb.sharedNotes.clearWarning.message = Denne handling vil rydde noterne i dette vindue for alle og kan ikke fortrydes. Er du sikker pÃ¥ at du vil slette disse noter? +bbb.sharedNotes.additionalNotes.closeWarning.title = Luk delte noter +bbb.sharedNotes.additionalNotes.closeWarning.message = Denne handling vil fjerne noterne i dette vindue for alle og kan ikke fortrydes. Er du sikker pÃ¥ at du vil lukke disse noter? +bbb.sharedNotes.messageLengthWarning.title = Karakterskit grænse er overskredet +bbb.sharedNotes.messageLengthWarning.text = Din ændring overskrider grænser med {0}. Prøv at lave en mindre ændring. +bbb.sharedNotes.remaining.tooltip = Ledig plads tilgængelig i delte noter +bbb.sharedNotes.full.tooltip = Kapaciteten er overskredet (prøv at slette noget text) bbb.settings.deskshare.instructions = Klik Tillad ved prompten, der vises for at tjekke at skrivebordsdeling virker for dig. bbb.settings.deskshare.start = Check skrivebordsdeling bbb.settings.voice.volume = Mikrofonaktivitet -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = Java versionsfejl +bbb.settings.java.text = Du har Java {0} installeret, men du skal mindst have version {1} for at bruge BigBlueButton's skrivebordsdeling. Klik pÃ¥ knappen forneden for at installere den nyeste version af Java JRE. +bbb.settings.java.command = Installer nyeste Java bbb.settings.flash.label = Fejl i Flash-version bbb.settings.flash.text = Du har Flash {0} installeret, men du skal mindst benytte version {1} for at bruge BigBlueButton ordentligt. Klik pÃ¥ knappen forneden for at installere den nyeste version af Flash. bbb.settings.flash.command = Installer nyeste version af Flash @@ -574,15 +584,15 @@ bbb.settings.warning.label = Advarsel bbb.settings.warning.close = Luk denne advarsel bbb.settings.noissues = Ingen alvorlige fejl blev fundet. bbb.settings.instructions = Accepter Flash-prompten der spørger om kameratilladelser. Hvis du kan se og høre dig selv, er din browser opsat korrekt. Andre potentielle problemer er vist forneden. Klik pÃ¥ hver enkelt for at finde en løsning. -bbb.bwmonitor.title = Network monitor +bbb.bwmonitor.title = Netværksmonitor bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up +bbb.bwmonitor.upload.short = Op bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down +bbb.bwmonitor.download.short = Ned bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.current = Nuværende +bbb.bwmonitor.available = Tilgængelig +bbb.bwmonitor.latency = Forsinkelse ltbcustom.bbb.highlighter.toolbar.triangle = Trekant ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Skift whiteboard cursoren til en trekant ltbcustom.bbb.highlighter.toolbar.line = Linje @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Skift whiteboard cursoren til tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Tekst farver ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Skriftstørrelse -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = Undertekster +bbb.caption.quickLink.label = Undertekstvindue +bbb.caption.window.titleBar = Undertekstvindue titellinje +bbb.caption.window.minimizeBtn.accessibilityName = Minimer undertekstvinduet +bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maksimer undertekstvinduet +bbb.caption.transcript.noowner = Ingen +bbb.caption.transcript.youowner = Dig +bbb.caption.transcript.pastewarning.title = Undertekst kopieringsadvarsel +bbb.caption.transcript.pastewarning.text = Kan ikke indsætte tekst længere end {0} tegn. Du indsatte {1} tegn. +bbb.caption.transcript.inputArea.toolTip = Undertekstindtastningsfelt +bbb.caption.transcript.outputArea.toolTip = UndertekstvisningsomrÃ¥de +bbb.caption.option.label = Indstillinger +bbb.caption.option.language = Sprog: +bbb.caption.option.language.tooltip = Vælg undertekstsprog +bbb.caption.option.language.accessibilityName = Vælg undertekstsprog. Brug piletasterne til at skifte. +bbb.caption.option.takeowner = Tag ejerskab +bbb.caption.option.takeowner.tooltip = Tag ejerskab over det valgte sprog +bbb.caption.option.fontfamily = Skrifttypefamilie: +bbb.caption.option.fontfamily.tooltip = Skrifttypefamilie +bbb.caption.option.fontsize = Skriftstørrelse: +bbb.caption.option.fontsize.tooltip = Skriftstørrelse +bbb.caption.option.backcolor = Baggrundsfarve: +bbb.caption.option.backcolor.tooltip = Baggrundsfarve +bbb.caption.option.textcolor = Tekstfarve: +bbb.caption.option.textcolor.tooltip = Tekstfarve bbb.accessibility.clientReady = Klar @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Du har navigeret til den sidste bbb.accessibility.chat.chatBox.navigatedLatestRead = Du har navigeret til den seneste modtaget besked, du har læst. bbb.accessibility.chat.chatwindow.input = Chat input bbb.accessibility.chat.chatwindow.audibleChatNotification = Chat notifikation -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = Fælleschatindstillinger bbb.accessibility.chat.initialDescription = Venligst anvend tasteturpilene for at navigere i chatbeskederne bbb.accessibility.notes.notesview.input = Input til noter bbb.shortcuthelp.title = Genvejstaster -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = Genvejstast indstillingsvinduebar bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimer genvejsvinduet for hjælp bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maksimer genvejsvinduet for hjælp bbb.shortcuthelp.closeBtn.accessibilityName = Luk genvejsvinduet for hjælp -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = Genvejskategori bbb.shortcuthelp.dropdown.general = Globale genveje bbb.shortcuthelp.dropdown.presentation = Præsentations genveje bbb.shortcuthelp.dropdown.chat = Chat genveje bbb.shortcuthelp.dropdown.users = Brugere genveje -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = Undertekstgenveje +bbb.shortcuthelp.browserWarning.text = Den fulde liste af genvejstaster er kun understøttet i Internet Explorer bbb.shortcuthelp.headers.shortcut = Genveje bbb.shortcuthelp.headers.function = Funktion @@ -672,7 +682,7 @@ bbb.shortcutkey.focus.presentation.function = Ret fokus pÃ¥ præsentationsvindue bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Ret fokus pÃ¥ chatboksen bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption.function = Ret fokus pÃ¥ undertekstvinduet bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Ã…bn deleskrivebord vinduet @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Tilpas slides til vinduet bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Gør deltageren til foredragsholder bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Smid deltageren ud af sessionen +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Mute eller unmute pÃ¥gældende deltager bbb.shortcutkey.users.muteall = 65v @@ -710,13 +720,13 @@ bbb.shortcutkey.users.muteall.function = Mute eller unmute alle brugere bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Mute alle deltager - undtagen foredragsholderen bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window +bbb.shortcutkey.users.breakoutRooms.function = Grupperumsvindue bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list +bbb.shortcutkey.users.focusBreakoutRooms.function = Fokuser pÃ¥ listen over grupperum bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room +bbb.shortcutkey.users.listenToBreakoutRoom.function = Lyt til det valgte grupperum bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.joinBreakoutRoom.function = Deltag i det valgte grupperum bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Fokus pÃ¥ chat tabs @@ -747,14 +757,15 @@ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Midlertidig debug hotkey bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership.function = Tag ejerskab over det valgte sprog bbb.polling.startButton.tooltip = Start en undersøgelse bbb.polling.startButton.label = Start undersøgelse bbb.polling.publishButton.label = Offentliggør bbb.polling.closeButton.label = Luk -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = Brugeropsat afstemning... bbb.polling.pollModal.title = Live undersøgelse resultater +bbb.polling.pollModal.hint = Efterlad dette vindue Ã¥bent for at give eleverne mulighed for at svare pÃ¥ afstemningen. Afstemningen lukkes ved trykke pÃ¥ Luk eller Offentliggør. bbb.polling.customChoices.title = Indtast svarmuligheder bbb.polling.respondersLabel.novotes = Venter pÃ¥ svar bbb.polling.respondersLabel.text = {0} brugere har svaret @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Luk alle videoer bbb.users.settings.lockAll = LÃ¥s alle brugere bbb.users.settings.lockAllExcept = LÃ¥s alle brugere - undtagen foredragsholderen bbb.users.settings.lockSettings = LÃ¥s deltagere... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = Grupperum.. +bbb.users.settings.sendBreakoutRoomsInvitations = Send invitation til grupperum bbb.users.settings.unlockAll = Ã…ben alle deltagere bbb.users.settings.roomIsLocked = LÃ¥s som default bbb.users.settings.roomIsMuted = Muted som default @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Anvend lÃ¥seindstillinger bbb.lockSettings.cancel = Fortryd bbb.lockSettings.cancel.toolTip = Lukke dette vindue uden at gemme +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = LÃ¥s ordfører bbb.lockSettings.privateChat = Chat privat -bbb.lockSettings.publicChat = Ã…ben chat +bbb.lockSettings.publicChat = Fælleschat bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Layout bbb.lockSettings.title=LÃ¥s deltagere @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Funktioner bbb.lockSettings.locked=LÃ¥st bbb.lockSettings.lockOnJoin=LÃ¥s pÃ¥ deltagelse -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms +bbb.users.breakout.breakoutRooms = Grupperum +bbb.users.breakout.updateBreakoutRooms = Opdater grupperum +bbb.users.breakout.timerForRoom.toolTip = Tid tilbage i dette grupperum +bbb.users.breakout.timer.toolTip = Tid tilbage i grupperum bbb.users.breakout.calculatingRemainingTime = Beregner resttid... -bbb.users.breakout.closing = Closing +bbb.users.breakout.closing = Lukker +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Rum -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create +bbb.users.breakout.roomsCombo.accessibilityName = Antal rum, der skal oprettes bbb.users.breakout.room = Rum -bbb.users.breakout.randomAssign = Tilfældigt tildelte brugere bbb.users.breakout.timeLimit = Tidsgrænse -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes +bbb.users.breakout.durationStepper.accessibilityName = Tidsgrænse i minutter bbb.users.breakout.minutes = Minutter -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms +bbb.users.breakout.record = Optag +bbb.users.breakout.recordCheckbox.accessibilityName = Optage grupperum bbb.users.breakout.notAssigned = Ikke tildelt bbb.users.breakout.dragAndDropToolTip = Tip: Du kan trække og slippe brugere mellem rum bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite +bbb.users.breakout.invite = Invitation bbb.users.breakout.close = Luk -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session +bbb.users.breakout.closeAllRooms = Luk alle grupperum +bbb.users.breakout.insufficientUsers = Der ikke nok brugere. Der skal være mindst en bruger i hvert grupperum. +bbb.users.breakout.confirm = Deltag i et grupperum +bbb.users.breakout.invited = Du har modtaget en invitation om at deltage i <b>Grupperum</b> +bbb.users.breakout.accept = NÃ¥r du acceptere, vil du automatisk afbryde lyd og videowebinar +bbb.users.breakout.joinSession = Deltag i session +bbb.users.breakout.joinSession.accessibilityName = Tilsiut grupperumssession bbb.users.breakout.joinSession.close.tooltip = Luk -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.joinSession.close.accessibilityName = Luk "Tilslut grupperumvindue" +bbb.users.breakout.youareinroom = Du er i grupperum {0} bbb.users.roomsGrid.room = Rum bbb.users.roomsGrid.users = Bruger bbb.users.roomsGrid.action = Handling bbb.users.roomsGrid.transfer = Overfør lyd -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.roomsGrid.join = Deltag +bbb.users.roomsGrid.noUsers = Ingen brugere i dette rum -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=Default sprog + +bbb.alert.cancel = Fortryd +bbb.alert.ok = OK +bbb.alert.no = Nej +bbb.alert.yes = Ja diff --git a/bigbluebutton-client/locale/de/bbbResources.properties b/bigbluebutton-client/locale/de/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/de/bbbResources.properties +++ b/bigbluebutton-client/locale/de/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/de_DE/bbbResources.properties b/bigbluebutton-client/locale/de_DE/bbbResources.properties index daaa359635abe073eec0b28f745b3c2abf994595..167387278f0d38972b74d613891cc0a757a821cd 100644 --- a/bigbluebutton-client/locale/de_DE/bbbResources.properties +++ b/bigbluebutton-client/locale/de_DE/bbbResources.properties @@ -14,7 +14,7 @@ bbb.mainshell.quote.sentence.1 = Es gibt kein Geheimnis für Erfolg. Erfolg ist bbb.mainshell.quote.attribution.1 = Colin Powell bbb.mainshell.quote.sentence.2 = Sag mir etwas und ich vergesse es wieder, bringe mir etwas bei und ich erinnere mich daran, beziehe mich ein und ich lerne wirklich etwas bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = Ich habe der Wert harter Arbeit durch eigene harte Arbeit zu schätzen gelernt +bbb.mainshell.quote.sentence.3 = Ich habe den Wert harter Arbeit durch eigene harte Arbeit zu schätzen gelernt bbb.mainshell.quote.attribution.3 = Margaret Mead bbb.mainshell.quote.sentence.4 = Entwickeln Sie eine Leidenschaft fürs Lernen, dann werden Sie nie aufhören zu wachsen. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Verbinde bbb.micSettings.webrtc.transferring = Ãœbertrage bbb.micSettings.webrtc.endingecho = Audiostream wird verbunden bbb.micSettings.webrtc.endedecho = Echotest beendet. +bbb.micPermissions.message.browserhttp = Dieser Server ist nicht für SSL-Verschlüsselung konfiguriert. Deshalb hat {0} die Freigabe Ihres Mikrofons verhindert. bbb.micPermissions.firefox.title = Firefox Mikrofon-Berechtigungen -bbb.micPermissions.firefox.message = Während Sie "Erlauben" um Firefox Zugriff auf Ihr Mikrofon zu geben +bbb.micPermissions.firefox.message = Wählen Sie das richtige Mikrofon aus der Liste und klicken Sie dann auf "Erlauben", um Firefox Zugriff auf Ihr Mikrofon zu geben bbb.micPermissions.chrome.title = Chrome Mikrofon-Berechtigungen -bbb.micPermissions.chrome.message = Während Sie "Erlauben" um Chrome Zugriff auf Ihr Mikrofon zu geben +bbb.micPermissions.chrome.message = Wählen Sie "Zulassen", um Chrome Zugriff auf Ihr Mikrofon zu geben bbb.micWarning.title = Audiowarnung bbb.micWarning.joinBtn.label = Trotzdem teilnehmen bbb.micWarning.testAgain.label = Noch einmal testen @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Diese Sitzung kann nicht aufgezei bbb.mainToolbar.recordBtn.confirm.title = Aufzeichnung bestätigen bbb.mainToolbar.recordBtn.confirm.message.start = Sind Sie sicher, dass Sie die Aufzeichnung der Sitzung starten wollen? bbb.mainToolbar.recordBtn.confirm.message.stop = Sind Sie sicher, dass Sie die Aufzeichnung der Sitzung beenden wollen? -bbb.mainToolbar.recordBtn..notification.title = Aufnahme-Benachrichtigung -bbb.mainToolbar.recordBtn..notification.message1 = Sie können diese Konferenz aufnehmen. -bbb.mainToolbar.recordBtn..notification.message2 = Klicken Sie den Aufnahme Start-/Stop-Button in der Titelleiste, um die Aufnahme zu beginnen oder zu beenden. +bbb.mainToolbar.recordBtn.notification.title = Aufnahme-Benachrichtigung +bbb.mainToolbar.recordBtn.notification.message1 = Sie können diese Konferenz aufnehmen. +bbb.mainToolbar.recordBtn.notification.message2 = Klicken Sie den Aufnahme Start-/Stop-Button in der Titelleiste, um die Aufnahme zu beginnen oder zu beenden. bbb.mainToolbar.recordingLabel.recording = (Aufnahme läuft) bbb.mainToolbar.recordingLabel.notRecording = Keine Aufnahme bbb.waitWindow.waitMessage.message = Sie sind Gast, bitte warten Sie bis der Moderator zustimmt @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Mikrofon von {0} freigeben bbb.users.usersGrid.mediaItemRenderer.pushToMute = {0} stummschalten bbb.users.usersGrid.mediaItemRenderer.pushToLock = {0} sperren bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = {0} freigeben -bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} aus Konferenz entfernen +bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} entfernen bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam ist freigegeben bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon ausgeschaltet bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon aktiv @@ -246,6 +247,7 @@ bbb.presentation.fitToWidth.toolTip = Präsentation an Breite anpassen bbb.presentation.fitToPage.toolTip = Präsentation an Seite anpassen bbb.presentation.uploadPresBtn.toolTip = Präsentation hochladen bbb.presentation.downloadPresBtn.toolTip = Präsentationen herunterladen +bbb.presentation.poll.response = Auf Umfrage antworten bbb.presentation.backBtn.toolTip = Vorherige Folie bbb.presentation.btnSlideNum.accessibilityName = Folie {0} von {1} bbb.presentation.btnSlideNum.toolTip = Folie auswählen @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = Chatverlauf speichern bbb.chat.saveBtn.accessibilityName = Chatverlauf in Textdatei speichern bbb.chat.saveBtn.label = Speichern bbb.chat.save.complete = Chatverlauf erfolgreich gespeichert +bbb.chat.save.ioerror = Chat konnte nicht gespeichert werden. Versuchen Sie es nochmal. bbb.chat.save.filename = Öffentlicher Chat bbb.chat.copyBtn.toolTip = Chat kopieren bbb.chat.copyBtn.accessibilityName = Chatverlauf in die Zwischenablage kopieren @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Freigeben bbb.publishVideo.startPublishBtn.toolTip = Webcam freigeben bbb.publishVideo.startPublishBtn.errorName = Webcam kann nicht freigegeben werden. Grund: {0} bbb.webcamPermissions.chrome.title = Chrome Webcam-Berechtigungen -bbb.webcamPermissions.chrome.message = Während Sie "Erlauben" um Firefox Zugriff auf Ihre Webcam zu geben +bbb.webcamPermissions.chrome.message = Wählen Sie "Zulassen", um Chrome Zugriff auf Ihre Webcam zu geben bbb.videodock.title = Webcam Sammelfenster bbb.videodock.quickLink.label = Webcamfenster bbb.video.minimizeBtn.accessibilityName = Webcamfenster minimieren @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Webcam Einstellungen schließen bbb.video.publish.closeBtn.label = Abbrechen bbb.video.publish.titleBar = Webcam freigeben bbb.video.streamClose.toolTip = Beende den Stream für: {0} +bbb.video.message.browserhttp = Dieser Server ist nicht für SSL konfiguriert. Deshalb hat {0} das Teilen Ihrer Webcam deaktiviert. bbb.screensharePublish.title = Bildschirmfreigabe: Präsentationsvorschau bbb.screensharePublish.pause.tooltip = Bildschirmfreigabe unterbrechen bbb.screensharePublish.pause.label = Unterbrechen @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = Bildschirmfreigabe beenden bbb.toolbar.sharednotes.toolTip = Geteilte Notizen öffnen bbb.toolbar.video.toolTip.start = Webcam freigeben bbb.toolbar.video.toolTip.stop = Webcam nicht mehr freigeben +bbb.layout.addButton.label = Hinzufügen bbb.layout.addButton.toolTip = Benutzerdefiniertes Layout zur Liste hinzufügen bbb.layout.overwriteLayoutName.title = Layout überschreiben bbb.layout.overwriteLayoutName.text = Name wird bereits verwendet. Möchten Sie überschreiben? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * Benutzerspezifisches Layout bbb.layout.combo.customName = Benutzerspezifisches Layout bbb.layout.combo.remote = Fern bbb.layout.window.name = Layoutname +bbb.layout.window.close.tooltip = Schließen +bbb.layout.window.close.accessibilityName = Fenster zum Hinzufügen neuer Layouts schließen bbb.layout.save.complete = Layouts wurden gespeichert +bbb.layout.save.ioerror = Layouts konnten nicht gespeichert werden. Versuchen Sie es nochmal. bbb.layout.load.complete = Layouts wurden geladen bbb.layout.load.failed = Die Layouts können nicht geladen werden bbb.layout.sync = Ihr Layout wurde an alle Teilnehmer übertragen @@ -493,21 +501,22 @@ bbb.highlighter.toolbar.color.accessibilityName = Whiteboard Stiftfarbe bbb.highlighter.toolbar.thickness = Dicke ändern bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard Strichstärke bbb.highlighter.toolbar.multiuser = Mehrbenutzer-Zeichnung -bbb.logout.title = Abgemeldet bbb.logout.button.label = OK bbb.logout.appshutdown = Die Server Applikation wurde herunter gefahren bbb.logout.asyncerror = Ein Async Fehler ist aufgetreten bbb.logout.connectionclosed = Die Verbindung zum Server wurde beendet -bbb.logout.connectionfailed = Die Verbindung zum Server wurde geschlossen +bbb.logout.connectionfailed = Die Verbindung zum Server wurde beendet bbb.logout.rejected = Die Verbindung zum Server wurde abgelehnt bbb.logout.invalidapp = Die red5 Applikation existiert nicht bbb.logout.unknown = Die Verbindung zwischen Ihrem Client und dem Server wurde abgebrochen bbb.logout.guestkickedout = Der Moderator hat die Teilnahme an der Konferenz für Sie gesperrt bbb.logout.usercommand = Sie haben sich aus der Konferenz ausgeloggt bbb.logour.breakoutRoomClose = Ihr Browserfenster wird geschlossen -bbb.logout.ejectedFromMeeting = Ein Moderator hat Sie aus der Konferenz entfernt. +bbb.logout.ejectedFromMeeting = Sie wurden aus der Konferenz entfernt. bbb.logout.refresh.message = Falls Sie sich gar nicht ausloggen wollten, klicken Sie unten auf Erneut verbinden bbb.logout.refresh.label = Erneut verbinden +bbb.logout.feedback.hint = Wie können wir BigBlueButton verbessern? +bbb.logout.feedback.label = Wir würden gerne erfahren, wie Sie BigBlueButton finden (optional) bbb.settings.title = Einstellungen bbb.settings.ok = OK bbb.settings.cancel = Abbrechen @@ -518,7 +527,7 @@ bbb.logout.confirm.endMeeting = Ja und Konferenz beenden bbb.logout.confirm.yes = Ja bbb.logout.confirm.no = Nein bbb.endSession.confirm.title = Warnung -bbb.endSession.confirm.message = Wenn Sie die Sitzung beenden, wird die Verbindung zu allen Teilnehmern beendet. Wollen Sie fortfahren? +bbb.endSession.confirm.message = Durchs Beenden der Sitzung, werden alle verbleibenden Teilnehmer aus dem Konferenzraum geworfen. Wollen Sie fortfahren? bbb.connection.failure=Es wurden Verbindungsprobleme festgestellt bbb.connection.reconnecting=Verbinde erneut bbb.connection.reestablished=Verbindung hergestellt @@ -540,6 +549,7 @@ bbb.sharedNotes.typing.double = {0} und {1} tippen beide... bbb.sharedNotes.typing.multiple = Mehrere Personen tippen... bbb.sharedNotes.save.toolTip = Notizen in Datei speichern bbb.sharedNotes.save.complete = Notizen wurden erfolgreich gespeichert +bbb.sharedNotes.save.ioerror = Notizen konnten nicht gespeichert werden. Versuchen Sie es nochmal. bbb.sharedNotes.save.htmlLabel = Formatierter Text (.html) bbb.sharedNotes.save.txtLabel = Einfacher Text (.txt) bbb.sharedNotes.new.label = Erstellen @@ -553,7 +563,7 @@ bbb.sharedNotes.settings.toolTip = Einstellungen für geteilte Notizen bbb.sharedNotes.clearWarning.title = Geteilte Notizen werden gelöscht bbb.sharedNotes.clearWarning.message = Hiermit löschen Sie den Inhalt des Notizfensters für alle Teilnehmer und es gibt keinen Weg, diesen Schritt rückgängig zu machen. Sind Sie sicher, dass Sie die Notizen löschen wollen? bbb.sharedNotes.additionalNotes.closeWarning.title = Geteilte Notizen schließen -bbb.sharedNotes.additionalNotes.closeWarning.message = Hiermit werden die Notizen in diesem Fenster gelöscht und es gibt keine Möglichkeit dies rückgängig zu machen. Sind sie sicher, dass sie diese Notizen löschen wollen? +bbb.sharedNotes.additionalNotes.closeWarning.message = Hiermit werden die Notizen in diesem Fenster gelöscht und es gibt keine Möglichkeit dies rückgängig zu machen. Sind Sie sicher, dass Sie diese Notizen löschen wollen? bbb.sharedNotes.messageLengthWarning.title = Limit zur Zeichenveränderung überschritten bbb.sharedNotes.messageLengthWarning.text = Ihre Veränderung überschreitet das Limit um {0}. Versuchen Sie eine kleinere Veränderung. bbb.sharedNotes.remaining.tooltip = Verbleibender Platz für geteilte Notizen @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = an Seite anpassen bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Ausgewähltem Teilnehmer Präsentationsrechte geben bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Ausgewählten Teilnehmer aus der Konferenz entfernen +bbb.shortcutkey.users.kick.function = Ausgewählte Person aus der Konferenz entfernen bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Das Mikrofon des ausgewählten Teilnehmers stumm schalten oder freigeben bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Veröffentlichen bbb.polling.closeButton.label = Schließen bbb.polling.customPollOption.label = Benutzerdefinierte Umfrage... bbb.polling.pollModal.title = Live Umfrageergebnisse +bbb.polling.pollModal.hint = Lassen Sie dieses Fenster geöffnet, damit die Teilnehmer ihre Antworten abgeben können. Wenn Sie auf Veröffentlichen oder Schließen klicken, wird die Umfrage dadurch beendet. bbb.polling.customChoices.title = Antwortoptionen eingeben bbb.polling.respondersLabel.novotes = Warte auf Rückmeldungen bbb.polling.respondersLabel.text = {0} Nutzer haben geantwortet @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Sperreinstellungen anwenden bbb.lockSettings.cancel = Abbrechen bbb.lockSettings.cancel.toolTip = Fenster schließen ohne zu speichern +bbb.lockSettings.hint = Diese Optionen ermöglichen es, bestimmte Funktionen für Zuschauer einzuschränken, wie z.B. die Nutzung des privaten Chats. (Diese Einschränkungen gelten nicht für Moderatoren) bbb.lockSettings.moderatorLocking = Sperrung durch Moderator bbb.lockSettings.privateChat = Privater Chat bbb.lockSettings.publicChat = Öffentlicher Chat bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = Webcams der anderen Zuschauer ausblenden bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Layout bbb.lockSettings.title=Teilnehmer sperren @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Beim Konferenzbeitritt sperren bbb.users.breakout.breakoutRooms = Breakout-Räume bbb.users.breakout.updateBreakoutRooms = Breakout-Räume aktualisieren +bbb.users.breakout.timerForRoom.toolTip = Verbleibende Zeit für diesen Breakout-Raum bbb.users.breakout.timer.toolTip = Verbleibende Zeit für Breakout-Räume bbb.users.breakout.calculatingRemainingTime = Berechne verbleibende Zeit... bbb.users.breakout.closing = Der Breakout-Raum wird in Kürze geschlossen +bbb.users.breakout.closewarning.text = Breakout-Räume werden in einer Minute geschlossen. bbb.users.breakout.rooms = Räume bbb.users.breakout.roomsCombo.accessibilityName = Anzahl der zu erstellenden Räume bbb.users.breakout.room = Raum -bbb.users.breakout.randomAssign = Nutzer zufällig auf Räume verteilen bbb.users.breakout.timeLimit = Zeitlimit bbb.users.breakout.durationStepper.accessibilityName = Zeitlimit in Minuten bbb.users.breakout.minutes = Minuten @@ -838,10 +852,10 @@ bbb.users.breakout.confirm = Breakout Raum beitreten bbb.users.breakout.invited = Sie wurden eingeladen <b>Breakout Room</b> beizutreten bbb.users.breakout.accept = Wenn sie zustimmen, verlassen Sie automatisch die Audio- und Videokonferenz. bbb.users.breakout.joinSession = Sitzung beitreten -bbb.users.breakout.joinSession.accessibilityName = Breakout Raum beitreten +bbb.users.breakout.joinSession.accessibilityName = Breakout-Raum beitreten bbb.users.breakout.joinSession.close.tooltip = Schließen -bbb.users.breakout.joinSession.close.accessibilityName = Schließen des Fensters zum Beitreten der Breakout Räume -bbb.users.breakout.youareinroom = Sie befinden sich in Breakout Raum {0} +bbb.users.breakout.joinSession.close.accessibilityName = Fensters zum Beitreten der Breakout-Räume schließen +bbb.users.breakout.youareinroom = Sie befinden sich in Breakout-Raum {0} bbb.users.roomsGrid.room = Raum bbb.users.roomsGrid.users = Nutzer bbb.users.roomsGrid.action = Tätigkeit @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Beitreten bbb.users.roomsGrid.noUsers = Keine Nutzer in diesem Raum bbb.langSelector.default=Voreingestellte Sprache -bbb.langSelector.ar=Arabisch -bbb.langSelector.az_AZ=Aserbaidschanisch -bbb.langSelector.eu_EU=Baskisch -bbb.langSelector.bn_BN=Bengalisch -bbb.langSelector.bg_BG=Bulgarisch -bbb.langSelector.ca_ES=Katalanisch -bbb.langSelector.zh_CN=Chinesisch (vereinfacht) -bbb.langSelector.zh_TW=Chinesisch (Traditionell) -bbb.langSelector.hr_HR=Kroatisch -bbb.langSelector.cs_CZ=Tschechisch -bbb.langSelector.da_DK=Dänisch -bbb.langSelector.nl_NL=Holländisch -bbb.langSelector.en_US=Englisch -bbb.langSelector.et_EE=Estnisch -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnisch -bbb.langSelector.fr_FR=Französisch -bbb.langSelector.fr_CA=Französisch (Kanadisch) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=Deutsch -bbb.langSelector.el_GR=Griechisch -bbb.langSelector.he_IL=Hebräisch -bbb.langSelector.hu_HU=Ungarisch -bbb.langSelector.id_ID=Indonesisch -bbb.langSelector.it_IT=Italienisch -bbb.langSelector.ja_JP=Japanisch -bbb.langSelector.ko_KR=Koreanisch -bbb.langSelector.lv_LV=Lettisch -bbb.langSelector.lt_LT=Litauisch -bbb.langSelector.mn_MN=Mongolisch -bbb.langSelector.ne_NE=Nepalesisch -bbb.langSelector.no_NO=Norwegisch -bbb.langSelector.pl_PL=Polisch -bbb.langSelector.pt_BR=Portugisisch (Brasilianisch) -bbb.langSelector.pt_PT=Portugisisch -bbb.langSelector.ro_RO=Rumänisch -bbb.langSelector.ru_RU=Russisch -bbb.langSelector.sr_SR=Serbisch (kyrillisch) -bbb.langSelector.sr_RS=Serbisch (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slowakisch -bbb.langSelector.sl_SL=Slowenisch -bbb.langSelector.es_ES=Spanisch -bbb.langSelector.es_LA=Spanisch (Lateinamerikanisch) -bbb.langSelector.sv_SE=Schwedisch -bbb.langSelector.th_TH=Thailändisch -bbb.langSelector.tr_TR=Türkisch -bbb.langSelector.uk_UA=Ukrainisch -bbb.langSelector.vi_VN=Vietnamesisch -bbb.langSelector.cy_GB=Walisisch -bbb.langSelector.oc=Okzitanisch + +bbb.alert.cancel = Abbrechen +bbb.alert.ok = OK +bbb.alert.no = Nein +bbb.alert.yes = Ja diff --git a/bigbluebutton-client/locale/el/bbbResources.properties b/bigbluebutton-client/locale/el/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/el/bbbResources.properties +++ b/bigbluebutton-client/locale/el/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/el_GR/bbbResources.properties b/bigbluebutton-client/locale/el_GR/bbbResources.properties index 9348943628fd495fd72d9d15455c036dd6cf42f0..ed233676b4bbdf594b99eb667d26ddf03ec27bf9 100644 --- a/bigbluebutton-client/locale/el_GR/bbbResources.properties +++ b/bigbluebutton-client/locale/el_GR/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = ΣÏνδεση στον διακομιστή -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = ΛυποÏμαστε, αλλά δεν μποÏοÏμε να συνδεθοÏμε στο διακομιστή -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Ανοίξτε το παÏάθυÏο καταγÏαφής bbb.mainshell.meetingNotFound = Δεν βÏÎθηκε η συνεδÏίαση bbb.mainshell.invalidAuthToken = Λάθος στοιχεία πιστοποίησης bbb.mainshell.resetLayoutBtn.toolTip = ΕπαναφοÏά διάταξης bbb.mainshell.notification.tunnelling = Î Ïοώθηση bbb.mainshell.notification.webrtc = Ήχος WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = ΜποÏεί να Îχετε παλαιότεÏη μετάφÏαση του BigBlueButton. bbb.oldlocalewindow.reminder2 = ΠαÏακαλοÏμε εκκαθαÏίστε το Ï€Ïόσφατο ιστοÏικό του πεÏιηγητή σας και ξαναπÏοσπαθήστε. bbb.oldlocalewindow.windowTitle = Î Ïοσοχή: Παλαιά ΜετάφÏαση @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Γίνεται σÏνδεση bbb.micSettings.webrtc.transferring = ΜεταφοÏά bbb.micSettings.webrtc.endingecho = Συμμετοχή με ήχο bbb.micSettings.webrtc.endedecho = ΤÎλος δοκιμής Î·Ï‡Î¿Ï +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Δικαιώματα ΜικÏοφώνου Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Δικαιώματα ΜικÏοφώνου Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Î Ïοειδοποίηση ήχου bbb.micWarning.joinBtn.label = Είσοδος bbb.micWarning.testAgain.label = Έλεγχος ξανά @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Η δοκιμή ηχώ WebRTC bbb.webrtcWarning.connection.dropped = ΑπÎτυχε η σÏνδεση WebRTC bbb.webrtcWarning.connection.reconnecting = Î Ïοσπάθεια επανασÏνδεσης bbb.webrtcWarning.connection.reestablished = Αποκαταστάθηκε η σÏνδεση WebRTC -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Βοήθεια bbb.mainToolbar.logoutBtn = ΑποσÏνδεση bbb.mainToolbar.logoutBtn.toolTip = ΑποσÏνδεση -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Επιλογή γλώσσας bbb.mainToolbar.settingsBtn = Ρυθμίσεις bbb.mainToolbar.settingsBtn.toolTip = Άνοιγμα Ïυθμίσεων @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = ΈναÏξη εγγÏαφής bbb.mainToolbar.recordBtn.toolTip.stop = Διακοπή εγγÏαφής bbb.mainToolbar.recordBtn.toolTip.recording = Η συνεδÏία καταγÏάφεται bbb.mainToolbar.recordBtn.toolTip.notRecording = Η συνεδÏία δεν καταγÏάφεται -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Επιβεβαίωση εγγÏαφής bbb.mainToolbar.recordBtn.confirm.message.start = Είστε σίγουÏος/η οτι θÎλετε να ξεκινήσει η εγγÏαφή της συνεδÏίας; bbb.mainToolbar.recordBtn.confirm.message.stop = Είστε σίγουÏος/η οτι θÎλετε να διακοπεί η εγγÏαφή της συνεδÏίας; -bbb.mainToolbar.recordBtn..notification.title = Ειδοποίηση καταγÏαφής -bbb.mainToolbar.recordBtn..notification.message1 = ΜποÏείτε να καταγÏάψετε αυτό το συνÎδÏιο -bbb.mainToolbar.recordBtn..notification.message2 = Για την εκκίνηση της ηχογÏάφησης Ï€ÏÎπει να πατήσετε το κουμπί "Εκκίνηση/ ΤεÏματισμός" ηχογÏάφησης στην μπάÏα τίτλου +bbb.mainToolbar.recordBtn.notification.title = Ειδοποίηση καταγÏαφής +bbb.mainToolbar.recordBtn.notification.message1 = ΜποÏείτε να καταγÏάψετε αυτό το συνÎδÏιο +bbb.mainToolbar.recordBtn.notification.message2 = Για την εκκίνηση της ηχογÏάφησης Ï€ÏÎπει να πατήσετε το κουμπί "Εκκίνηση/ ΤεÏματισμός" ηχογÏάφησης στην μπάÏα τίτλου bbb.mainToolbar.recordingLabel.recording = (ΕγγÏαφή) bbb.mainToolbar.recordingLabel.notRecording = Δεν γίνεται εγγÏαφή -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Ειδοποιήσεις Ïυθμίσεων bbb.clientstatus.notification = Αδιάβαστες ειδοποιήσεις bbb.clientstatus.close = Κλείσιμο @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Ο πεÏιηγητής σας ({0}) δεν bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Ο Flash Player σας ({0}) δεν είναι ενημεÏωμÎνος. Î Ïοτείνεται ενημÎÏωση στην τελευταία Îκδοση. bbb.clientstatus.webrtc.title = Ήχος -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = ΣυνιστοÏμε τη χÏήση είτε του Firefox ή του Chrome για καλÏτεÏη ακουστική. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Ελαχιστοποίηση bbb.window.maximizeRestoreBtn.toolTip = Μεγιστοποίηση bbb.window.closeBtn.toolTip = Κλείσιμο @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Κατάσταση bbb.users.usersGrid.statusItemRenderer.changePresenter = Κάνε την/τον παÏουσιαστή bbb.users.usersGrid.statusItemRenderer.presenter = ΠαÏουσιαστής bbb.users.usersGrid.statusItemRenderer.moderator = ΔιαχειÏιστής -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = ΚαθαÏισμός κατάστασης bbb.users.usersGrid.statusItemRenderer.viewer = ΑκÏοατής bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Η κάμεÏα διαμοιÏάζεται @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Κάντε κλικ για ν bbb.users.usersGrid.mediaItemRenderer.pushToMute = Κάντε κλικ για να απενεÏγοποιήσετε τον ήχο στον χÏήστη bbb.users.usersGrid.mediaItemRenderer.pushToLock = Κλείδωμα του χÏήστη {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Ξεκλείδωμα του χÏήστη {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Διώξτε τον χÏήστη +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Η κάμεÏα διαμοιÏάζεται bbb.users.usersGrid.mediaItemRenderer.micOff = ΜικÏόφωνο κλειστό bbb.users.usersGrid.mediaItemRenderer.micOn = ΜικÏόφωνο ανοικτό bbb.users.usersGrid.mediaItemRenderer.noAudio = Δεν είστε σε συνδιάσκεψη ήχου -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = ΚαθαÏισμός -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ΠαÏουσίαση bbb.presentation.titleWithPres = ΠαÏουσίαση: {0} bbb.presentation.quickLink.label = ΠαÏάθυÏο ΠαÏουσίασης bbb.presentation.fitToWidth.toolTip = Î ÏοσαÏμογή παÏουσίασης στο πλάτος bbb.presentation.fitToPage.toolTip = Î ÏοσαÏμογή παÏουσίασης στη σελίδα bbb.presentation.uploadPresBtn.toolTip = ΑνÎβασμα παÏουσίασης -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = ΠαÏάθυÏο ΠαÏουσίασης Î ÏοηγοÏμενη διαφάνεια bbb.presentation.btnSlideNum.accessibilityName = Διαφάνεια {0} από {1} bbb.presentation.btnSlideNum.toolTip = Επιλογή διαφάνειας @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Η μεταφόÏτωση ολοκληÏώθη bbb.presentation.uploaded = μεταφοÏτώθηκε. bbb.presentation.document.supported = Το μεταφοÏτωμÎνο ÎγγÏαφο υποστηÏίζεται. Ξεκινάει η διαδικασία μετατÏοπής... bbb.presentation.document.converted = Το ÎγγÏαφο του office μετατÏάπηκε επιτυχώς. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO (ERROR)Σφάλμα (Εισόδου-Εξόδου): ΠαÏακαλοÏμε επικοινωνήστε με τον διαχειÏιστή. bbb.presentation.error.security = Security Σφάλμα (Σφάλμα Ασφαλείας): ΠαÏακαλοÏμε επικοινωνήστε με τον διαχειÏιστή. bbb.presentation.error.convert.notsupported = Σφάλμα: Το μεταφοÏτωμÎνο ÎγγÏαφο δεν υποστηÏίζεται. ΠαÏακαλοÏμε μεταφοÏτώστε Îνα συμβατό αÏχείο. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = ΜεταφόÏτωση bbb.fileupload.uploadBtn.toolTip = ΜεταφόÏτωση αÏχείου bbb.fileupload.deleteBtn.toolTip = ΔιαγÏαφή παÏουσίασης bbb.fileupload.showBtn = Î Ïοβολή -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Î Ïοβολή παÏουσίασης -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = ΔημιουÏγία μικÏογÏαφιών... bbb.fileupload.progBarLbl = Î Ïόοδος: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Συζήτηση bbb.chat.quickLink.label = ΠαÏάθυÏο συνομιλίας bbb.chat.cmpColorPicker.toolTip = ΠαÏάθυÏο συνομιλίας ΧÏώμα κειμÎνου bbb.chat.input.accessibilityName = Πεδίο αλλαγής μηνÏματος bbb.chat.sendBtn.toolTip = Αποστολή μηνÏματος bbb.chat.sendBtn.accessibilityName = Αποστολή μηνÏματος -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = ΑντιγÏαφή όλων bbb.chat.publicChatUsername = Όλα bbb.chat.optionsTabName = ΕπιλογÎÏ‚ @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = ΕπιλÎξτε το χÏήστη για bbb.chat.chatOptions = ΠαÏάθυÏο συνομιλίας ΕπιλογÎÏ‚ συνομιλίας bbb.chat.fontSize = ΠαÏάθυÏο συνομιλίας ÎœÎγεθος γÏαμματοσειÏάς bbb.chat.cmbFontSize.toolTip = Επιλογή ΜεγÎθους ΓÏαμματοσειÏάς ΠαÏάθυÏου Συνομιλίας -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Ελαχιστοποίηση του παÏαθÏÏου συνομιλίας bbb.chat.maximizeRestoreBtn.accessibilityName = Μεγιστοποίηση του παÏαθÏÏου συνομιλίας bbb.chat.closeBtn.accessibilityName = Κλείσιμο του παÏαθÏÏου συνομιλίας bbb.chat.chatTabs.accessibleNotice = ÎÎα μηνÏματα στε αυτή την καÏÏ„Îλα. bbb.chat.chatMessage.systemMessage = ΣÏστημα -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Το μήνυμα είναι {0} χαÏακτήÏα(ες) μεγαλÏτεÏο bbb.publishVideo.changeCameraBtn.labelText = Αλλαγή ΚάμεÏας bbb.publishVideo.changeCameraBtn.toolTip = Άνοιγμα του διαλόγου αλλαγής κάμεÏας @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Κοινή χÏήση bbb.publishVideo.startPublishBtn.toolTip = Εκκίνηση διαμοιÏÎ±ÏƒÎ¼Î¿Ï ÎºÎ¬Î¼ÎµÏας bbb.publishVideo.startPublishBtn.errorName = Δεν είναι δυνατή η κοινή χÏήση της κάμεÏας. Αιτιολογία: {0} bbb.webcamPermissions.chrome.title = Δικαιώματα web κάμεÏας Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = ΚάμεÏες bbb.videodock.quickLink.label = ΠαÏάθυÏο ΚάμεÏας bbb.video.minimizeBtn.accessibilityName = Ελαχιστοποίηση του παÏαθÏÏου πεÏιοχής κάμεÏας @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = Κλείσιμο παÏαθÏÏου τη bbb.video.publish.closeBtn.label = ΑκÏÏωση bbb.video.publish.titleBar = Δημοσίευση παÏαθÏÏου κάμεÏας bbb.video.streamClose.toolTip = Κλείσιμο Ïοής για: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Διακοπή παÏακολοÏθησης συνεδÏίου bbb.toolbar.phone.toolTip.unmute = Εκκίνηση παÏακολοÏθησης συνεδÏίου bbb.toolbar.phone.toolTip.nomic = Δε βÏÎθηκε μικÏόφωνο -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = ΔιαμοιÏασμός της κάμεÏας σας bbb.toolbar.video.toolTip.stop = Κλείσιμο διαμοιÏÎ±ÏƒÎ¼Î¿Ï Ï„Î·Ï‚ κάμεÏάς σου +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Î Ïοσθήκη της Ï€ÏοσαÏμοσμÎνης εμφάνισης στην λίστα -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Αλλαγή της Ï„ÏÎχουσας εμφάνισης bbb.layout.loadButton.toolTip = ΦόÏτωση εμφάνισης από αÏχείο bbb.layout.saveButton.toolTip = Αποθήκευση εμφάνισης σε αÏχείο @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = ΕφαÏμογή μίας εμφάνισης bbb.layout.combo.custom = * Î ÏοσαÏμοσμÎνη εμφάνιση bbb.layout.combo.customName = Î ÏοσαÏμοσμÎνη εμφάνιση bbb.layout.combo.remote = ΑπομακÏυσμÎνο -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Οι εμφανίσεις αποθηκεÏτηκαν επιτυχώς +bbb.layout.save.ioerror = bbb.layout.load.complete = Οι εμφανίσεις φοÏτώθηκαν επιτυχώς bbb.layout.load.failed = Δεν ήταν δυνατόν να φοÏτωθοÏν οι εμφανίσεις -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Î ÏοεπιλεγμÎνη Εμφάνιση -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Συνομιλία βίντεο bbb.layout.name.webcamsfocus = ΣυνεδÏίαση κάμεÏας bbb.layout.name.presentfocus = ΣυνεδÏίαση παÏουσίασης -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Βοηθός Εισηγητή bbb.layout.name.lecture = Εισηγητής -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = ΜολÏβι bbb.highlighter.toolbar.pencil.accessibilityName = Αλλαγή του κÎÏσοÏα της οθόνης σε μολÏβι bbb.highlighter.toolbar.ellipse = ΚÏκλος @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Επιλογή χÏώματος bbb.highlighter.toolbar.color.accessibilityName = ΧÏώμα μαÏκαδόÏου bbb.highlighter.toolbar.thickness = Αλλαγή πάχους bbb.highlighter.toolbar.thickness.accessibilityName = Πάχος μαÏκαδόÏου -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Αποσυνδεθήκατε +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Ο διακομιστής της εφαÏμογής Îχει κλείσει bbb.logout.asyncerror = ΣυνÎβη Îνα σφάλμα συγχÏÎ¿Î½Î¹ÏƒÎ¼Î¿Ï @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Η σÏνδεση με τον διακομιστή bbb.logout.rejected = Η σÏνδεση με τον διακομιστή Îχει αποÏÏιφθεί bbb.logout.invalidapp = Η εφαÏμογή red5 δεν υπάÏχει bbb.logout.unknown = Έχετε χάσει τη σÏνδεσή σας με τον διακομιστή -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Έχετε αποσυνδεθεί από τη τηλεδιάσκεψη -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Ένας συντονιστής σας Îθεσε εκτός από τη συνεδÏίαση. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Εάν αυτή η αποσÏνδεση ήταν απÏόσμενη, κάντε κλικ στο κουμπί παÏακάτω για να επανασυνδεθείτε. bbb.logout.refresh.label = ΕπανασÏνδεση -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Επιβεβαίωση ΑποσÏνδεσης bbb.logout.confirm.message = Είστε σίγουÏος/η οτι θÎλετε να αποσυνδεθείτε; -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Îαι bbb.logout.confirm.no = Οχι -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Εντοπίστηκαν Î Ïοβλήματα Συνδεσιμότητας bbb.connection.reconnecting=ΕπανασÏνδεση bbb.connection.reestablished=Αποκαταστάθηκε η σÏνδεση @@ -530,59 +539,60 @@ bbb.notes.title = Σημειώσεις bbb.notes.cmpColorPicker.toolTip = ΧÏώμα κειμÎνου bbb.notes.saveBtn = Αποθήκευση bbb.notes.saveBtn.toolTip = Αποθήκευση σημείωσης -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Κάντε κλικ στο "ΕπιτÏÎπεται" στο παÏάθυÏο που ανοίγει, για να ελÎγξετε αν ο διαμοιÏασμός της επιφάνειας εÏγασίας σας λειτουÏγεί κανονικά bbb.settings.deskshare.start = Έλεγχος διαμοιÏÎ±ÏƒÎ¼Î¿Ï ÎµÏ€Î¹Ï†Î¬Î½ÎµÎ¹Î±Ï‚ εÏγασίας bbb.settings.voice.volume = ΔÏαστηÏιότητα μικÏοφώνου -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Σφάλμα Îκδοσης Flash bbb.settings.flash.text = Έχετε εγκατεστημÎνη την Îκδοση {0} του Flash, αλλά χÏειάζεστε τουλάχιστον την Îκδοση {1} για να λειτουÏγεί το BigBlueButton απÏόσκοπτα. Κάντε κλικ στο πλήκτÏο παÏακάτω για να εγκαταστήσετε τη νεότεÏη Îκδοση του Ï€ÏογÏάμματος Adobe Flash. bbb.settings.flash.command = Εγκατάσταση νεότεÏης Îκδοσης Flash bbb.settings.isight.label = Σφάλμα κάμεÏας iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Εγκατάσταση Flash 10.2 RC2 bbb.settings.warning.label = Î Ïοειδοποίηση bbb.settings.warning.close = Κλείσιμο της Ï€Ïοειδοποίησης bbb.settings.noissues = Δεν εντοπίστηκαν εκκÏεμή ζητήματα bbb.settings.instructions = Αποδεχτείτε το αίτημα του Flash που ζητά δικαιώματα Ï€Ïόσβασης στην κάμεÏά σας. Εάν βλÎπετε και ακοÏτε τον εαυτό σας σωστά, ο πεÏιηγητής σας Îχει Ïυθμιστεί σωστά. Άλλα σημαντικά ζητήματα εμφανίζονται παÏακάτω. Κάντε κλικ σε καθÎνα από αυτά για να βÏείτε πιθανÎÏ‚ λÏσεις. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = ΤÏίγωνο ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Αλλαγή του κÎÏσοÏα της οθόνης σε Ï„Ïίγωνο ltbcustom.bbb.highlighter.toolbar.line = ΓÏαμμή @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Κείμενο ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Αλλαγή του κÎÏσοÏα της οθόνης σε κείμενο ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = ΧÏώμα κειμÎνου ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = ÎœÎγεθος γÏαμματοσειÏάς -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Έτοιμο @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Πλοηγηθήκατε στο bbb.accessibility.chat.chatBox.navigatedLatestRead = Πλοηγηθήκατε στο πιο Ï€Ïόσφατα διαβασμÎνο μήνυμα. bbb.accessibility.chat.chatwindow.input = Εισαγωγή συνομιλίας bbb.accessibility.chat.chatwindow.audibleChatNotification = Ηχητική ειδοποίηση Συνομιλίας -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = ΧÏησιμοποιήστε τα βελάκια για την πλοήγηση Î¼ÎµÏ„Î±Î¾Ï Ï„Ï‰Î½ μηνυμάτων bbb.accessibility.notes.notesview.input = Εισαγωγή σημειώσεων bbb.shortcuthelp.title = ΠλήκτÏα συντομεÏσεων -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Ελαχιστοποίηση του παÏαθÏÏου συντομεÏσεων bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Μεγιστοποίηση του παÏαθÏÏου συντομεÏσεων bbb.shortcuthelp.closeBtn.accessibilityName = Κλείσιμο του παÏαθÏÏου συντομεÏσεων -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = ΚαθολικÎÏ‚ συντομεÏσεις bbb.shortcuthelp.dropdown.presentation = ΣυντομεÏσεις παÏουσίασης bbb.shortcuthelp.dropdown.chat = ΣυντομεÏσεις συνομιλίας bbb.shortcuthelp.dropdown.users = ΣυντευμεÏσεις χÏηστών -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Συντόμευση bbb.shortcuthelp.headers.function = ΛειτουÏγία @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Ελαχιστοποίηση Ï„ÏÎ bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Μεγιστοποίηση Ï„ÏÎχοντος παÏαθÏÏου -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = ΕπικÎντÏωση εκτός του flash παÏαθÏÏου bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Σίγαση και ενεÏγοποίηση του μικÏοφώνου σου @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Μετακίνηση της εστίασης στο παÏάθυÏο της ΠαÏουσίασης bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = ΜεταφοÏά της εστίασης στο παÏάθυÏο συνομιλίας -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Άνοιγμα του παÏαθÏÏου διαμοιÏÎ±ÏƒÎ¼Î¿Ï Ï„Î·Ï‚ επιφάνειας εÏγασίας @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = ΑποσÏνδεση από αυτή την σ bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Ύψωσε το χÎÏι σου -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = ΑνÎβασμα παÏουσίασης bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Πήγαινε στην Ï€ÏοηγοÏμενη διαφάνεια @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Πήγαινε στην επόμενη διαφάνεια bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Î ÏοσάÏμοσε τις διαφάνειες στο πλάτος -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Î ÏοσάÏμοσε τις διαφάνειες στη σελίδα -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Κάνε το επιλεγμÎνο άτομο παÏουσιαστή -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Διώξε το επιλεγμÎνο άτομο από την συνεδÏίαση +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Σίγαση ή ενεÏγοποίηση του ήχου στο επιλεγμÎνο άτομο bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Σίγαση ή ενεÏγοποίηση του ήχου σε όλους τους χÏήστες bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Σίγαση σε όλους εκτός του παÏουσιαστή -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Εστίασε στις καÏÏ„Îλες συνομιλιών -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Εστίαση στην επιλογή χÏώματος γÏαμματαοσειÏάς. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Πλοήγηση στο πιο Ï€ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Î ÏοσωÏινό ενεÏγό κουμπί αποσφαλμάτωσης -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = ΈναÏξη ΨηφοφοÏίας bbb.polling.startButton.label = ΈναÏξη ΨηφοφοÏίας bbb.polling.publishButton.label = Δημοσίευση bbb.polling.closeButton.label = Κλείσιμο -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Ζωντανά αποτελÎσματα ψηφοφοÏίας +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Εισάγετε επιλογÎÏ‚ ΨηφοφοÏίας bbb.polling.respondersLabel.novotes = Αναμονή για απαντήσεις bbb.polling.respondersLabel.text = {0} ΧÏήστες Απάντησαν @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Κλείσιμο όλων των bbb.users.settings.lockAll = Κλείδωμα όλων των χÏηστών bbb.users.settings.lockAllExcept = Κλείδωμα όλων εκτός του παÏουσιαστή bbb.users.settings.lockSettings = Κλείδωμα θεατών -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Ξεκλείδωμα όλων των θεατών bbb.users.settings.roomIsLocked = Κλείδωμα εκ Ï€Ïοεπιλογής bbb.users.settings.roomIsMuted = Σίγαση εκ Ï€Ïοεπιλογής @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = ΕΦαÏμογή Ïυθμίσεων κλειδώ bbb.lockSettings.cancel = ΑκÏÏωση bbb.lockSettings.cancel.toolTip = Κλείσιμο του παÏαθÏÏου χωÏίς αποθήκευση +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Κλείδωμα διαχειÏιστή bbb.lockSettings.privateChat = Ιδιωτική συνομιλία bbb.lockSettings.publicChat = Δημόσια συνομιλία bbb.lockSettings.webcam = ΚάμεÏα +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = ΜικÏόφωνο bbb.lockSettings.layout = Εμφάνιση bbb.lockSettings.title=Κλείδωμα θεατών @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Δυνατότητα bbb.lockSettings.locked=ΚλειδωμÎνο bbb.lockSettings.lockOnJoin=Κλείδωμα κατά την Είσοδο -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/en_AU/bbbResources.properties b/bigbluebutton-client/locale/en_AU/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/en_AU/bbbResources.properties +++ b/bigbluebutton-client/locale/en_AU/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/en_US/bbbResources.properties b/bigbluebutton-client/locale/en_US/bbbResources.properties index 8b4d45b71c285e7cde5d3421c7a7e1459fecd367..d50afd5857bfe266804a01ea30da3511e23c259e 100755 --- a/bigbluebutton-client/locale/en_US/bbbResources.properties +++ b/bigbluebutton-client/locale/en_US/bbbResources.properties @@ -537,7 +537,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color bbb.highlighter.toolbar.thickness = Change Thickness bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out bbb.logout.button.label = OK bbb.logout.appshutdown = The server app has been shut down bbb.logout.asyncerror = An Async Error occured @@ -557,6 +556,8 @@ bbb.logout.refresh.message = If this logout was unexpected click the button belo bbb.logout.refresh.label = Reconnect bbb.guest.settings.ok = OK bbb.guest.settings.cancel = Cancel +bbb.logout.feedback.hint = How can we make BigBlueButton better? +bbb.logout.feedback.label = We'd love to hear about your experience with BigBlueButton (optional) bbb.logout.confirm.title = Confirm Logout bbb.logout.confirm.message = Are you sure you want to log out? bbb.logout.confirm.endMeeting = Yes and end the meeting @@ -850,10 +851,12 @@ bbb.lockSettings.save.tooltip = Apply lock settings bbb.lockSettings.cancel = Cancel bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.hint = These options enable you to restrict certain features available to viewers, such as locking out their ability to use private chat. (These restrictions do not apply to moderators) bbb.lockSettings.moderatorLocking = Moderator locking bbb.lockSettings.privateChat = Private Chat bbb.lockSettings.publicChat = Public Chat bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = Hide other viewer's webcams bbb.lockSettings.microphone = Microphone bbb.lockSettings.layout = Layout bbb.lockSettings.title=Lock Viewers diff --git a/bigbluebutton-client/locale/es_419/bbbResources.properties b/bigbluebutton-client/locale/es_419/bbbResources.properties new file mode 100644 index 0000000000000000000000000000000000000000..fe87e9ff650ad8d4247056e1653ed10d244c4d94 --- /dev/null +++ b/bigbluebutton-client/locale/es_419/bbbResources.properties @@ -0,0 +1,871 @@ +bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.statusProgress.connecting = Conectando al servidor +bbb.mainshell.statusProgress.loading = Cargando +bbb.mainshell.statusProgress.cannotConnectServer = Lo sentimos, no se puede conectar al servidor. +bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (versión {0}) +bbb.mainshell.logBtn.toolTip = Abrir la ventana de Registro (Log) +bbb.mainshell.meetingNotFound = Sesión no encontrada +bbb.mainshell.invalidAuthToken = Token de autenticación inválido +bbb.mainshell.resetLayoutBtn.toolTip = Restaurar Diseño +bbb.mainshell.notification.tunnelling = Tunelización +bbb.mainshell.notification.webrtc = Audio WebRTC +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = Usted tiene una versión no actualizada de la traducción para Bigbluebutton +bbb.oldlocalewindow.reminder2 = Por favor limpie el cache de su explorador y pruebe de nuevo. +bbb.oldlocalewindow.windowTitle = Advertencia: Traducciones de lenguaje no actualizadas +bbb.audioSelection.title = Como quiere unirse a la sesión de audio? +bbb.audioSelection.btnMicrophone.label = Micrófono +bbb.audioSelection.btnMicrophone.toolTip = Ingresar a la conferencia de audio con micrófono +bbb.audioSelection.btnListenOnly.label = Solo escuchar +bbb.audioSelection.btnListenOnly.toolTip = Ingresar a la conferencia de audio como oyente +bbb.audioSelection.txtPhone.text = Para unirse a esta sesión utilizando un teléfono, marque: {0} e introduzca {1} como número de conferencia. +bbb.micSettings.title = Prueba de audio +bbb.micSettings.speakers.header = Prueba de parlantes +bbb.micSettings.microphone.header = Probar Micrófono +bbb.micSettings.playSound = Prueba de parlantes +bbb.micSettings.playSound.toolTip = Escuchar música para probar los parlantes. +bbb.micSettings.hearFromHeadset = Usted debe escuchar audio en su auricular, no en los parlantes de su computadora +bbb.micSettings.speakIntoMic = Si usted esta utilizando auriculares (o audifonos) debe escuchar el audio a través de ellos y no a través de los parlantes de la computadora. +bbb.micSettings.echoTestMicPrompt = Esta es una prueba privada de eco. Diga algunas palabras. Escucho sus palabras en el audio? +bbb.micSettings.echoTestAudioYes = Si +bbb.micSettings.echoTestAudioNo = No +bbb.micSettings.speakIntoMicTestLevel = Hable en su micrófono. Debe ver movimiento en la barra, sà no es asi seleccione otro micrófono. +bbb.micSettings.recommendHeadset = Utilice un auricular con micrófono para una mejor experiencia de audio. +bbb.micSettings.changeMic = Probar o Cambiar micrófono +bbb.micSettings.changeMic.toolTip = Abrir la ventana de configuraciones del micrófono de Flash Player +bbb.micSettings.comboMicList.toolTip = Seleccionar micrófono +bbb.micSettings.micRecordVolume.label = Ganancia +bbb.micSettings.micRecordVolume.toolTip = Ajustar ganancia de su micrófono +bbb.micSettings.nextButton = Siguiente +bbb.micSettings.nextButton.toolTip = Iniciar la prueba de eco +bbb.micSettings.join = Conectar audio +bbb.micSettings.join.toolTip = Unirse a la conferencia de audio +bbb.micSettings.cancel = Cancelar +bbb.micSettings.connectingtoecho = Conectando +bbb.micSettings.connectingtoecho.error = Error en prueba de eco: Por favor contacte al administrador. +bbb.micSettings.cancel.toolTip = Cancelar la union a la conferencia de audio +bbb.micSettings.access.helpButton = Ayuda (abra videos tutoriales en una nueva página) +bbb.micSettings.access.title = Configuraciones de Audio. Esta ventana permanecerá enfocada hasta que se cierre la misma. +bbb.micSettings.webrtc.title = Soporte para WebRTC +bbb.micSettings.webrtc.capableBrowser = Su navegador soporta WebRTC +bbb.micSettings.webrtc.capableBrowser.dontuseit = Click para no usar WebRTC +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click aquà si no desea usar tecnologÃa WebRTC (recomendado si tiene problemas usándola) +bbb.micSettings.webrtc.notCapableBrowser = WebRTC no es soportado en su navegador. Por favor use Google Chrome (versión 32 o mayor); o Mozilla Firefox (versión 26 o mayor). Podrá unirse a la conferencia de audio usando Adobe Flash Platform. +bbb.micSettings.webrtc.connecting = Llamando +bbb.micSettings.webrtc.waitingforice = Conectando +bbb.micSettings.webrtc.transferring = transfiriendo +bbb.micSettings.webrtc.endingecho = Conectandose a audio +bbb.micSettings.webrtc.endedecho = La prueba de eco terminada. +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = Permisos de micrófono en Firefox +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = Permisos de micrófono en Chrome +bbb.micPermissions.chrome.message = +bbb.micWarning.title = Alerta de audio +bbb.micWarning.joinBtn.label = Unirse de todas formas +bbb.micWarning.testAgain.label = Probar de nuevo +bbb.micWarning.message = Su micrófono no mostró actividad alguna, otros probablemente no podrán escucharlo durante la sesión. +bbb.webrtcWarning.message = La conección WebRTC no pudo completarse debido a: {0}. Quiere intentar utilizar Flash? +bbb.webrtcWarning.title = Falló la conección WebRTC +bbb.webrtcWarning.failedError.1001 = Error 1001: Socket Web desconectado +bbb.webrtcWarning.failedError.1002 = Error 1002: No se pudo establecer una conexión de Socket Web +bbb.webrtcWarning.failedError.1003 = Error 1003: Versión de navegador no soportada +bbb.webrtcWarning.failedError.1004 = Error 1004 fallo en la llamada (reason={0}) +bbb.webrtcWarning.failedError.1005 = Error 1005: Llamada finalizada de forma inesperada +bbb.webrtcWarning.failedError.1006 = Error 1006: La llamada agotó el tiempo de espera +bbb.webrtcWarning.failedError.1007 = Error 1007: Falló la negociación ICE +bbb.webrtcWarning.failedError.1008 = Error 1008: transferencia fallida +bbb.webrtcWarning.failedError.1009 = Error 1009: No se pudo obtener información del servidor +bbb.webrtcWarning.failedError.1010 = Error 1010: La negociación ICE agotó el tiempo de espera +bbb.webrtcWarning.failedError.1011 = Error 1011: Conferencia ICE agotó el tiempo de espera +bbb.webrtcWarning.failedError.unknown = Error {0}: Código de error desconocido +bbb.webrtcWarning.failedError.mediamissing = Su micrófono no pudo ser utilizarse para una llamada mediante WebRTC. +bbb.webrtcWarning.failedError.endedunexpectedly = El test de eco WebRTC finalizó de forma inesperada. +bbb.webrtcWarning.connection.dropped = Conexión WebRTC terminada +bbb.webrtcWarning.connection.reconnecting = Intentando reconectar +bbb.webrtcWarning.connection.reestablished = Conexión WebRTC reestablecida +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = Cancelar +bbb.mainToolbar.helpBtn = Ayuda +bbb.mainToolbar.logoutBtn = Cerrar sesión +bbb.mainToolbar.logoutBtn.toolTip = Cerrar sesión +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = Seleccionar Idioma +bbb.mainToolbar.settingsBtn = Configuraciones +bbb.mainToolbar.settingsBtn.toolTip = Abrir Configuraciones +bbb.mainToolbar.shortcutBtn = Teclas de acceso directo +bbb.mainToolbar.shortcutBtn.toolTip = Abrir ventana de teclas de acceso directo +bbb.mainToolbar.recordBtn.toolTip.start = Iniciar grabación +bbb.mainToolbar.recordBtn.toolTip.stop = Detener grabación +bbb.mainToolbar.recordBtn.toolTip.recording = La sesión está siendo grabada +bbb.mainToolbar.recordBtn.toolTip.notRecording = La sesión no está siendo grabada +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = Confirmar grabación +bbb.mainToolbar.recordBtn.confirm.message.start = ¿Está seguro que desea iniciar la grabación de la sesión? +bbb.mainToolbar.recordBtn.confirm.message.stop = ¿Está seguro que desea detener la grabación de la sesión? +bbb.mainToolbar.recordBtn.notification.title = Notificación de grabación +bbb.mainToolbar.recordBtn.notification.message1 = Usted puede grabar esta sesión. +bbb.mainToolbar.recordBtn.notification.message2 = Debe hacer click en el botón Iniciar/Detener Grabación en la barra de tÃtulo para empezar o dejar de grabar. +bbb.mainToolbar.recordingLabel.recording = (Grabación) +bbb.mainToolbar.recordingLabel.notRecording = No grabando +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = Notificaciones de configuración +bbb.clientstatus.notification = Notificaciones sin leer +bbb.clientstatus.close = Cerrar +bbb.clientstatus.tunneling.title = Contrafuegos +bbb.clientstatus.tunneling.message = Un cortafuegos está evitando que el cliente se conecte directamente al servidor remoto por el puerto 1935. Se recomienda utilizar una red menos restringida para obtener una conexión más estable +bbb.clientstatus.browser.title = Versión de navegador +bbb.clientstatus.browser.message = El navegador ({0}) no se encuentra actualizado. Se recomienda actualizarlo a la última versión. +bbb.clientstatus.flash.title = Reproductor Flash +bbb.clientstatus.flash.message = El reproductor Flash ({0}) no se encuentra actualizado. Se recomienda actualizarlo a la última versión. +bbb.clientstatus.webrtc.title = Audio +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = Se recomienda utilizar Firefox o Chrome para obtener mejor calidad de audio. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = Minimizar +bbb.window.maximizeRestoreBtn.toolTip = Maximizar +bbb.window.closeBtn.toolTip = Cerrar +bbb.videoDock.titleBar = Barra de TÃtulo de la Ventana de Bloque de cámara Web +bbb.presentation.titleBar = Barra de Titulo de la Ventana de Presentación +bbb.chat.titleBar = Barra de TÃtulo de la Ventana de Chat. Para navegar entre los mensajes, seleccione la lista de mensajes. +bbb.users.title = Asistentes{0} {1} +bbb.users.titleBar = Barra de tÃtulo de la Ventana de Asistentes, doble click para maximizar +bbb.users.quickLink.label = Ventana de Usuarios +bbb.users.minimizeBtn.accessibilityName = Minimizar la Ventana de Asistentes +bbb.users.maximizeRestoreBtn.accessibilityName = Maximizar la Ventana de Asistentes +bbb.users.settings.buttonTooltip = Configuraciones +bbb.users.settings.audioSettings = Prueba de audio +bbb.users.settings.webcamSettings = Configuración de la cámara Web +bbb.users.settings.muteAll = Desactivar audio a todos +bbb.users.settings.muteAllExcept = Desactivar audio a todos excepto al Presentador +bbb.users.settings.unmuteAll = Activar audio a todos +bbb.users.settings.clearAllStatus = Reiniciar el estado de todos los participantes +bbb.users.emojiStatusBtn.toolTip = Actualizar mi propio icono de estado +bbb.users.roomMuted.text = Espectadores silenciados +bbb.users.roomLocked.text = Espectadores bloqueados +bbb.users.pushToTalk.toolTip = Click para hablar +bbb.users.pushToMute.toolTip = Click para desactivarse el audio +bbb.users.muteMeBtnTxt.talk = Activar audio +bbb.users.muteMeBtnTxt.mute = Desactivar audio +bbb.users.muteMeBtnTxt.muted = Audio desactivado +bbb.users.usersGrid.contextmenu.exportusers = Copiar nombres de usuario +bbb.users.usersGrid.accessibilityName = Lista de Asistentes. Usar las teclas de dirección para navegar. +bbb.users.usersGrid.nameItemRenderer = Nombre +bbb.users.usersGrid.nameItemRenderer.youIdentifier = usted +bbb.users.usersGrid.statusItemRenderer = Estado +bbb.users.usersGrid.statusItemRenderer.changePresenter = Haga click para cambiar a presentador +bbb.users.usersGrid.statusItemRenderer.presenter = Presentador +bbb.users.usersGrid.statusItemRenderer.moderator = Moderador +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = Aplauso +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = Ausente +bbb.users.usersGrid.statusItemRenderer.confused = Confundido +bbb.users.usersGrid.statusItemRenderer.neutral = Neutral +bbb.users.usersGrid.statusItemRenderer.happy = Contento +bbb.users.usersGrid.statusItemRenderer.sad = Triste +bbb.users.usersGrid.statusItemRenderer.clearStatus = Reiniciar el estado de todos los participantes +bbb.users.usersGrid.statusItemRenderer.viewer = Espectador +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Compartiendo cámara web +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Es presentador +bbb.users.usersGrid.mediaItemRenderer = Media +bbb.users.usersGrid.mediaItemRenderer.talking = Hablando +bbb.users.usersGrid.mediaItemRenderer.webcam = Compartiendo cámara Web +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Click para ver la cámara Web +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Activar audio a {0} +bbb.users.usersGrid.mediaItemRenderer.pushToMute = Desactivar audio a {0} +bbb.users.usersGrid.mediaItemRenderer.pushToLock = Bloquear {0} +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desbloquear {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = Compartiendo cámara Web +bbb.users.usersGrid.mediaItemRenderer.micOff = Micrófono apagado +bbb.users.usersGrid.mediaItemRenderer.micOn = Micrófono encendido +bbb.users.usersGrid.mediaItemRenderer.noAudio = No está en la Conferencia de Voz +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = Limpiar +bbb.users.emojiStatus.raiseHand = Levantar la mano +bbb.users.emojiStatus.happy = Contento +bbb.users.emojiStatus.neutral = Neutral +bbb.users.emojiStatus.sad = Triste +bbb.users.emojiStatus.confused = Confundido +bbb.users.emojiStatus.away = Ausente +bbb.users.emojiStatus.thumbsUp = Señal de aprobación +bbb.users.emojiStatus.thumbsDown = Señal de desaprobación +bbb.users.emojiStatus.applause = Aplauso +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = Presentación +bbb.presentation.titleWithPres = Presentación: {0} +bbb.presentation.quickLink.label = Ventana de Presentación +bbb.presentation.fitToWidth.toolTip = Ajustar presentación a lo ancho +bbb.presentation.fitToPage.toolTip = Ajustar presentación a la página +bbb.presentation.uploadPresBtn.toolTip = Cargar presentación +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = Diapositiva anterior. +bbb.presentation.btnSlideNum.accessibilityName = Diapositiva {0} de {1} +bbb.presentation.btnSlideNum.toolTip = Seleccionar una diapositiva +bbb.presentation.forwardBtn.toolTip = Siguiente diapositiva +bbb.presentation.maxUploadFileExceededAlert = Error: El archivo es más grande de lo permitido. +bbb.presentation.uploadcomplete = Carga completa. Por favor espere mientras se convierte el documento. +bbb.presentation.uploaded = cargado. +bbb.presentation.document.supported = El documento cargado es soportado. Iniciando la conversión... +bbb.presentation.document.converted = La conversión del documento de Office fué exitosa. +bbb.presentation.error.document.convert.failed = Intenta convertir el archivo a PDF y reintenta subirlo +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = Error de comunicación: Por favor contacte al administrador. +bbb.presentation.error.security = Error de seguridad: Por favor contacte al administrador. +bbb.presentation.error.convert.notsupported = Error: El documento cargado no esta soportado. Por favor, carge un tipo de documento soportado. +bbb.presentation.error.convert.nbpage = Error: No se pudo determinar el número de páginas del documento cargado. +bbb.presentation.error.convert.maxnbpagereach = Error: El documento cargado tiene demasiadas páginas. +bbb.presentation.converted = Convertidas {0} de {1} diapositivas. +bbb.presentation.slider = Nivel de zoom en la presentación +bbb.presentation.slideloader.starttext = Texto inicial de la diapositiva +bbb.presentation.slideloader.endtext = Texto inicial de la diapositiva +bbb.presentation.uploadwindow.presentationfile = Archivo de presentación +bbb.presentation.uploadwindow.pdf = PDF +bbb.presentation.uploadwindow.word = WORD +bbb.presentation.uploadwindow.excel = EXCEL +bbb.presentation.uploadwindow.powerpoint = POWERPOINT +bbb.presentation.uploadwindow.image = IMAGEN +bbb.presentation.minimizeBtn.accessibilityName = Minimizar la ventana de presentación +bbb.presentation.maximizeRestoreBtn.accessibilityName = Mazimizar la ventana de presentación +bbb.presentation.closeBtn.accessibilityName = Cerrar la ventana de presentación +bbb.fileupload.title = Añadir archivos a tu presentación +bbb.fileupload.lblFileName.defaultText = No se ha seleccionado archivo +bbb.fileupload.selectBtn.label = Seleccionar archivo +bbb.fileupload.selectBtn.toolTip = Abrir venta para seleccionar un archivo +bbb.fileupload.uploadBtn = Cargar +bbb.fileupload.uploadBtn.toolTip = Cargar el archivo seleccionado +bbb.fileupload.deleteBtn.toolTip = Borrar presentación +bbb.fileupload.showBtn = Mostrar +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = Mostrar Presentación +bbb.fileupload.close.tooltip = Cerrar +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = Generando vistas en miniatura.. +bbb.fileupload.progBarLbl = Progreso: +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = Cerrar +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = Chat +bbb.chat.quickLink.label = Ventana del Chat +bbb.chat.cmpColorPicker.toolTip = Color del texto +bbb.chat.input.accessibilityName = Campo para editar el mensaje del chat. +bbb.chat.sendBtn.toolTip = Enviar Mensaje +bbb.chat.sendBtn.accessibilityName = Enviar mensaje del chat +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = Copiar todo el texto +bbb.chat.publicChatUsername = Todos +bbb.chat.optionsTabName = Opciones +bbb.chat.privateChatSelect = Seleccionar a una persona para iniciar un chat privado +bbb.chat.private.userLeft = El usuario ha salido. +bbb.chat.private.userJoined = El usuario ha ingresado +bbb.chat.private.closeMessage = Puede cerrar esta pestaña haciendo uso de la combinación de teclas {0} +bbb.chat.usersList.toolTip = Seleccione un participante para habrir un chat privado +bbb.chat.usersList.accessibilityName = Selecciona un usuario para chatear en privado. Usa las flechas de dirección para moverte. +bbb.chat.chatOptions = Opciones de chat +bbb.chat.fontSize = Tamaño de la letra del chat +bbb.chat.cmbFontSize.toolTip = Seleccione el tamaño de letra para mensaje de Chat +bbb.chat.messageList = Mensajes de chat +bbb.chat.minimizeBtn.accessibilityName = Minimizar la ventana del chat +bbb.chat.maximizeRestoreBtn.accessibilityName = Maximizar la ventana del chat +bbb.chat.closeBtn.accessibilityName = Cerrar a ventana del chat +bbb.chat.chatTabs.accessibleNotice = Nuevos mensajes en esta pestaña. +bbb.chat.chatMessage.systemMessage = Sistema +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = El mensaje demasiado largo por {0} carácter(es) +bbb.publishVideo.changeCameraBtn.labelText = Cambiar la configuración de la camara +bbb.publishVideo.changeCameraBtn.toolTip = Abrir la ventana de configuración de la cámara +bbb.publishVideo.cmbResolution.tooltip = Seleccionar la resolución de la cámara +bbb.publishVideo.startPublishBtn.labelText = Empezar a compartir +bbb.publishVideo.startPublishBtn.toolTip = Empezar a compartir cámara +bbb.publishVideo.startPublishBtn.errorName = No se puede compartir la cámara. Motivo: {0} +bbb.webcamPermissions.chrome.title = Permisos de Cámara Web en Chrome +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = Area de video +bbb.videodock.quickLink.label = Ventana de Cámaras Web +bbb.video.minimizeBtn.accessibilityName = Minimizar la ventana de área de videos +bbb.video.maximizeRestoreBtn.accessibilityName = Mazimizar la ventana de área de videos +bbb.video.controls.muteButton.toolTip = Detener o Activar audio para {0} +bbb.video.controls.switchPresenter.toolTip = Hacer {0} presentador +bbb.video.controls.ejectUserBtn.toolTip = Expulsar {0} de la sesión +bbb.video.controls.privateChatBtn.toolTip = Conversando con {0} +bbb.video.publish.hint.noCamera = Cámara no disponible +bbb.video.publish.hint.cantOpenCamera = No se puede abrir la camara +bbb.video.publish.hint.waitingApproval = Pendiente por aprovación +bbb.video.publish.hint.videoPreview = Vista previa video +bbb.video.publish.hint.openingCamera = Abriendo Camara... +bbb.video.publish.hint.cameraDenied = Acceso denegado a camara +bbb.video.publish.hint.cameraIsBeingUsed = No se ha podido abrir la cámara web. Puede estar siendo siendo utilizada por otra aplicación. +bbb.video.publish.hint.publishing = Publicando... +bbb.video.publish.closeBtn.accessName = Cerrar la ventana de configuraciones de la cámara web +bbb.video.publish.closeBtn.label = Cancelar +bbb.video.publish.titleBar = Ventana de iniciación de la cámara web +bbb.video.streamClose.toolTip = Terminar transmisión para: {0} +bbb.video.message.browserhttp = +bbb.screensharePublish.title = Compartir Pantalla: Previsualización del Presentador +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = Pausa +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = No puedes maximizar esta ventana. +bbb.screensharePublish.closeBtn.toolTip = Dejar de compartir y cerrar +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = Minimizar +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = Ayuda +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = +bbb.screensharePublish.helpText.PCIE3 = +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = +bbb.screensharePublish.helpText.PCFirefox3 = +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = +bbb.screensharePublish.helpText.LinuxFirefox3 = +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = Cancelar +bbb.screensharePublish.startButton.label = Iniciar +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = Compartir escritorio +bbb.screenshareView.fitToWindow = Ajustarse a la pantalla +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = Habilitar el audio (Micrófono o solo escuchar) +bbb.toolbar.phone.toolTip.stop = Dejar de compartir micrófono +bbb.toolbar.phone.toolTip.mute = Dejar de escuchar la conferencia +bbb.toolbar.phone.toolTip.unmute = Empezar a escuchar la conferencia +bbb.toolbar.phone.toolTip.nomic = No se ha detectado micrófono +bbb.toolbar.deskshare.toolTip.start = Compartir escritorio +bbb.toolbar.deskshare.toolTip.stop = Dejar de compartir escritorio +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = Compartir su cámara Web +bbb.toolbar.video.toolTip.stop = Dejar de compartir su cámara Web +bbb.layout.addButton.label = Agregar +bbb.layout.addButton.toolTip = Añadir el diseño personalizado a la lista +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = Aplicar diseño actual a todos los espectadores +bbb.layout.combo.toolTip = Cambiar la alineación de ventanas actual +bbb.layout.loadButton.toolTip = Cargar diseños de un archivo +bbb.layout.saveButton.toolTip = Guardar diseños en un archivo +bbb.layout.lockButton.toolTip = Bloquear diseño +bbb.layout.combo.prompt = Aplicar diseño +bbb.layout.combo.custom = *Diseño personalizado +bbb.layout.combo.customName = Diseño personalizado +bbb.layout.combo.remote = Remoto +bbb.layout.window.name = +bbb.layout.window.close.tooltip = Cerrar +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = Los diseños fueron guardados exitosamente +bbb.layout.save.ioerror = +bbb.layout.load.complete = Los diseños fueron cargados +bbb.layout.load.failed = Error al cargar diseños +bbb.layout.sync = +bbb.layout.name.defaultlayout = Alineación de ventanas por defecto +bbb.layout.name.closedcaption = Subtitulos +bbb.layout.name.videochat = Chat de Video +bbb.layout.name.webcamsfocus = Cámara web +bbb.layout.name.presentfocus = Presentación +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = Asistente de conferencia +bbb.layout.name.lecture = Conferencia +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = Lápiz +bbb.highlighter.toolbar.pencil.accessibilityName = Cambiar el cursor a lápiz +bbb.highlighter.toolbar.ellipse = CÃrculo +bbb.highlighter.toolbar.ellipse.accessibilityName = Cambiar cursos a cÃrculo +bbb.highlighter.toolbar.rectangle = Rectángulo +bbb.highlighter.toolbar.rectangle.accessibilityName = Cambiar cursos a rectángulo +bbb.highlighter.toolbar.panzoom = Panorámico y Zoom +bbb.highlighter.toolbar.panzoom.accessibilityName = Cambiar el cursor a panómarico y zoom +bbb.highlighter.toolbar.clear = Borrar todas las anotaciones +bbb.highlighter.toolbar.clear.accessibilityName = Limpiar la página del pizarrón +bbb.highlighter.toolbar.undo = Deshacer anotación +bbb.highlighter.toolbar.undo.accessibilityName = Deshacer la última figura de la pizarra +bbb.highlighter.toolbar.color = Selecccionar Color +bbb.highlighter.toolbar.color.accessibilityName = Dibujar un color en la pizarra +bbb.highlighter.toolbar.thickness = Cambiar Grosor +bbb.highlighter.toolbar.thickness.accessibilityName = Dibujar grosor en la pizarra +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = OK +bbb.logout.appshutdown = El servidor de aplicaciones ha sido apagado +bbb.logout.asyncerror = Un Error de Asincronismo ha ocurrido +bbb.logout.connectionclosed = La conexión al servidor ha sido cerrada +bbb.logout.connectionfailed = La conexión al servidor ha terminado +bbb.logout.rejected = La conexión al servidor ha sido rechazada +bbb.logout.invalidapp = La aplicación red5 no existe +bbb.logout.unknown = Su cliente ha perdido conexión con el servidor +bbb.logout.guestkickedout = +bbb.logout.usercommand = Usted ha salido de la conferencia +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = Si esta desconexión no estaba planificada, pulse el botón para reconectar. +bbb.logout.refresh.label = Reconectar +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = Correcto +bbb.settings.cancel = Cancelar +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = Confirmar Cerrar Sesión +bbb.logout.confirm.message = ¿Esta seguro que desea cerrar sesión? +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = Si +bbb.logout.confirm.no = No +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure=Detectando problemas de conectividad +bbb.connection.reconnecting=Reconectando +bbb.connection.reestablished=Conexión restablecida +bbb.connection.bigbluebutton=BigBlueButton +bbb.connection.sip=SIP +bbb.connection.video=Video +bbb.connection.deskshare=Compartir Escritorio +bbb.notes.title = Notas +bbb.notes.cmpColorPicker.toolTip = Color de Texto +bbb.notes.saveBtn = Guardar +bbb.notes.saveBtn.toolTip = Guardar Nota +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = Cerrar +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = Presione Permitir en la ventana emergente para verificar que la compartición del escritorio está funcionando adecuadamente para usted +bbb.settings.deskshare.start = Revisar Escritorio Compartido +bbb.settings.voice.volume = Actividad del Micrófono +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = Error de versión de Flash +bbb.settings.flash.text = Usted tiene Flash {0} instalado, pero necesita por lo menos la versión {1} para ejecutar BigBlueButton adecuadamente. Haga clic en el botón de abajo para instalar la última versión de Adobe Flash. +bbb.settings.flash.command = Instalar la versión más reciente de Java +bbb.settings.isight.label = Error en cámara iSight +bbb.settings.isight.text = +bbb.settings.isight.command = Instalar Flash 10.2 RC2 +bbb.settings.warning.label = Advertencia +bbb.settings.warning.close = Alerta +bbb.settings.noissues = Ninguna edicion excepcional se ha detectado +bbb.settings.instructions = Acepte el mensaje de Flash que le pide permisos de cámara. Si usted puede verse y oÃrse, su navegador se ha configurado correctamente. Otros problemas potenciales se muestran a continuación. Haga clic en cada uno para encontrar una posible solución. +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = Triángulo +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Cambiar Cursor de Pizarra a Triángulo +ltbcustom.bbb.highlighter.toolbar.line = LÃnea +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Cambiar Cursor de pizarra a LÃnea +ltbcustom.bbb.highlighter.toolbar.text = Texto +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Cambiar Cursos de pizarra a texto +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Color de texto +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Támaño de fuente +bbb.caption.window.title = Subtitulos +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = Ninguno +bbb.caption.transcript.youowner = Usted +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = Opciones +bbb.caption.option.language = Idioma: +bbb.caption.option.language.tooltip = Seleccionar idioma de subtitulos +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = Apropiarse +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = Tipo de letra: +bbb.caption.option.fontfamily.tooltip = Tipo de letra +bbb.caption.option.fontsize = Tamaño de letra: +bbb.caption.option.fontsize.tooltip = Tamaño de letra +bbb.caption.option.backcolor = Color de fondo: +bbb.caption.option.backcolor.tooltip = Color de fondo +bbb.caption.option.textcolor = Color de texto: +bbb.caption.option.textcolor.tooltip = Color de texto + + +bbb.accessibility.clientReady = Listo + +bbb.accessibility.chat.chatBox.reachedFirst = Tu haz llegado al primer mensaje +bbb.accessibility.chat.chatBox.reachedLatest = Tu haz llegado al último mensaje +bbb.accessibility.chat.chatBox.navigatedFirst = Tu haz navegado al primer mensaje +bbb.accessibility.chat.chatBox.navigatedLatest = Tu haz navegado al último mensaje +bbb.accessibility.chat.chatBox.navigatedLatestRead = Tu haz navegado al mensaje leÃdo más reciente +bbb.accessibility.chat.chatwindow.input = Entrada del chat +bbb.accessibility.chat.chatwindow.audibleChatNotification = Sonido de Notificaciones de Chat +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = Por favor usar las teclas direccionales para navegar a traves de los mensajes del chat. + +bbb.accessibility.notes.notesview.input = Entradas de las notas + +bbb.shortcuthelp.title = Teclas de acceso directo +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimizar la ventana de accesos rápidos +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Mazimizar la ventana de accesos rápidos +bbb.shortcuthelp.closeBtn.accessibilityName = Cerrar la ventana de accesos rápidos +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = Accesos rápidos globales +bbb.shortcuthelp.dropdown.presentation = Accesos rápidos a la presentación +bbb.shortcuthelp.dropdown.chat = Acceso rápido al chat +bbb.shortcuthelp.dropdown.users = Acceso rápido a los usuarios +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = Acceso Rápido +bbb.shortcuthelp.headers.function = Función + +bbb.shortcutkey.general.minimize = 189 +bbb.shortcutkey.general.minimize.function = Minimizar ventana actual +bbb.shortcutkey.general.maximize = 187 +bbb.shortcutkey.general.maximize.function = Mazimizar ventana actual + +bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit.function = Desenfocar de la ventana de flash +bbb.shortcutkey.users.muteme = 77 +bbb.shortcutkey.users.muteme.function = Acticar o Desactivar el sonido de tu micrófono +bbb.shortcutkey.chat.chatinput = 73 +bbb.shortcutkey.chat.chatinput.function = Enfocar el campo de entrada del chat +bbb.shortcutkey.present.focusslide = 67 +bbb.shortcutkey.present.focusslide.function = Enfocar en la diapositiva de la presentación +bbb.shortcutkey.whiteboard.undo = 90 +bbb.shortcutkey.whiteboard.undo.function = Deshacer la última marca del pizarrón + +bbb.shortcutkey.focus.users = 49 +bbb.shortcutkey.focus.users.function = Mover enfoque a la venta de usuarios +bbb.shortcutkey.focus.video = 50 +bbb.shortcutkey.focus.video.function = Mover enfoque a la venta de videos +bbb.shortcutkey.focus.presentation = 51 +bbb.shortcutkey.focus.presentation.function = Mover enfoque a la ventana de presentación +bbb.shortcutkey.focus.chat = 52 +bbb.shortcutkey.focus.chat.function = Mover enfoque a la venta de chat +bbb.shortcutkey.focus.caption = 53 +bbb.shortcutkey.focus.caption.function = + +bbb.shortcutkey.share.desktop = 68 +bbb.shortcutkey.share.desktop.function = Abrir la ventana de compartir escritorio +bbb.shortcutkey.share.webcam = 66 +bbb.shortcutkey.share.webcam.function = Abrir ventana para compartir cámara + +bbb.shortcutkey.shortcutWindow = 72 +bbb.shortcutkey.shortcutWindow.function = Abrir/Enfocar a la venta de ayuda de accesos rápidos +bbb.shortcutkey.logout = 76 +bbb.shortcutkey.logout.function = Salir de esta sesión +bbb.shortcutkey.raiseHand = 82 +bbb.shortcutkey.raiseHand.function = Levantar la mano + +bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload.function = Subir presentación +bbb.shortcutkey.present.previous = 65 +bbb.shortcutkey.present.previous.function = Ir a la diapositiva anterior +bbb.shortcutkey.present.select = 83 +bbb.shortcutkey.present.select.function = Ver todas las diapositivas +bbb.shortcutkey.present.next = 69 +bbb.shortcutkey.present.next.function = Ir a la siguiente diapositiva +bbb.shortcutkey.present.fitWidth = 70 +bbb.shortcutkey.present.fitWidth.function = Ajustar diapositivas a lo ancho +bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage.function = Ajustar diapositivas en la página + +bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter.function = Hacer presentador a la persona seleccionada +bbb.shortcutkey.users.kick = 69 +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = 83 +bbb.shortcutkey.users.mute.function = Activar o Desactivar sonido de la persona seleccionada +bbb.shortcutkey.users.muteall = 65 +bbb.shortcutkey.users.muteall.function = Activar o Desactivar sonido a todos los usuarios +bbb.shortcutkey.users.muteAllButPres = 65 +bbb.shortcutkey.users.muteAllButPres.function = Silenciar a todos excepto al presentador +bbb.shortcutkey.users.breakoutRooms = 75 +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = 82 +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = 76 +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = 79 +bbb.shortcutkey.users.joinBreakoutRoom.function = + +bbb.shortcutkey.chat.focusTabs = 89 +bbb.shortcutkey.chat.focusTabs.function = Enfocar a las pestañas del chat +bbb.shortcutkey.chat.focusBox = 82 +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = 67 +bbb.shortcutkey.chat.changeColour.function = Enfocar en el seleccionador de color de la fuente +bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.sendMessage.function = Enviar mensaje del chat +bbb.shortcutkey.chat.closePrivate = 69 +bbb.shortcutkey.chat.closePrivate.function = Cerrar pestaña de chat privado +bbb.shortcutkey.chat.explanation = ---- +bbb.shortcutkey.chat.explanation.function = Para navegar en el mensaje, tu debes enfocar en la ventana del chat + +bbb.shortcutkey.chat.chatbox.advance = 40 +bbb.shortcutkey.chat.chatbox.advance.function = Navegar al siguiente mensaje +bbb.shortcutkey.chat.chatbox.goback = 38 +bbb.shortcutkey.chat.chatbox.goback.function = Navegar al mensaje anterior +bbb.shortcutkey.chat.chatbox.repeat = 32 +bbb.shortcutkey.chat.chatbox.repeat.function = Repetir el mensaje actual +bbb.shortcutkey.chat.chatbox.golatest = 39 +bbb.shortcutkey.chat.chatbox.golatest.function = Navegar al último mensaje +bbb.shortcutkey.chat.chatbox.gofirst = 37 +bbb.shortcutkey.chat.chatbox.gofirst.function = Navegar al primer mensaje +bbb.shortcutkey.chat.chatbox.goread = 75 +bbb.shortcutkey.chat.chatbox.goread.function = Navegar al mensaje leÃdo mas reciente +bbb.shortcutkey.chat.chatbox.debug = 71 +bbb.shortcutkey.chat.chatbox.debug.function = Tecla de acceso rápido para depurar temporalmente + +bbb.shortcutkey.caption.takeOwnership = 79 +bbb.shortcutkey.caption.takeOwnership.function = + +bbb.polling.startButton.tooltip = Iniciar una encuesta +bbb.polling.startButton.label = Iniciar encuesta +bbb.polling.publishButton.label = Publicar +bbb.polling.closeButton.label = Cerrar +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = Resultados de la encuesta en tiempo real +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = Agregar opciones para la encuesta +bbb.polling.respondersLabel.novotes = Esperando las respuestas +bbb.polling.respondersLabel.text = {0} Usuarios han respondido +bbb.polling.respondersLabel.finished = Terminado +bbb.polling.answer.Yes = Si +bbb.polling.answer.No = No +bbb.polling.answer.True = Verdadero +bbb.polling.answer.False = Falso +bbb.polling.answer.A = A +bbb.polling.answer.B = B +bbb.polling.answer.C = C +bbb.polling.answer.D = D +bbb.polling.answer.E = E +bbb.polling.answer.F = F +bbb.polling.answer.G = G +bbb.polling.results.accessible.header = Resultados de la encuesta +bbb.polling.results.accessible.answer = Respuesta {0} tenÃa {1} votos. + +bbb.publishVideo.startPublishBtn.labelText = Empezar a compartir +bbb.publishVideo.changeCameraBtn.labelText = Cambiar la configuración de la camara + +bbb.accessibility.alerts.madePresenter = Tu eres ahora el presentador. +bbb.accessibility.alerts.madeViewer = Tu eres ahora un espectador. + +bbb.shortcutkey.specialKeys.space = Barra espaciadora +bbb.shortcutkey.specialKeys.left = Flecha direccional izquierda +bbb.shortcutkey.specialKeys.right = Flecha direccional derecha +bbb.shortcutkey.specialKeys.up = Flecha direccional arriba +bbb.shortcutkey.specialKeys.down = Flecha direccional abajo +bbb.shortcutkey.specialKeys.plus = Mas +bbb.shortcutkey.specialKeys.minus = Menos + +bbb.toolbar.videodock.toolTip.closeAllVideos = Cerrar todos los videos +bbb.users.settings.lockAll = Bloquear a todos +bbb.users.settings.lockAllExcept = Bloquear todos menos presentador +bbb.users.settings.lockSettings = Bloquear espectadores ... +bbb.users.settings.breakoutRooms = Sesión de pequeños gupos... +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = Desbloquear a todos los espectadores +bbb.users.settings.roomIsLocked = Bloqueado por defecto +bbb.users.settings.roomIsMuted = Silenciado por defecto + +bbb.lockSettings.save = Aplicar +bbb.lockSettings.save.tooltip = Aplicar configuración de bloqueo +bbb.lockSettings.cancel = Cancelar +bbb.lockSettings.cancel.toolTip = Cerrar sin guardar + +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = Bloqueo moderador +bbb.lockSettings.privateChat = Chat privado +bbb.lockSettings.publicChat = Chat público +bbb.lockSettings.webcam = Cámara web +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = Micrófono +bbb.lockSettings.layout = Alineación de ventanas +bbb.lockSettings.title=Bloquear espectadores +bbb.lockSettings.feature=CaracterÃstica +bbb.lockSettings.locked=Bloqueado +bbb.lockSettings.lockOnJoin=Unirse + +bbb.users.breakout.breakoutRooms = Sesión de pequeños gupos +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = Calculando tiempo restante .... +bbb.users.breakout.closing = Cerrando +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = Sesiones +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = Sesión +bbb.users.breakout.timeLimit = LÃmite de tiempo +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = Minutos +bbb.users.breakout.record = Grabar +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = No asignado +bbb.users.breakout.dragAndDropToolTip = Consejo: Puedes arrastarr y soltar usuarios entre los cuartos +bbb.users.breakout.start = Iniciar +bbb.users.breakout.invite = +bbb.users.breakout.close = Cerrar +bbb.users.breakout.closeAllRooms = Cerrar todas las sesiones de pequeños grupos +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = Cerrar +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = Sesión +bbb.users.roomsGrid.users = Usuarios +bbb.users.roomsGrid.action = Acción +bbb.users.roomsGrid.transfer = Transferir audio +bbb.users.roomsGrid.join = Ingresar +bbb.users.roomsGrid.noUsers = No hay usuarios en esta sesión + +bbb.langSelector.default= + +bbb.alert.cancel = Cancelar +bbb.alert.ok = Correcto +bbb.alert.no = No +bbb.alert.yes = Si diff --git a/bigbluebutton-client/locale/es_CL/bbbResources.properties b/bigbluebutton-client/locale/es_CL/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/es_CL/bbbResources.properties +++ b/bigbluebutton-client/locale/es_CL/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/es_ES/bbbResources.properties b/bigbluebutton-client/locale/es_ES/bbbResources.properties index d8c01676c7124657b9779ba31e7fa7aec4bda816..b75e0c7b4606e35fe5c89fe51b86d3a87befb0c2 100644 --- a/bigbluebutton-client/locale/es_ES/bbbResources.properties +++ b/bigbluebutton-client/locale/es_ES/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Conectando con el servidor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = Cargando bbb.mainshell.statusProgress.cannotConnectServer = Lo sentimos, no es posible conectar con el servidor. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Abrir ventana de histórico @@ -10,17 +10,17 @@ bbb.mainshell.resetLayoutBtn.toolTip = Reiniciar diseño de ventanas bbb.mainshell.notification.tunnelling = Túnel bbb.mainshell.notification.webrtc = Audio WebRTC bbb.mainshell.fullscreenBtn.toolTip = Alternar pantalla completa -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.quote.sentence.1 = No hay secretos para el éxito. Es el resultado de prepararse, trabajar duro y aprender del fracaso. bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Dime y lo olvido. Enséñame y lo recuerdo. Involucrarme y aprendo. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = Aprendà el valor del trabajo duro trabajando duro. bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = Desarrolla una pasión por aprender. Si lo haces, nunca dejarás de crecer. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = Investigar es crear conocimiento nuevo. bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = Puede que tenga una traducción obsoleta de BigBlueButton. +bbb.oldlocalewindow.reminder1 = Puede ser que tenga una traducción obsoleta de BigBlueButton. bbb.oldlocalewindow.reminder2 = Por favor, vacÃe el caché de su navegador, e inténtelo de nuevo. bbb.oldlocalewindow.windowTitle = Aviso: traducción de idioma obsoleta bbb.audioSelection.title = ¿Cómo quiere conectarse al audio? @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Conectando bbb.micSettings.webrtc.transferring = Transfiriendo bbb.micSettings.webrtc.endingecho = Uniéndose al audio bbb.micSettings.webrtc.endedecho = Test de Eco finalizado. +bbb.micPermissions.message.browserhttp = Este servidor no está configurado con SSL. Por ello, {0} inhabilita la compartición de tu micrófono. bbb.micPermissions.firefox.title = Permisos de Micrófono de Firefox bbb.micPermissions.firefox.message = Click permite a Firefox utilizar el micrófono. bbb.micPermissions.chrome.title = Permisos de Micrófono de Chrome @@ -100,7 +101,7 @@ bbb.inactivityWarning.cancel = Cancelar bbb.mainToolbar.helpBtn = Ayuda bbb.mainToolbar.logoutBtn = Desconectar bbb.mainToolbar.logoutBtn.toolTip = Salir -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | Reinicie el reloj para forzar la salida bbb.mainToolbar.langSelector = Seleccione idioma bbb.mainToolbar.settingsBtn = Configuración bbb.mainToolbar.settingsBtn.toolTip = Abrir configuración @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Esta sesión no puede ser grabada bbb.mainToolbar.recordBtn.confirm.title = Confirme grabación bbb.mainToolbar.recordBtn.confirm.message.start = ¿Está seguro de querer empezar a grabar la sesión? bbb.mainToolbar.recordBtn.confirm.message.stop = ¿Está seguro de querer detener la grabación de la sesión? -bbb.mainToolbar.recordBtn..notification.title = Notificación de grabación -bbb.mainToolbar.recordBtn..notification.message1 = Puede grabar esta reunión. -bbb.mainToolbar.recordBtn..notification.message2 = Debe pulsar el botón Iniciar/Detener Grabación de la barra de tÃtulo para iniciar/detener la grabación. +bbb.mainToolbar.recordBtn.notification.title = Notificación de grabación +bbb.mainToolbar.recordBtn.notification.message1 = Puede grabar esta reunión. +bbb.mainToolbar.recordBtn.notification.message2 = Debe pulsar el botón Iniciar/Detener Grabación de la barra de tÃtulo para iniciar/detener la grabación. bbb.mainToolbar.recordingLabel.recording = (Grabando) bbb.mainToolbar.recordingLabel.notRecording = No se está grabando bbb.waitWindow.waitMessage.message = Eres un invitado. Porfavor espera que un moderador te apruebe @@ -183,7 +184,7 @@ bbb.users.muteMeBtnTxt.muted = Silenciado bbb.users.usersGrid.contextmenu.exportusers = Copiar nombres de usuario bbb.users.usersGrid.accessibilityName = Lista de asistentes. Usar las teclas de dirección para navegar. bbb.users.usersGrid.nameItemRenderer = Nombre -bbb.users.usersGrid.nameItemRenderer.youIdentifier = tu +bbb.users.usersGrid.nameItemRenderer.youIdentifier = usted bbb.users.usersGrid.statusItemRenderer = Estado bbb.users.usersGrid.statusItemRenderer.changePresenter = Haga click para cambiar a presentador bbb.users.usersGrid.statusItemRenderer.presenter = Presentador @@ -212,9 +213,9 @@ bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam compartida bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Hacer click para ver la cámara bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Hacer click para activar el audio al asistente bbb.users.usersGrid.mediaItemRenderer.pushToMute = Hacer click para desactivar el audio al asistente -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Bloqueado {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desbloqueado {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Expulsar al asistente +bbb.users.usersGrid.mediaItemRenderer.pushToLock = Bloquear {0} +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desbloquear {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = Expulsar {0} bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam compartida bbb.users.usersGrid.mediaItemRenderer.micOff = Micrófono inactivo bbb.users.usersGrid.mediaItemRenderer.micOn = Micrófono activo @@ -246,6 +247,7 @@ bbb.presentation.fitToWidth.toolTip = Ajustar presentación a lo ancho bbb.presentation.fitToPage.toolTip = Ajustar presentación a la página bbb.presentation.uploadPresBtn.toolTip = Cargar documento para la presentación. bbb.presentation.downloadPresBtn.toolTip = Descargar presentaciones +bbb.presentation.poll.response = Responder a la encuesta bbb.presentation.backBtn.toolTip = Diapositiva anterior. bbb.presentation.btnSlideNum.accessibilityName = Diapositiva {0} de {1} bbb.presentation.btnSlideNum.toolTip = Hacer click para seleccionar una diapositiva @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Carga completa. Por favor espere mientras conv bbb.presentation.uploaded = cargado. bbb.presentation.document.supported = El documento cargado está soportado. Comenzando la conversión... bbb.presentation.document.converted = Documento convertido con éxito. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Intente convertir el documento a PDF y cargarlo de nuevo bbb.presentation.error.document.convert.invalid = Por favor convierta este documento a PDF primero. bbb.presentation.error.io = Error E/S: contacte con el Administrador. bbb.presentation.error.security = Error de seguridad: por favor, contacte con el Administrador. @@ -283,18 +285,18 @@ bbb.fileupload.uploadBtn = Cargar bbb.fileupload.uploadBtn.toolTip = Cargar archivo bbb.fileupload.deleteBtn.toolTip = Eliminar presentación bbb.fileupload.showBtn = Mostrar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Intenta con otro archivo bbb.fileupload.showBtn.toolTip = Mostrar presentación -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Cerrar +bbb.fileupload.close.accessibilityName = Cerrar la ventana para cargar archivo bbb.fileupload.genThumbText = Generando miniaturas... bbb.fileupload.progBarLbl = Progreso: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. +bbb.fileupload.fileFormatHint = Puede cargar cualquier documento de Office o Portable Document Format (PDF). Obtendrá mejores resultados con PDF. bbb.fileupload.letUserDownload = Habilitar descarga de presentación bbb.fileupload.letUserDownload.tooltip = Haga click aqui si quiere que los otros usuarios puedan descargar su presentación bbb.filedownload.title = Descargar las presentaciones -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window +bbb.filedownload.close.tooltip = Cerrar +bbb.filedownload.close.accessibilityName = Cerrar ventana para descargar archivo bbb.filedownload.fileLbl = Selecciona el fichero a descargar bbb.filedownload.downloadBtn = Descargar bbb.filedownload.downloadBtn.toolTip = Descargar presentación @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = Guardar chat bbb.chat.saveBtn.accessibilityName = Guardar el chat en un fichero bbb.chat.saveBtn.label = Guardar bbb.chat.save.complete = Chat fue guardado con éxito +bbb.chat.save.ioerror = Chat no guardado. Inténtalo de nuevo. bbb.chat.save.filename = Chat público bbb.chat.copyBtn.toolTip = Copiar chat bbb.chat.copyBtn.accessibilityName = Copiar el chat al portapapeles @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Cerrar la ventana de configuraciones de bbb.video.publish.closeBtn.label = Cancelar bbb.video.publish.titleBar = Ventana de iniciación de la cámara web bbb.video.streamClose.toolTip = Cerrar emisión de: {0} +bbb.video.message.browserhttp = Este servidor no está configurado con SSL. Por ello, {0} impide que compartas tu webcam. bbb.screensharePublish.title = Compartir Pantalla: Previsualización del Presentador bbb.screensharePublish.pause.tooltip = Pausar la compartición de pantalla bbb.screensharePublish.pause.label = Pausa @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = Parar de Compartir tu Pantalla bbb.toolbar.sharednotes.toolTip = Abrir notas compartidas bbb.toolbar.video.toolTip.start = Compartir su Cámara bbb.toolbar.video.toolTip.stop = Dejar de compartir su Cámara +bbb.layout.addButton.label = Añadir bbb.layout.addButton.toolTip = Añadir el diseño personalizado a la lista bbb.layout.overwriteLayoutName.title = Sobrescribir el diseño bbb.layout.overwriteLayoutName.text = Nombre se encuentra en uso. ¿Quiere sobrescribirlo? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * Diseño a medida bbb.layout.combo.customName = Diseño a medida bbb.layout.combo.remote = Remota bbb.layout.window.name = Nombre del diseño +bbb.layout.window.close.tooltip = Cerrar +bbb.layout.window.close.accessibilityName = Cerrar la ventana de añadir disposición bbb.layout.save.complete = Disposiciones guardadas con éxito +bbb.layout.save.ioerror = Disposición no guardada. Inténtalo de nuevo. bbb.layout.load.complete = Disposiciones cargadas con éxito bbb.layout.load.failed = No se pudieron cargar los diseños bbb.layout.sync = Has sido enviado a "todos los participantes" @@ -468,7 +476,7 @@ bbb.layout.name.closedcaption = SubtÃtulos bbb.layout.name.videochat = Chat de Video bbb.layout.name.webcamsfocus = Reunión por Webcam bbb.layout.name.presentfocus = Reunión de Presentación -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Presentación + Usuarios bbb.layout.name.lectureassistant = Asistente de Conferencia bbb.layout.name.lecture = Conferencia bbb.layout.name.sharednotes = Notas compartidas @@ -493,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Dibujar un color en la pizarra bbb.highlighter.toolbar.thickness = Modificar el grosor de lÃnea bbb.highlighter.toolbar.thickness.accessibilityName = Dibujar grosor en la pizarra bbb.highlighter.toolbar.multiuser = Dibujo multiusuarios -bbb.logout.title = Desconectado bbb.logout.button.label = OK bbb.logout.appshutdown = La aplicación de servidor ha sido detenida bbb.logout.asyncerror = Ha ocurrido un error asÃncrono @@ -505,9 +512,11 @@ bbb.logout.unknown = Se ha perdido la conexión con el servidor bbb.logout.guestkickedout = El moderador no te permitió ingresar a esta sesión bbb.logout.usercommand = Ha desconectado de la conferencia bbb.logour.breakoutRoomClose = La ventana de tu navegador se cerrará -bbb.logout.ejectedFromMeeting = Un moderador te ha expulsado de la reunión. +bbb.logout.ejectedFromMeeting = Has sido expulsado de la reunión bbb.logout.refresh.message = Si esta desconexión no estaba planificada, pulse el botón para reconectar. bbb.logout.refresh.label = Reconectar +bbb.logout.feedback.hint = ¿Cómo podemos mejorar BigBlueButton? +bbb.logout.feedback.label = Nos encantarÃa escuchar tu opinión sobre BigBlueButton (opcional) bbb.settings.title = Configuración bbb.settings.ok = OK bbb.settings.cancel = Cancelar @@ -532,32 +541,33 @@ bbb.notes.saveBtn = Guardar bbb.notes.saveBtn.toolTip = Guardar Nota bbb.sharedNotes.title = Notas compartidas bbb.sharedNotes.quickLink.label = Ventana de notas compartidas -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window +bbb.sharedNotes.createNoteWindow.label = Nombre de nota compartida +bbb.sharedNotes.createNoteWindow.close.tooltip = Cerrar +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Cerrar creación de nueva nota compartida bbb.sharedNotes.typing.single = {0} está tecleando... bbb.sharedNotes.typing.double = {0} y {1} estan tecleando... bbb.sharedNotes.typing.multiple = Varias personas están tecleando ... bbb.sharedNotes.save.toolTip = Guardar notas en un fichero bbb.sharedNotes.save.complete = Notas guardadas con éxito +bbb.sharedNotes.save.ioerror = Notas no guardadas. Inténtalo de nuevo. bbb.sharedNotes.save.htmlLabel = Dar formato al texto (.html) bbb.sharedNotes.save.txtLabel = Texto (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note +bbb.sharedNotes.new.label = Crear +bbb.sharedNotes.new.toolTip = Crear un bloque adicional de notas compartidas +bbb.sharedNotes.limit.label = El lÃmite para notas compartidas ha sido alcanzado +bbb.sharedNotes.clear.label = Limpiar esta nota compartida bbb.sharedNotes.undo.toolTip = Deshacer modificación bbb.sharedNotes.redo.toolTip = Rehacer modificación bbb.sharedNotes.toolbar.toolTip = Barra de herramientas para formato de texto -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? +bbb.sharedNotes.settings.toolTip = Configuración de notas compartidas +bbb.sharedNotes.clearWarning.title = Limpiar notas compartidas +bbb.sharedNotes.clearWarning.message = Esta acción limpiara las notas compartidas en esta ventana para todos los usuarios y no hay forma de deshacer la operación. Esta seguro de querer limpiar estas notas compartidas? bbb.sharedNotes.additionalNotes.closeWarning.title = Cerrando notas compartidas bbb.sharedNotes.additionalNotes.closeWarning.message = Esta acción destruirá las notas en la ventana afectando a todos los usuarios y no hay forma de recuperarlas. ¿Esta seguro de cerrar estas notas? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.messageLengthWarning.title = El lÃmite para cambio de caracteres se ha exedido +bbb.sharedNotes.messageLengthWarning.text = El cambio excede el lÃmite por {0}. Intente haciendo un cambio más pequelo. +bbb.sharedNotes.remaining.tooltip = Espacio disponible restante en notas compartidas +bbb.sharedNotes.full.tooltip = El lÃmite se a alcanzado (intente eliminando parte del texto) bbb.settings.deskshare.instructions = Presione Permitir en el aviso para verificar que la compartición del escritorio está funcionando correctamente para usted bbb.settings.deskshare.start = Comprobar Compartición de Escritorio bbb.settings.voice.volume = Actividad del micrófono @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajustar diapositivas en la página bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Hacer presentador a la persona seleccionada bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Expulsar a la persona seleccionada de la reunión +bbb.shortcutkey.users.kick.function = Expulsar a la persona seleccionada de la reunión bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activar o Desactivar sonido de la persona seleccionada bbb.shortcutkey.users.muteall = 65 @@ -710,13 +720,13 @@ bbb.shortcutkey.users.muteall.function = Activar o Desactivar sonido a todos los bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Silenciar a todos excepto al presentador bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Ventana de Salas de Espera +bbb.shortcutkey.users.breakoutRooms.function = Ventana de salas de grupo bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Poner el foco en la lista de salas de espera +bbb.shortcutkey.users.focusBreakoutRooms.function = Poner el foco en la lista de salas de grupo bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Escuchar la sala de espera seleccionada +bbb.shortcutkey.users.listenToBreakoutRoom.function = Escuchar la sala de grupo seleccionada bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Unirse a la sala de espera seleccionada +bbb.shortcutkey.users.joinBreakoutRoom.function = Unirse a la sala de grupo seleccionada bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Enfocar a las pestañas del chat @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Publicar bbb.polling.closeButton.label = Cerrar bbb.polling.customPollOption.label = Encuesta a Medida... bbb.polling.pollModal.title = Resultados en vivo +bbb.polling.pollModal.hint = Deja esta ventana abierta para permitir que los estudiantes puedan contestar a la encuesta. Pulsar el botón Publicar o Cerrar finalizará la encuesta. bbb.polling.customChoices.title = Opciones de la encuesta bbb.polling.respondersLabel.novotes = Esperando respuestas bbb.polling.respondersLabel.text = {0} Usuarios han respondido @@ -792,7 +803,7 @@ bbb.users.settings.lockAll = Bloquear a todos los usuarios bbb.users.settings.lockAllExcept = Bloquear usuarios salvo el presentador bbb.users.settings.lockSettings = Bloquear Audiencia ... bbb.users.settings.breakoutRooms = Sala de grupo ... -bbb.users.settings.sendBreakoutRoomsInvitations = Enviar Invitaciones a salas de espera ... +bbb.users.settings.sendBreakoutRoomsInvitations = Enviar invitaciones a salas de grupo ... bbb.users.settings.unlockAll = Desbloquear toda la audiencia bbb.users.settings.roomIsLocked = Bloqueado por defecto bbb.users.settings.roomIsMuted = Silenciado por defecto @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Aplicar ajustes de bloqueo bbb.lockSettings.cancel = Cancelar bbb.lockSettings.cancel.toolTip = Cerrar ventana sin guardar +bbb.lockSettings.hint = Estas opciones te permiten restringir ciertas opciones disponibles a los visitantes, como bloquear su capacidad parta abrir chats privados. (Los moderadores no se ven afectados por estas restricciones) bbb.lockSettings.moderatorLocking = Bloqueo de moderador bbb.lockSettings.privateChat = Chat privado bbb.lockSettings.publicChat = Chat público bbb.lockSettings.webcam = Cámara +bbb.lockSettings.webcamsOnlyForModerator = Ocultar las webcam de otros asistentes bbb.lockSettings.microphone = Micrófono bbb.lockSettings.layout = Diseño bbb.lockSettings.title=Bloquear audiencia @@ -814,19 +827,20 @@ bbb.lockSettings.locked=Bloqueado bbb.lockSettings.lockOnJoin=Bloquear al unirse bbb.users.breakout.breakoutRooms = Salas de grupo -bbb.users.breakout.updateBreakoutRooms = Actualizar salas de espera -bbb.users.breakout.timer.toolTip = Tiempo restante para las salas de espera +bbb.users.breakout.updateBreakoutRooms = Actualizar salas de grupo +bbb.users.breakout.timerForRoom.toolTip = Tiempo restante en esta sala de espera +bbb.users.breakout.timer.toolTip = Tiempo restante para las salas de grupo bbb.users.breakout.calculatingRemainingTime = Calculando tiempo restante... bbb.users.breakout.closing = Cerrando +bbb.users.breakout.closewarning.text = Las salas de espera se cerrarán en un minuto. bbb.users.breakout.rooms = Salas bbb.users.breakout.roomsCombo.accessibilityName = Número de salas a crear bbb.users.breakout.room = Sala -bbb.users.breakout.randomAssign = Asignar usuarios de forma aleatoria bbb.users.breakout.timeLimit = LÃmite de tiempo bbb.users.breakout.durationStepper.accessibilityName = LÃmite de tiempo en minutos bbb.users.breakout.minutes = Minutos bbb.users.breakout.record = Grabar -bbb.users.breakout.recordCheckbox.accessibilityName = Grabar salas de espera +bbb.users.breakout.recordCheckbox.accessibilityName = Grabar salas de grupo bbb.users.breakout.notAssigned = No asignado bbb.users.breakout.dragAndDropToolTip = Truco: puedes arrastrar y soltar usuarios entre salas bbb.users.breakout.start = Iniciar @@ -834,13 +848,13 @@ bbb.users.breakout.invite = Invitar bbb.users.breakout.close = Cerrar bbb.users.breakout.closeAllRooms = Cerrar todas las salas de grupo bbb.users.breakout.insufficientUsers = Usuarios insuficientes. Debes situar al menos a un usuario en una sala de grupo -bbb.users.breakout.confirm = Ingresar a una sesión de pequeños grupos -bbb.users.breakout.invited = Usted ha sido invitado a ingresar a una sesión de pequeños grupos -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. +bbb.users.breakout.confirm = Ingresar a una sala de grupo +bbb.users.breakout.invited = Usted ha sido invitado a ingresar a una sala de grupo +bbb.users.breakout.accept = Al aceptarse, abandonará automáticamente el audio y video. bbb.users.breakout.joinSession = Ingresar a la sesión -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window +bbb.users.breakout.joinSession.accessibilityName = Ingresar a la sala de grupos +bbb.users.breakout.joinSession.close.tooltip = Cerrar +bbb.users.breakout.joinSession.close.accessibilityName = Cerrar ingreso a la sala de grupo bbb.users.breakout.youareinroom = Se encuentra en sesión de pequeños grupos {0} bbb.users.roomsGrid.room = Sala bbb.users.roomsGrid.users = Usuarios @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Unirse bbb.users.roomsGrid.noUsers = Sin usuarios en esta sala bbb.langSelector.default=Idioma por defecto -bbb.langSelector.ar=Arabe -bbb.langSelector.az_AZ=Azerbaiyano -bbb.langSelector.eu_EU=Basco -bbb.langSelector.bn_BN=Bengalà -bbb.langSelector.bg_BG=Bulgaro -bbb.langSelector.ca_ES=Catalán -bbb.langSelector.zh_CN=Chino (Simplificado) -bbb.langSelector.zh_TW=Chino (Tradicional) -bbb.langSelector.hr_HR=Croata -bbb.langSelector.cs_CZ=Checo -bbb.langSelector.da_DK=Danés -bbb.langSelector.nl_NL=Holandés -bbb.langSelector.en_US=Inglés -bbb.langSelector.et_EE=Estonio -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finlandés -bbb.langSelector.fr_FR=Francés -bbb.langSelector.fr_CA=Francés (Canadiense) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=Alemán -bbb.langSelector.el_GR=Griego -bbb.langSelector.he_IL=Hebreo -bbb.langSelector.hu_HU=Hungaro -bbb.langSelector.id_ID=Indonesio -bbb.langSelector.it_IT=Italiano -bbb.langSelector.ja_JP=Japonés -bbb.langSelector.ko_KR=Coreano -bbb.langSelector.lv_LV=Letón -bbb.langSelector.lt_LT=Lituano -bbb.langSelector.mn_MN=Mongol -bbb.langSelector.ne_NE=Nepalà -bbb.langSelector.no_NO=Noruego -bbb.langSelector.pl_PL=Polaco -bbb.langSelector.pt_BR=Portugues (Brasileño) -bbb.langSelector.pt_PT=Portugues -bbb.langSelector.ro_RO=Rumano -bbb.langSelector.ru_RU=Ruso -bbb.langSelector.sr_SR=Serbio (cirÃlico) -bbb.langSelector.sr_RS=Serbio (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Eslovaco -bbb.langSelector.sl_SL=Esloveno -bbb.langSelector.es_ES=Español -bbb.langSelector.es_LA=Español (América Latina) -bbb.langSelector.sv_SE=Sueco -bbb.langSelector.th_TH=Tailandés -bbb.langSelector.tr_TR=Turco -bbb.langSelector.uk_UA=Ucraniano -bbb.langSelector.vi_VN=Vietnamita -bbb.langSelector.cy_GB=Galés -bbb.langSelector.oc=Occitano + +bbb.alert.cancel = Cancelar +bbb.alert.ok = OK +bbb.alert.no = No +bbb.alert.yes = Si diff --git a/bigbluebutton-client/locale/es_LA/bbbResources.properties b/bigbluebutton-client/locale/es_LA/bbbResources.properties index c34243f82b5f733113a4e1853c47d3a203618af8..fe87e9ff650ad8d4247056e1653ed10d244c4d94 100644 --- a/bigbluebutton-client/locale/es_LA/bbbResources.properties +++ b/bigbluebutton-client/locale/es_LA/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Conectando al servidor -bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.loading = Cargando bbb.mainshell.statusProgress.cannotConnectServer = Lo sentimos, no se puede conectar al servidor. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (versión {0}) bbb.mainshell.logBtn.toolTip = Abrir la ventana de Registro (Log) @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Conectando bbb.micSettings.webrtc.transferring = transfiriendo bbb.micSettings.webrtc.endingecho = Conectandose a audio bbb.micSettings.webrtc.endedecho = La prueba de eco terminada. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Permisos de micrófono en Firefox bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Permisos de micrófono en Chrome @@ -96,7 +97,7 @@ bbb.webrtcWarning.connection.reestablished = Conexión WebRTC reestablecida bbb.inactivityWarning.title = bbb.inactivityWarning.message = bbb.shuttingDown.message = -bbb.inactivityWarning.cancel = +bbb.inactivityWarning.cancel = Cancelar bbb.mainToolbar.helpBtn = Ayuda bbb.mainToolbar.logoutBtn = Cerrar sesión bbb.mainToolbar.logoutBtn.toolTip = Cerrar sesión @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Confirmar grabación bbb.mainToolbar.recordBtn.confirm.message.start = ¿Está seguro que desea iniciar la grabación de la sesión? bbb.mainToolbar.recordBtn.confirm.message.stop = ¿Está seguro que desea detener la grabación de la sesión? -bbb.mainToolbar.recordBtn..notification.title = Notificación de grabación -bbb.mainToolbar.recordBtn..notification.message1 = Usted puede grabar esta sesión. -bbb.mainToolbar.recordBtn..notification.message2 = Debe hacer click en el botón Iniciar/Detener Grabación en la barra de tÃtulo para empezar o dejar de grabar. +bbb.mainToolbar.recordBtn.notification.title = Notificación de grabación +bbb.mainToolbar.recordBtn.notification.message1 = Usted puede grabar esta sesión. +bbb.mainToolbar.recordBtn.notification.message2 = Debe hacer click en el botón Iniciar/Detener Grabación en la barra de tÃtulo para empezar o dejar de grabar. bbb.mainToolbar.recordingLabel.recording = (Grabación) bbb.mainToolbar.recordingLabel.notRecording = No grabando bbb.waitWindow.waitMessage.message = @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Activar audio a {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Desactivar audio a {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Bloquear {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desbloquear {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Expulsar {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Compartiendo cámara Web bbb.users.usersGrid.mediaItemRenderer.micOff = Micrófono apagado bbb.users.usersGrid.mediaItemRenderer.micOn = Micrófono encendido @@ -256,7 +257,7 @@ bbb.presentation.uploadcomplete = Carga completa. Por favor espere mientras se c bbb.presentation.uploaded = cargado. bbb.presentation.document.supported = El documento cargado es soportado. Iniciando la conversión... bbb.presentation.document.converted = La conversión del documento de Office fué exitosa. -bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.failed = Intenta convertir el archivo a PDF y reintenta subirlo bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Error de comunicación: Por favor contacte al administrador. bbb.presentation.error.security = Error de seguridad: Por favor contacte al administrador. @@ -286,7 +287,7 @@ bbb.fileupload.deleteBtn.toolTip = Borrar presentación bbb.fileupload.showBtn = Mostrar bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Mostrar Presentación -bbb.fileupload.close.tooltip = +bbb.fileupload.close.tooltip = Cerrar bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Generando vistas en miniatura.. bbb.fileupload.progBarLbl = Progreso: @@ -294,7 +295,7 @@ bbb.fileupload.fileFormatHint = bbb.fileupload.letUserDownload = bbb.fileupload.letUserDownload.tooltip = bbb.filedownload.title = -bbb.filedownload.close.tooltip = +bbb.filedownload.close.tooltip = Cerrar bbb.filedownload.close.accessibilityName = bbb.filedownload.fileLbl = bbb.filedownload.downloadBtn = @@ -378,7 +379,7 @@ bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = No puedes maximizar esta ventana. bbb.screensharePublish.closeBtn.toolTip = Dejar de compartir y cerrar bbb.screensharePublish.closeBtn.accessibilityName = -bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.toolTip = Minimizar bbb.screensharePublish.minimizeBtn.accessibilityName = bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = bbb.screensharePublish.commonHelpText.text = @@ -421,7 +422,7 @@ bbb.screensharePublish.jwsCrashed.label = bbb.screensharePublish.commonErrorMessage.label = bbb.screensharePublish.tunnelingErrorMessage.one = bbb.screensharePublish.tunnelingErrorMessage.two = -bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.cancelButton.label = Cancelar bbb.screensharePublish.startButton.label = Iniciar bbb.screensharePublish.stopButton.label = bbb.screensharePublish.stopButton.toolTip = @@ -434,12 +435,12 @@ bbb.screensharePublish.WebRTCUseJavaButton.label = bbb.screensharePublish.WebRTCVideoLoading.label = bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Compartir escritorio -bbb.screenshareView.fitToWindow = +bbb.screenshareView.fitToWindow = Ajustarse a la pantalla bbb.screenshareView.actualSize = bbb.screenshareView.minimizeBtn.accessibilityName = bbb.screenshareView.maximizeRestoreBtn.accessibilityName = bbb.screenshareView.closeBtn.accessibilityName = -bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.start = Habilitar el audio (Micrófono o solo escuchar) bbb.toolbar.phone.toolTip.stop = Dejar de compartir micrófono bbb.toolbar.phone.toolTip.mute = Dejar de escuchar la conferencia bbb.toolbar.phone.toolTip.unmute = Empezar a escuchar la conferencia @@ -449,7 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = Dejar de compartir escritorio bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Compartir su cámara Web bbb.toolbar.video.toolTip.stop = Dejar de compartir su cámara Web -bbb.layout.addButton.label = +bbb.layout.addButton.label = Agregar bbb.layout.addButton.toolTip = Añadir el diseño personalizado a la lista bbb.layout.overwriteLayoutName.title = bbb.layout.overwriteLayoutName.text = @@ -463,7 +464,7 @@ bbb.layout.combo.custom = *Diseño personalizado bbb.layout.combo.customName = Diseño personalizado bbb.layout.combo.remote = Remoto bbb.layout.window.name = -bbb.layout.window.close.tooltip = +bbb.layout.window.close.tooltip = Cerrar bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Los diseños fueron guardados exitosamente bbb.layout.save.ioerror = @@ -500,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Dibujar un color en la pizarra bbb.highlighter.toolbar.thickness = Cambiar Grosor bbb.highlighter.toolbar.thickness.accessibilityName = Dibujar grosor en la pizarra bbb.highlighter.toolbar.multiuser = -bbb.logout.title = Sesión terminada bbb.logout.button.label = OK bbb.logout.appshutdown = El servidor de aplicaciones ha sido apagado bbb.logout.asyncerror = Un Error de Asincronismo ha ocurrido @@ -512,12 +512,14 @@ bbb.logout.unknown = Su cliente ha perdido conexión con el servidor bbb.logout.guestkickedout = bbb.logout.usercommand = Usted ha salido de la conferencia bbb.logour.breakoutRoomClose = -bbb.logout.ejectedFromMeeting = Un moderador te ha sacado de la conferencia +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Si esta desconexión no estaba planificada, pulse el botón para reconectar. bbb.logout.refresh.label = Reconectar +bbb.logout.feedback.hint = +bbb.logout.feedback.label = bbb.settings.title = -bbb.settings.ok = -bbb.settings.cancel = +bbb.settings.ok = Correcto +bbb.settings.cancel = Cancelar bbb.settings.btn.toolTip = bbb.logout.confirm.title = Confirmar Cerrar Sesión bbb.logout.confirm.message = ¿Esta seguro que desea cerrar sesión? @@ -540,7 +542,7 @@ bbb.notes.saveBtn.toolTip = Guardar Nota bbb.sharedNotes.title = bbb.sharedNotes.quickLink.label = bbb.sharedNotes.createNoteWindow.label = -bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.tooltip = Cerrar bbb.sharedNotes.createNoteWindow.close.accessibilityName = bbb.sharedNotes.typing.single = bbb.sharedNotes.typing.double = @@ -710,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajustar diapositivas en la página bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Hacer presentador a la persona seleccionada bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Expulsar a la personala seleccionada de la sesión +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activar o Desactivar sonido de la persona seleccionada bbb.shortcutkey.users.muteall = 65 @@ -811,10 +813,12 @@ bbb.lockSettings.save.tooltip = Aplicar configuración de bloqueo bbb.lockSettings.cancel = Cancelar bbb.lockSettings.cancel.toolTip = Cerrar sin guardar +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Bloqueo moderador bbb.lockSettings.privateChat = Chat privado bbb.lockSettings.publicChat = Chat público bbb.lockSettings.webcam = Cámara web +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Micrófono bbb.lockSettings.layout = Alineación de ventanas bbb.lockSettings.title=Bloquear espectadores @@ -826,19 +830,19 @@ bbb.users.breakout.breakoutRooms = Sesión de pequeños gupos bbb.users.breakout.updateBreakoutRooms = bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = -bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.calculatingRemainingTime = Calculando tiempo restante .... bbb.users.breakout.closing = Cerrando +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Sesiones bbb.users.breakout.roomsCombo.accessibilityName = bbb.users.breakout.room = Sesión -bbb.users.breakout.randomAssign = bbb.users.breakout.timeLimit = LÃmite de tiempo bbb.users.breakout.durationStepper.accessibilityName = bbb.users.breakout.minutes = Minutos bbb.users.breakout.record = Grabar bbb.users.breakout.recordCheckbox.accessibilityName = bbb.users.breakout.notAssigned = No asignado -bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.dragAndDropToolTip = Consejo: Puedes arrastarr y soltar usuarios entre los cuartos bbb.users.breakout.start = Iniciar bbb.users.breakout.invite = bbb.users.breakout.close = Cerrar @@ -849,7 +853,7 @@ bbb.users.breakout.invited = bbb.users.breakout.accept = bbb.users.breakout.joinSession = bbb.users.breakout.joinSession.accessibilityName = -bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.tooltip = Cerrar bbb.users.breakout.joinSession.close.accessibilityName = bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Sesión @@ -860,3 +864,8 @@ bbb.users.roomsGrid.join = Ingresar bbb.users.roomsGrid.noUsers = No hay usuarios en esta sesión bbb.langSelector.default= + +bbb.alert.cancel = Cancelar +bbb.alert.ok = Correcto +bbb.alert.no = No +bbb.alert.yes = Si diff --git a/bigbluebutton-client/locale/et_EE/bbbResources.properties b/bigbluebutton-client/locale/et_EE/bbbResources.properties index 8331505cd2b35a66772267d693048e31f3c1b3e2..13467f43ed4dd7bdfccc4cfba7174a01a832307f 100644 --- a/bigbluebutton-client/locale/et_EE/bbbResources.properties +++ b/bigbluebutton-client/locale/et_EE/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Ãœhendun serveriga -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Vabandust, aga serveriga ühendumine ebaõnnestus. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Ava logide aken bbb.mainshell.meetingNotFound = Ei leidnud kohtumist bbb.mainshell.invalidAuthToken = Vigane autentimise võti bbb.mainshell.resetLayoutBtn.toolTip = Lähtesta paigutus bbb.mainshell.notification.tunnelling = Tunneldamine bbb.mainshell.notification.webrtc = WebRTC heli -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Sinu BigBlueButton tõlked võivad olla vananenud. bbb.oldlocalewindow.reminder2 = Palun tühjenda oma brauseri vahemälu ja proovi uuesti. bbb.oldlocalewindow.windowTitle = Hoiatus: tõlked on vananenud @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Katkesta bbb.micSettings.connectingtoecho = Ãœhendun bbb.micSettings.connectingtoecho.error = Kaja-testi viga: palun võta ühendust administraatoriga. bbb.micSettings.cancel.toolTip = Katkesta audiokonverentsiga liitumine -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Heli sätted. Fookus jääb sellele aknale seni kuni aken suletakse. bbb.micSettings.webrtc.title = WebRTC tugi bbb.micSettings.webrtc.capableBrowser = Sinu brauser toetab WebRTCd. @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Ãœhendun bbb.micSettings.webrtc.transferring = Annan üle bbb.micSettings.webrtc.endingecho = Liitun heliga bbb.micSettings.webrtc.endedecho = Kaja-test on lõpetatud. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox mikrofoni õigused -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome mikrofoni õigused -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Heli hoiatus bbb.micWarning.joinBtn.label = Liitu ikkagi bbb.micWarning.testAgain.label = Testi uuesti @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC kaja-test lõppes ootam bbb.webrtcWarning.connection.dropped = WebRTC ühendus on katkestatud bbb.webrtcWarning.connection.reconnecting = Proovin uuesti ühenduda bbb.webrtcWarning.connection.reestablished = WebRTC ühendus on taastatud -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Abi bbb.mainToolbar.logoutBtn = Logi välja bbb.mainToolbar.logoutBtn.toolTip = Logi välja -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Vali keel bbb.mainToolbar.settingsBtn = Sätted bbb.mainToolbar.settingsBtn.toolTip = Ava sätted @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Alusta salvestamist bbb.mainToolbar.recordBtn.toolTip.stop = Lõpeta salvestamine bbb.mainToolbar.recordBtn.toolTip.recording = Käesolev sündmus salvestatakse bbb.mainToolbar.recordBtn.toolTip.notRecording = Käesolevat sündmust ei salvestata -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Kinnita salvestamine bbb.mainToolbar.recordBtn.confirm.message.start = Kas oled kindel, et soovid alustada selle sündmuse salvestamist? bbb.mainToolbar.recordBtn.confirm.message.stop = Kas oled kindel, et soovid lõpetada selle sündmuse salvestamise? -bbb.mainToolbar.recordBtn..notification.title = Salvestuse teavitus -bbb.mainToolbar.recordBtn..notification.message1 = Sul on võimalik seda sündmust salvestada -bbb.mainToolbar.recordBtn..notification.message2 = Pead salvestuse alustamiseks ja lõpetamiseks klõpsama "Alusta salvestust"/"Lõpeta salvestus" nupul, mis asub päises. +bbb.mainToolbar.recordBtn.notification.title = Salvestuse teavitus +bbb.mainToolbar.recordBtn.notification.message1 = Sul on võimalik seda sündmust salvestada +bbb.mainToolbar.recordBtn.notification.message2 = Pead salvestuse alustamiseks ja lõpetamiseks klõpsama "Alusta salvestust"/"Lõpeta salvestus" nupul, mis asub päises. bbb.mainToolbar.recordingLabel.recording = (Salvestan) bbb.mainToolbar.recordingLabel.notRecording = Ei salvesta -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Sätete teavitused bbb.clientstatus.notification = Lugemata teavitused bbb.clientstatus.close = Sulge @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Sinu brauseri versioon ({0}) on vana. Soovita bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Sinu Flash Player lisamoodul ({0}) on aegunud. Soovitame see uuendada viimasele versioonile. bbb.clientstatus.webrtc.title = Heli -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Soovitame parima helikvaliteedi saavutamiseks kasutada Firefox või Chrome brauserit. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimeeri bbb.window.maximizeRestoreBtn.toolTip = Maksimeeri bbb.window.closeBtn.toolTip = Sulge @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Staatus bbb.users.usersGrid.statusItemRenderer.changePresenter = Klõpsa, et muuta esinejaks bbb.users.usersGrid.statusItemRenderer.presenter = Esineja bbb.users.usersGrid.statusItemRenderer.moderator = Moderaator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Puhasta staatus bbb.users.usersGrid.statusItemRenderer.viewer = Vaataja bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Jagab veebikaamerat. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Aktiveeri {0} mikrofon bbb.users.usersGrid.mediaItemRenderer.pushToMute = Vaigista {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lukusta {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Lukusta {0} lahti -bbb.users.usersGrid.mediaItemRenderer.kickUser = Viska {0} välja +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Veebikaamera jagamine bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon on väljas bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon on sees bbb.users.usersGrid.mediaItemRenderer.noAudio = Ei osale audiokonverentsil -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Puhasta -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Esitlus bbb.presentation.titleWithPres = Esitlus: {0} bbb.presentation.quickLink.label = Esitluse aken bbb.presentation.fitToWidth.toolTip = Mahuta esitlus laiuses bbb.presentation.fitToPage.toolTip = Mahuta esitlus lehele bbb.presentation.uploadPresBtn.toolTip = Lae esitlus üles -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Eelmine slaid bbb.presentation.btnSlideNum.accessibilityName = Slaid {0} / {1} bbb.presentation.btnSlideNum.toolTip = Vali slaid @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Ãœles laadimine on valmis. Palun oota kuni dok bbb.presentation.uploaded = üles laetud. bbb.presentation.document.supported = Ãœles laetud dokument on toetatud. Alustan konverteerimist... bbb.presentation.document.converted = Dokumendi konverteerimine oli edukas. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO viga: palun võta ühendust administraatoriga. bbb.presentation.error.security = Turvaviga: palun võta ühendust administraatoriga. bbb.presentation.error.convert.notsupported = Viga: üles laetud dokument pole toetatud. Palun lae üles toetatud tüüpi fail. @@ -283,61 +285,62 @@ bbb.fileupload.uploadBtn = Lae üles bbb.fileupload.uploadBtn.toolTip = Lae valitud fail üles bbb.fileupload.deleteBtn.toolTip = Kustuta esitlus bbb.fileupload.showBtn = Näita -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Näita esitlust -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Tekitan pisipilte... bbb.fileupload.progBarLbl = Edenemine: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Jututuba bbb.chat.quickLink.label = Jututoa aken bbb.chat.cmpColorPicker.toolTip = Teksti värv bbb.chat.input.accessibilityName = Jututoa sõnumi sisestamise väli bbb.chat.sendBtn.toolTip = Saada sõnum bbb.chat.sendBtn.accessibilityName = Saada jutukasõnum -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopeeri kogu tekst bbb.chat.publicChatUsername = Kõik bbb.chat.optionsTabName = Valikud bbb.chat.privateChatSelect = Vali isik, kellega soovid privaatselt vestelda bbb.chat.private.userLeft = Kasutaja on lahkunud. bbb.chat.private.userJoined = Kasutaja on liitunud. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Vali kasutaja, kellega soovid privaatselt vestelda bbb.chat.usersList.accessibilityName = Vali osaleja, kellega soovid alustada privaatvestlust. Kasuta nooleklahve sõnumite vahel liikumiseks. bbb.chat.chatOptions = Jututoa valikud bbb.chat.fontSize = Kirja suurus jututoa aknas bbb.chat.cmbFontSize.toolTip = Vali jututoa kirja suurus -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimeeri jututoa aken bbb.chat.maximizeRestoreBtn.accessibilityName = Maksimeeri jututoa aken bbb.chat.closeBtn.accessibilityName = Sulge jututoa aken bbb.chat.chatTabs.accessibleNotice = Selles sakis on uus(i) sõnum(eid). bbb.chat.chatMessage.systemMessage = Süsteem -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Sõnum on {0} tähemärgi võrra liiga pikk bbb.publishVideo.changeCameraBtn.labelText = Muuda veebikaamerat bbb.publishVideo.changeCameraBtn.toolTip = Ava veebikaamera muutmise aken @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Alusta jagamist bbb.publishVideo.startPublishBtn.toolTip = Alusta oma veebikaamera jagamist bbb.publishVideo.startPublishBtn.errorName = Veebikaamera jagamine ebaõnnestus. Põhjus: {0} bbb.webcamPermissions.chrome.title = Chrome veebikaamera õigused -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Veebikaamerad bbb.videodock.quickLink.label = Veebikaamerate aken bbb.video.minimizeBtn.accessibilityName = Minimeeri veebikaamera aken @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = Sulge veebikaamera sätete aken bbb.video.publish.closeBtn.label = Katkesta bbb.video.publish.titleBar = Veebikaamera avaldamise aken bbb.video.streamClose.toolTip = Sulge voog: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Lõpeta konverentsi kuulamine bbb.toolbar.phone.toolTip.unmute = Alusta konverentsi kuulamist bbb.toolbar.phone.toolTip.nomic = Ei tuvastanud ühtegi mikrofoni -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Jaga oma veebikaamerat bbb.toolbar.video.toolTip.stop = Lõpeta oma veebikaamera jagamine +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Lisa mugandatud paigutus nimekirja -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Muuda paigutust enda jaoks bbb.layout.loadButton.toolTip = Lae paigutused failist bbb.layout.saveButton.toolTip = Salvesta paigutused faili @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Rakenda paigutus bbb.layout.combo.custom = * Kohandatud paigutus bbb.layout.combo.customName = Kohandatud paigutus bbb.layout.combo.remote = Kaugjuhtimine -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Paigutused salvestati edukalt +bbb.layout.save.ioerror = bbb.layout.load.complete = Paigutused on edukalt laetud bbb.layout.load.failed = Paigutuste laadimine ebaõnnestus -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Vaikimisi paigutus -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Videokõne bbb.layout.name.webcamsfocus = Veebikaameratega kohtumine bbb.layout.name.presentfocus = Esitlusega kohtumine -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Õppejõu assistendi töölaud bbb.layout.name.lecture = Loeng -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Pliiats bbb.highlighter.toolbar.pencil.accessibilityName = Muuda valge tahvli kursor pliiatsiks bbb.highlighter.toolbar.ellipse = Ring @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Vali värv bbb.highlighter.toolbar.color.accessibilityName = Valge tahvli markeri värv bbb.highlighter.toolbar.thickness = Muuda jämedust bbb.highlighter.toolbar.thickness.accessibilityName = Muuda valge tahvli joonistamise tööriista joone jämedust -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Oled välja logitud +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serveripoolne rakendus lõpetas töö bbb.logout.asyncerror = Juhtus async viga @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Ãœhendus serveriga on lõppenud bbb.logout.rejected = Ãœhendumine serveriga on tagasi lükatud bbb.logout.invalidapp = red5 rakendus puudub bbb.logout.unknown = Sinu klientprogrammi ühendus serveriga katkes -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Oled veebikoosolekult välja logitud -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Moderaator on Su koosolekult eemaldanud. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Kui sinu välja logimine oli ootamatu, siis palun klõpsa all nähtaval nupul. bbb.logout.refresh.label = Ãœhendu uuesti -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Kinnita välja logimine bbb.logout.confirm.message = Kas oled kindel, et soovid välja logida? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Jah bbb.logout.confirm.no = Ei -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Tuvastatud ühenduse mured bbb.connection.reconnecting=Ãœhendun uuesti bbb.connection.reestablished=Ãœhendus taastatud @@ -530,59 +539,60 @@ bbb.notes.title = Märkmed bbb.notes.cmpColorPicker.toolTip = Teksti värv bbb.notes.saveBtn = Salvesta bbb.notes.saveBtn.toolTip = Salvesta märkmed -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klõpsa avanevas hüpikaknas "Allow/Luba", et tagada töölaua jagamise toimimine bbb.settings.deskshare.start = Kontrolli töölaua jagamist bbb.settings.voice.volume = Mikrofoni olek -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash versiooni viga bbb.settings.flash.text = Sinu arvutis on olemas Flash versioon {0} aga BigBlueButton-i kasutamiseks on vaja vähemalt versiooni {1}. Klõpsa all asuval nupul, et installeerida oma arvutisse uusim Adobe Flash versioon. bbb.settings.flash.command = Installeeri uusim Flash bbb.settings.isight.label = iSight veebikaamera viga -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Installeeri Flash 10.2 RC2 bbb.settings.warning.label = Hoiatus bbb.settings.warning.close = Sulge see hoiatus bbb.settings.noissues = Ãœhtegi väljapaistvat viga ei tuvastatud. bbb.settings.instructions = Aktsepteeri Flash-i hüpikaknas veebikaamera kasutamise õigus. Kui sa näed ja kuuled ennast, siis on sinu brauser korrektselt seadistatud. Muud potentsiaalsed probleemid on välja toodud all olevas loetelus. Klõpsa iga elemendi peal, et saada selle parandamiseks nõuandeid. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Kolmnurk ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Muuda valge tahvli kursor kolmnurgaks ltbcustom.bbb.highlighter.toolbar.line = Joon @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Muuda valge tahvli kursor tekstiks ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Teksti värv ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Fondi suurus -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Valmis @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Oled navigeerunud viimase sõnu bbb.accessibility.chat.chatBox.navigatedLatestRead = Oled navigeerunud viimase loetud sõnumi juurde. bbb.accessibility.chat.chatwindow.input = Jututoa sisestuskast bbb.accessibility.chat.chatwindow.audibleChatNotification = Sõnumi märguanne (heliga) -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Palun kasuta jututoa sõnumite vahel liikumiseks nooleklahve. bbb.accessibility.notes.notesview.input = Märkmete sisestuskast bbb.shortcuthelp.title = Kiirklahvid -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimeeri kiirklahvide aken bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maksimeeri kiirklahvide aken bbb.shortcuthelp.closeBtn.accessibilityName = Sulge kiirklahvide aken -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Ãœldised kiirklahvid bbb.shortcuthelp.dropdown.presentation = Esitluse kiirklahvid bbb.shortcuthelp.dropdown.chat = Jututoa kiirklahvid bbb.shortcuthelp.dropdown.users = Osalejate kiirklahvid -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Kiirklahv bbb.shortcuthelp.headers.function = Funktsioon @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Minimeeri praegune aken bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Maksimeeri praegune aken -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Vii fookus Flash rakenduse aknalt välja bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Vaigista ja aktiveeri oma mikrofon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Vii fookus esitluse aknale bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Vii fookus jututoa aknale -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Ava töölaua jagamise aken @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Logi välja sellelt koosolekult bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Tõsta oma käsi -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Lae üles esitlus bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Mine eelmise slaidi juurde @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Mine järgmise slaidi juurde bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Sobita slaidid laiuse järgi -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Sobita slaidid lehe järgi -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Muuda valitud isik esinejaks -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Viska valitud isik koosolekult välja +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Vaigista või aktiveeri valitud isiku mikrofon bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Vaigista või aktiveeri kõigi osalejate mikrofonid bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Vaigista kõik osalejad peale esineja -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Vii fookus jututoa sakkidele -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Vii fookus teksti värvi valijale bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Liigu viimati loetud sõnumi juur bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Ajutise silumise lühiklahv -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Loo hääletus bbb.polling.startButton.label = Alusta hääletust bbb.polling.publishButton.label = Avalda bbb.polling.closeButton.label = Sulge -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Reaalajas hääletuse tulemused +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Sisesta hääletuse valikud bbb.polling.respondersLabel.novotes = Ootan vastuseid bbb.polling.respondersLabel.text = {0} osalejat on vastanud @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Sulge kõik videod bbb.users.settings.lockAll = Lukusta kõik kasutajad bbb.users.settings.lockAllExcept = Lukusta kõik kasutajad peale esineja bbb.users.settings.lockSettings = Lukusta vaatajad... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Lukusta lahti kõik vaatajad bbb.users.settings.roomIsLocked = Vaikimisi lukustatud bbb.users.settings.roomIsMuted = Vaikimisi vaigistatud @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Rakenda lukustus-sätted bbb.lockSettings.cancel = Katkesta bbb.lockSettings.cancel.toolTip = Sulge see aken ilma salvestamata +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderaatori lukustamine bbb.lockSettings.privateChat = Privaatne jututuba bbb.lockSettings.publicChat = Avalik jututuba bbb.lockSettings.webcam = Veebikaamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Paigutus bbb.lockSettings.title=Lukusta vaatajad @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Võimekus bbb.lockSettings.locked=Lukustatud bbb.lockSettings.lockOnJoin=Lukusta liitumisel -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/eu_ES/bbbResources.properties b/bigbluebutton-client/locale/eu_ES/bbbResources.properties index e0e893ed7cb01680dbdde49cede4625ff54203b9..e4b4e69717f4b09a3597ebc4221185f4780e7ea8 100644 --- a/bigbluebutton-client/locale/eu_ES/bbbResources.properties +++ b/bigbluebutton-client/locale/eu_ES/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Zerbitzariarekin konektatzen -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Barkatu, ezin dugu zerbitzariarekin konektatu. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Zabaldu agerraldien leihoa bbb.mainshell.meetingNotFound = Bilera ez da agertzen bbb.mainshell.invalidAuthToken = Token egiaztatzekoa ez da baliozkoa bbb.mainshell.resetLayoutBtn.toolTip = Berrabiarazi diseinua bbb.mainshell.notification.tunnelling = Tunnelling bbb.mainshell.notification.webrtc = WebRTC audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Agian BigBlueButton-en hizkuntza-itzulpen zaharra izango duzu. bbb.oldlocalewindow.reminder2 = Mesedez, garbitu zure nabigatzailearen cache-a eta saiatu berriz. bbb.oldlocalewindow.windowTitle = Kontuz: Hizkuntza-itzulpen zaharrak @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Konektatzen bbb.micSettings.webrtc.transferring = Transferentzia bbb.micSettings.webrtc.endingecho = Partekatzen audioa bbb.micSettings.webrtc.endedecho = Oihartzun-proba amaitu da. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox mikrofonoaren baimenak -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome mikrofonoaren baimenak -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Kontuz audioarekin bbb.micWarning.joinBtn.label = Parte hartu, edonola ere bbb.micWarning.testAgain.label = Probatu berriro @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Ustekabean bukatu da WebRTC oi bbb.webrtcWarning.connection.dropped = WebRTC konexioa erori da bbb.webrtcWarning.connection.reconnecting = Berriro konektatzen ahaleginetan bbb.webrtcWarning.connection.reestablished = WebRTC konexioa berriro ezarri da -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Laguntza bbb.mainToolbar.logoutBtn = Amaitu saioa bbb.mainToolbar.logoutBtn.toolTip = Amaitu saioa -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Aukeratu hizkuntza bbb.mainToolbar.settingsBtn = Ezarpenak bbb.mainToolbar.settingsBtn.toolTip = Ireki ezarpenak @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Hasi grabatzen bbb.mainToolbar.recordBtn.toolTip.stop = Gelditu grabatzen bbb.mainToolbar.recordBtn.toolTip.recording = Grabatzen ari gara saioa bbb.mainToolbar.recordBtn.toolTip.notRecording = Ez gara ari grabatzen saioa -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Baieztatu grabazioa bbb.mainToolbar.recordBtn.confirm.message.start = Ziur zaude saioa grabatu nahi duzula? bbb.mainToolbar.recordBtn.confirm.message.stop = Ziur zaude gelditu nahi duzula saioaren grabazioa? -bbb.mainToolbar.recordBtn..notification.title = Jakinarazpena grabatu -bbb.mainToolbar.recordBtn..notification.message1 = Bilera hau grabatu daiteke. -bbb.mainToolbar.recordBtn..notification.message2 = Hasteko eta Bukatzeko grabazioa botoi bat sakatu behar duzu, goiko izenburu-barran dagoena. +bbb.mainToolbar.recordBtn.notification.title = Jakinarazpena grabatu +bbb.mainToolbar.recordBtn.notification.message1 = Bilera hau grabatu daiteke. +bbb.mainToolbar.recordBtn.notification.message2 = Hasteko eta Bukatzeko grabazioa botoi bat sakatu behar duzu, goiko izenburu-barran dagoena. bbb.mainToolbar.recordingLabel.recording = (Grabazioa) bbb.mainToolbar.recordingLabel.notRecording = Grabaziorik ez -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Jakinarazpenen konfigurazioa bbb.clientstatus.notification = Irakurri gabeko jakinarazpenak bbb.clientstatus.close = Itxi @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Zure nabigatzailea ({0}) ez da gaurkotu. Azke bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Flash Player plugin-a zaharkitu da ({0}). Azken bertsioarekin eguneratzea gomendatzen dugu. bbb.clientstatus.webrtc.title = Audioa -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Audioa hobetzeko Firefox edo Chrome erabiltzea gomendatzen dugu -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Txikitu bbb.window.maximizeRestoreBtn.toolTip = Handitu bbb.window.closeBtn.toolTip = Itxi\n @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Egoera bbb.users.usersGrid.statusItemRenderer.changePresenter = Aurkezlea bihurtzeko sakatu bbb.users.usersGrid.statusItemRenderer.presenter = Aurkezlea bbb.users.usersGrid.statusItemRenderer.moderator = Moderatzailea -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Garbitu egoera bbb.users.usersGrid.statusItemRenderer.viewer = Ikuslea bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Web-kamera partekatzen @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Sakatu erabiltzaileari hitza bbb.users.usersGrid.mediaItemRenderer.pushToMute = Sakatu erabiltzailea mututzeko bbb.users.usersGrid.mediaItemRenderer.pushToLock = Blokeatu {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Askatu {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kanporatu {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Web-kamera partekatu da bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofonoa off bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofonoa on bbb.users.usersGrid.mediaItemRenderer.noAudio = Audio-hitzaldian ez -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Garbitu -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Aurkezpena bbb.presentation.titleWithPres = Aurkezpena: {0} bbb.presentation.quickLink.label = Aurkezpenaren leihoa bbb.presentation.fitToWidth.toolTip = Doitu zabaleran aurkezpena bbb.presentation.fitToPage.toolTip = Doitu orrialdean aurkezpena bbb.presentation.uploadPresBtn.toolTip = Igo aurkezpena -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Aurreko diapositiba bbb.presentation.btnSlideNum.accessibilityName = {0}. diapositiba, {1}-tik bbb.presentation.btnSlideNum.toolTip = Sakatu diapositiba bat aukeratzeko @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Igoera osatu da. Mesedez, itxaron dokumentua b bbb.presentation.uploaded = igota. bbb.presentation.document.supported = Igotako dokumentua onargarria da. Hasi egin da bihurtzen... bbb.presentation.document.converted = Egoki bihurtu da office dokumentua. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Errorea: Mesedez, jarri harremanetan kudeatzailearekin bbb.presentation.error.security = Segurtasun-errorea: mesedez, jarri harremanetan kudeatzailearekin. bbb.presentation.error.convert.notsupported = Errorea: igotako dokumentua ez da egokia. Mesedez, igo fitxategi bateragarria. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Igo bbb.fileupload.uploadBtn.toolTip = Igo aukeratutako fitxategia bbb.fileupload.deleteBtn.toolTip = Ezabatu aurkezpena bbb.fileupload.showBtn = Erakutsi -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Erakutsi aurkezpena -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Koadro txikiak sortzen... bbb.fileupload.progBarLbl = Aurrerapena: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Txata bbb.chat.quickLink.label = Txataren leihoa bbb.chat.cmpColorPicker.toolTip = Testu-kolorea bbb.chat.input.accessibilityName = Txat-mezuak editatzeko eremua bbb.chat.sendBtn.toolTip = Bidali mezua bbb.chat.sendBtn.accessibilityName = Bidali txat-mezua -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Testu guztiak kopiatu bbb.chat.publicChatUsername = Guztia bbb.chat.optionsTabName = Aukerak @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = Hautatu erabiltzailea txat pribatu bat za bbb.chat.chatOptions = Txat-aukerak bbb.chat.fontSize = Txat-mezuaren letra-tamaina bbb.chat.cmbFontSize.toolTip = Aukeratu txat-mezuaren letra tamaina -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Txikitu txat-leihoa bbb.chat.maximizeRestoreBtn.accessibilityName = Handitu txat-leihoa bbb.chat.closeBtn.accessibilityName = Itxi txat-leihoa bbb.chat.chatTabs.accessibleNotice = Mezu berriak fitxa honetan. bbb.chat.chatMessage.systemMessage = Sistema -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Mezuak {0} karaktere gehiegi ditu bbb.publishVideo.changeCameraBtn.labelText = Aldatu kamera bbb.publishVideo.changeCameraBtn.toolTip = Sakatu kamera aldatzeko leihoa irekitzeko @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Hasi partekatzen bbb.publishVideo.startPublishBtn.toolTip = Hasi zure web-kamera partekatzen bbb.publishVideo.startPublishBtn.errorName = Web-kamera ezin dut partekatu. Arrazoia: {0} bbb.webcamPermissions.chrome.title = Chrome web-kameraren baimenak -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Bideoa bbb.videodock.quickLink.label = Web-kameraren leihoa bbb.video.minimizeBtn.accessibilityName = Txikitu bideo-leihoa @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = Itxi web-kameraren ezarpenen leihoa bbb.video.publish.closeBtn.label = Utzi bbb.video.publish.titleBar = Argitaratu web-kameraren leihoa bbb.video.streamClose.toolTip = Itxi emanaldi honetarako: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = Lehio hau ezin da maximizatu bbb.screensharePublish.closeBtn.toolTip = Gelditu partekatzen eta itxi -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Minimizatu -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = bbb.screensharePublish.startButton.label = Hasi -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = bbb.screenshareView.fitToWindow = Doitu leihoarekiko bbb.screenshareView.actualSize = Erakutsi oraingo tamaina -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Gelditu entzuten konferentzia bbb.toolbar.phone.toolTip.unmute = Hasi entzuten konferentzia bbb.toolbar.phone.toolTip.nomic = Mikrofonorik ez da aurkitu -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Partekatu zure web-kamera bbb.toolbar.video.toolTip.stop = Ez partekatu zure web-kamera +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Gehitu pertsonalizatutako diseinua zerrendara -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Aldatu diseinua bbb.layout.loadButton.toolTip = Bilatu diseinuak fitxategi batean bbb.layout.saveButton.toolTip = Gorde diseinuak fitxategi batean @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplikatu diseinuari bbb.layout.combo.custom = Pertsonalizatu diseinua bbb.layout.combo.customName = Pertsonalizatu diseinua bbb.layout.combo.remote = Urrutikoa -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Diseinuak egoki gorde dira +bbb.layout.save.ioerror = bbb.layout.load.complete = Diseinuak egoki aurkitu dira bbb.layout.load.failed = Ezin dira diseinuak kargatu -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Diseinu lehenetsia bbb.layout.name.closedcaption = Azpitituluak bbb.layout.name.videochat = Bideo-txat bbb.layout.name.webcamsfocus = Web-kamera bbb.layout.name.presentfocus = Aurkezpena -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Eskola laguntzailea bbb.layout.name.lecture = Mintzaldi -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Lapitza bbb.highlighter.toolbar.pencil.accessibilityName = Aldatu arbelerako kurtsorea eta ipini lapitza bbb.highlighter.toolbar.ellipse = Zirkulua @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Aukeratu kolorea bbb.highlighter.toolbar.color.accessibilityName = Arbelerako marka margotzeko kolorea bbb.highlighter.toolbar.thickness = Aldatu lodiera bbb.highlighter.toolbar.thickness.accessibilityName = Arbela margotzeko zabalera -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Saioa bukatu du +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ADOS bbb.logout.appshutdown = Zerbitzariaren aplikazioa itxi egin da bbb.logout.asyncerror = Async errorea gertatu da @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Amaitu da zerbitzariarekiko konexioa bbb.logout.rejected = Baztertu da zerbitzariarekiko konexioa bbb.logout.invalidapp = red5 aplikazioa ez da existitzen bbb.logout.unknown = Zure bezeroak galdu du zerbitzari honekiko konexioa -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Irten egin zara hitzalditik -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Moderatzaile batek bota zaitu bileratik +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Saiotik nahi gabe atera bazara sakatu beheko botoia berriro konektatzeko. bbb.logout.refresh.label = Berriro konektatu -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Baieztatu zure saio bukatu nahi duzula bbb.logout.confirm.message = Ziur zaude zure saio bukatu nahi duzula? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Bai bbb.logout.confirm.no = Ez -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Konexio arazoak badaude bbb.connection.reconnecting=Berriro konektatzen bbb.connection.reestablished=Konexioa ezarri da berriro @@ -530,59 +539,60 @@ bbb.notes.title = Oharrak bbb.notes.cmpColorPicker.toolTip = Testuaren kolorea bbb.notes.saveBtn = Gorde bbb.notes.saveBtn.toolTip = Gorde oharra -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Lehio zabalgarrian Baimendu sakatu mahaigainaren partekatzea ongi funtzionatzen ari dela baieztatzeko. bbb.settings.deskshare.start = Egiaztatu mahaigainaren partekatzea bbb.settings.voice.volume = Mikrofonoaren jarduera -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Errorea Flash bertsioan bbb.settings.flash.text = Flash {0} duzu instalatuta, baina gutxienez {1} bertsioa behar duzu BigBluebutton behar bezala ibiltzeko. Sakatu beheko botoiari Adobe Flash bertsio berriagoa instaltzeko. bbb.settings.flash.command = Instalatu Flash berriagoa bbb.settings.isight.label = Errorea iSight kameran -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instalatu Flash 10.2 RC2 bbb.settings.warning.label = Kontuz bbb.settings.warning.close = Itxi abisu hau bbb.settings.noissues = Ez da arazo larririk aurkitu. bbb.settings.instructions = Onartu zure kamera baimenez galdetzen dizun Flash prompt-a. Zeure burua ikusi eta zeure buruari entzuten badiozu, zure nabigatzailea egoki ezarrita dago. Beherago agertzen dira beste zenbait arazo. Sakatu bakoitzaren gainean konponbidea aurkitzeko. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triangelua ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Aldatu arbelerako kurtsorea eta ipini triangelua ltbcustom.bbb.highlighter.toolbar.line = Lerroa @@ -592,20 +602,20 @@ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Aldatu arbelerako kur ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Testuaren kolorea ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Letra-tamaina bbb.caption.window.title = Azpitituluak -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = bbb.caption.window.minimizeBtn.accessibilityName = Minimizatu Azpitituluen leihoa bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximizatu Azpitituluen leihoa bbb.caption.transcript.noowner = Bat ere ez bbb.caption.transcript.youowner = Zu bbb.caption.transcript.pastewarning.title = Azpititulua itsasteko alerta bbb.caption.transcript.pastewarning.text = {0} baino karaktere gehiagorik ezin duzu itsasi. {1} karaktere itsasi duzu. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = bbb.caption.option.label = Aukerak bbb.caption.option.language = Hizkuntza: bbb.caption.option.language.tooltip = Aukeratu azpitituluen hizkuntza -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. +bbb.caption.option.language.accessibilityName = bbb.caption.option.takeowner = Jabetza hartu bbb.caption.option.takeowner.tooltip = Hautatu den hizkuntzaren jabegoa hartu bbb.caption.option.fontfamily = Letra-tipo familia: @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Azken mezura joan zara bbb.accessibility.chat.chatBox.navigatedLatestRead = Irakurri duzun azken mezura joan zara bbb.accessibility.chat.chatwindow.input = Txat-irteera bbb.accessibility.chat.chatwindow.audibleChatNotification = Txat-jakinarazpen entzungarria -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Erabili gezi-teklak mezuen artean nabigatzeko. bbb.accessibility.notes.notesview.input = Ohar-sarrera bbb.shortcuthelp.title = Lasterbide-giltzak -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Txikitu lasterbideen leihoa bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Handitu lasterbideen leihoa bbb.shortcuthelp.closeBtn.accessibilityName = Itxi lasterbideen leihoa -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Lasterbide orokorrak bbb.shortcuthelp.dropdown.presentation = Aurkezpenaren lasterbideak bbb.shortcuthelp.dropdown.chat = Txataren lasterbideak bbb.shortcuthelp.dropdown.users = Erabiltzaileen lasterbideak -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Laster-tekla bbb.shortcuthelp.headers.function = Funtzioa @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Aldatu fokoa aurkezpen-leihoari bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Aldatu fokoa txat-leihoari -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Zabaldu mahaigaina partekatzeko leihoa @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Utzi bilera hau bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Altxatu zure eskua -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Igo aurkezpena bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Joan aurreko diapositibara @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Joan hurrengo diapositibara bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Doitu diapositibak zabalera -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Egokitu diapositiba orrira -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Ezarri aukeratutako erabiltzailea aurkezle gisa -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Bota bileratik aukeratutako pertsona +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Mututu edo hitza eman aukeratutako erabiltzaileari bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Mututu edo hitza eman erabiltzaile guztiei bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Mututu edozein Aurkezlea izan ezik -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Fokuratu txat-fitxetan -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Fokuratu letraren koloreko aukeratzailean. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Joan irakurri duzun azken mezura bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Aldi baterakoak garbitzeko laster-tekla -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Sortu inkesta bat bbb.polling.startButton.label = Sortu inkesta bbb.polling.publishButton.label = Argitaratu bbb.polling.closeButton.label = Itxi -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Inkestaren emaitzak zuzenean +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Sartu inkestaren aukerak bbb.polling.respondersLabel.novotes = Erantzunen zain bbb.polling.respondersLabel.text = {0} erabiltzaile erantzun dute @@ -792,7 +803,7 @@ bbb.users.settings.lockAll = Blokeatu erabiltzaile guztiak bbb.users.settings.lockAllExcept = Blokeatu erabiltzaile guztiak aurkezlea izan ezik bbb.users.settings.lockSettings = Blokeatu ikusleak bbb.users.settings.breakoutRooms = Talde gelak ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Desblokeatu ikusle guztiak bbb.users.settings.roomIsLocked = Blokeatuta modu lehenetsian bbb.users.settings.roomIsMuted = Mutututa modu lehenetsian @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Aplikatu blokeatzeko ezarpenak bbb.lockSettings.cancel = Utzi bbb.lockSettings.cancel.toolTip = Itxi lehio hau gorde gabe +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderatzailearen blokeoa bbb.lockSettings.privateChat = Txat pribatua bbb.lockSettings.publicChat = Txat publikoa bbb.lockSettings.webcam = Web-kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofonoa bbb.lockSettings.layout = Diseinua bbb.lockSettings.title=Blokeatu ikusleak @@ -814,34 +827,35 @@ bbb.lockSettings.locked= Blokeatua bbb.lockSettings.lockOnJoin=Parte hartzean blokeatu bbb.users.breakout.breakoutRooms = Talde gelak -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = bbb.users.breakout.calculatingRemainingTime = Gelditzen den denbora kalkulatzen... -bbb.users.breakout.closing = Closing +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Gelak -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create +bbb.users.breakout.roomsCombo.accessibilityName = bbb.users.breakout.room = Gela -bbb.users.breakout.randomAssign = Ausazkoan eran gehitu erabiltzaileak bbb.users.breakout.timeLimit = Denbora muga -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes +bbb.users.breakout.durationStepper.accessibilityName = bbb.users.breakout.minutes = Minutuak bbb.users.breakout.record = Grabatu -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms +bbb.users.breakout.recordCheckbox.accessibilityName = bbb.users.breakout.notAssigned = Esleitu gabe -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms +bbb.users.breakout.dragAndDropToolTip = bbb.users.breakout.start = Hasi -bbb.users.breakout.invite = Invite +bbb.users.breakout.invite = bbb.users.breakout.close = Itxi bbb.users.breakout.closeAllRooms = Talde-gela guztiak itxi bbb.users.breakout.insufficientUsers = Erabiltzaile kopurua ez da nahiko. Gutxienez erabiltzaile bat gehitu behar duzu gela batera. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Gela bbb.users.roomsGrid.users = Erabiltzaileak bbb.users.roomsGrid.action = Ekintza @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Audio transferentzia bbb.users.roomsGrid.join = Parte hartu bbb.users.roomsGrid.noUsers = Erabiltzailerik ez gela honetan -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/fa/bbbResources.properties b/bigbluebutton-client/locale/fa/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/fa/bbbResources.properties +++ b/bigbluebutton-client/locale/fa/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/fa_IR/bbbResources.properties b/bigbluebutton-client/locale/fa_IR/bbbResources.properties index ee4cdd7e60a5fb53ce484978688979eed31aa9d6..f25c2dce70ba90d8bc0363155ffe4ea014028e7b 100755 --- a/bigbluebutton-client/locale/fa_IR/bbbResources.properties +++ b/bigbluebutton-client/locale/fa_IR/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = در Øال اتصال به سرور -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = متاسÙانه، امکان اتصال به سرور وجود ندارد. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = باز کردن پنجره تنظیمات میکروÙون @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = توکن اØراز هویت نامعتبر bbb.mainshell.resetLayoutBtn.toolTip = بازگشت به Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ پیش Ùرض bbb.mainshell.notification.tunnelling = در Øال ایجاد تونل bbb.mainshell.notification.webrtc = صدا با استÙاده از WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = ممکن است ترجمه ÛŒ مربوط به زبان بیگ بلو باتن شما قدیمی باشد. bbb.oldlocalewindow.reminder2 = لطÙا Ú©Ø´ مرورگر خود را خالی کرده Ùˆ دوباره امتØان کنید. bbb.oldlocalewindow.windowTitle = اخطار: ترجمه های زبانی قدیمی هستند @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = در Øال اتصال bbb.micSettings.webrtc.transferring = در Øال انتقال bbb.micSettings.webrtc.endingecho = شنیدن صدای کلاس bbb.micSettings.webrtc.endedecho = آزمایش اکو پایان یاÙت. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = مجوز های ÙایرÙاکس مربوط به میکروÙون -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = مجوز های کروم مربوط به میکروÙون -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = اخطار مربوط به صدا bbb.micWarning.joinBtn.label = ملØÙ‚ شدن bbb.micWarning.testAgain.label = آزمایش مجدد @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = آزمون اکو مربوط bbb.webrtcWarning.connection.dropped = اتصال WebRTC قطع شد bbb.webrtcWarning.connection.reconnecting = تلاش برای اتصال مجدد bbb.webrtcWarning.connection.reestablished = اتصال WebRTC دوباره برقرار شد -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = راهنما bbb.mainToolbar.logoutBtn = خروج bbb.mainToolbar.logoutBtn.toolTip = خروج -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = انتخاب زبان bbb.mainToolbar.settingsBtn = تنظیمات bbb.mainToolbar.settingsBtn.toolTip = مشاهده ÛŒ تنظیمات @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = شروع ضبط کلاس bbb.mainToolbar.recordBtn.toolTip.stop = متوق٠کردن ضبط کلاس bbb.mainToolbar.recordBtn.toolTip.recording = جلسه در Øال ضبط شدن است bbb.mainToolbar.recordBtn.toolTip.notRecording = جلسه در Øال ضبط شدن نیست -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = تایید ضبط شدن bbb.mainToolbar.recordBtn.confirm.message.start = آیا مطمئنید Ú©Ù‡ Ù…ÛŒ خواهید جلسه را ضبط کنید؟ bbb.mainToolbar.recordBtn.confirm.message.stop = آیا مطمئنید Ú©Ù‡ Ù…ÛŒ خواهید ضبط کلاس را متوق٠کنید؟ -bbb.mainToolbar.recordBtn..notification.title = اعلان ضبط جلسه -bbb.mainToolbar.recordBtn..notification.message1 = شما قادر به ضبط این کلاس هستید -bbb.mainToolbar.recordBtn..notification.message2 = به منظورشروع/توق٠ضبط کلاس Ù…ÛŒ بایست روی دکمه شروع/توق٠ضبط کلاس در نوار عنوان کلیک کنید. +bbb.mainToolbar.recordBtn.notification.title = اعلان ضبط جلسه +bbb.mainToolbar.recordBtn.notification.message1 = شما قادر به ضبط این کلاس هستید +bbb.mainToolbar.recordBtn.notification.message2 = به منظورشروع/توق٠ضبط کلاس Ù…ÛŒ بایست روی دکمه شروع/توق٠ضبط کلاس در نوار عنوان کلیک کنید. bbb.mainToolbar.recordingLabel.recording = (در Øال ضبط) bbb.mainToolbar.recordingLabel.notRecording = عدم ضبط کلاس -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = پیکربندی اطلاع اعلان ها bbb.clientstatus.notification = اعلان های خوانده نشده bbb.clientstatus.close = بستن @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = صدای مبتنی بر WebRTC Ø´ bbb.clientstatus.webrtc.almostWeakStatus = صدای مبتنی بر WebRTC شما دارای Ú©ÛŒÙیت بدی است bbb.clientstatus.webrtc.weakStatus = ممکن است در ارتباط صدای WebRTC شما مشکلی به وجود امده باشد bbb.clientstatus.webrtc.message = به منظور Ú©ÛŒÙیت بهتر صدا، پیشنهاد Ù…ÛŒ شود از مروگر های ÙایرÙاکس یا کروم استÙاده کنید -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = کمینه bbb.window.maximizeRestoreBtn.toolTip = بیشینه bbb.window.closeBtn.toolTip = خروج @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = وضعیت bbb.users.usersGrid.statusItemRenderer.changePresenter = برای تبدیل وضعیت به ارائه دهنده کلیک کنید bbb.users.usersGrid.statusItemRenderer.presenter = ارائه دهنده bbb.users.usersGrid.statusItemRenderer.moderator = مدیر -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = پاک کردن Øالت bbb.users.usersGrid.statusItemRenderer.viewer = مشاهده کننده bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = به اشتراک گذاری دوربین @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = وصل کردن صدای {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = قطع کردن صدای {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Ù‚ÙÙ„ کردن {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = باز کردن {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = اخراج کاربر {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = به اشتراک گذاری دوربین bbb.users.usersGrid.mediaItemRenderer.micOff = میکروÙون خاموش bbb.users.usersGrid.mediaItemRenderer.micOn = میکروÙون روشن bbb.users.usersGrid.mediaItemRenderer.noAudio = عدم Øضور در Ú©Ù†Ùراس صوتی -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = پاک کردن -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ارائه bbb.presentation.titleWithPres = ارائه: {0} bbb.presentation.quickLink.label = پنجره ارائه bbb.presentation.fitToWidth.toolTip = تنظیم به اندازه عرض سند bbb.presentation.fitToPage.toolTip = تنظیم به اندازه عرض صÙØÙ‡ bbb.presentation.uploadPresBtn.toolTip = بارگزاری ارائه -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = اسلاید قبلی bbb.presentation.btnSlideNum.accessibilityName = اسلاید {0} از {1} bbb.presentation.btnSlideNum.toolTip = انتخاب یک اسلاید @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = بارگزاری به اتمام رسید لط bbb.presentation.uploaded = بارگزاري شد bbb.presentation.document.supported = از قالب سند بارگزاري شده پیشتیبانی Ù…ÛŒ شود. آغاز تبدیل ... bbb.presentation.document.converted = سند Ø¢Ùیس مورد نظر با موÙقیت تبدیل شد -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = لطÙا ابتدا این سند را تبدیل Ú©Ù† bbb.presentation.error.io = خطای ورودی/خروجی: لطÙا با مدیر سیستم تماس بگیرید bbb.presentation.error.security = خطای امنیتی: لطÙا با مدیر سیستم تماس بگیرید @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = بارگذاری bbb.fileupload.uploadBtn.toolTip = بارگزاري Ùایل انتخاب شده bbb.fileupload.deleteBtn.toolTip = Øذ٠ارائه bbb.fileupload.showBtn = نمایش -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = نمایش ارائه -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = در Øال ایجاد تصاویر Ú©ÙˆÚ†Ú©.. bbb.fileupload.progBarLbl = میزان پیشرÙت: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = گقتگوی متنی bbb.chat.quickLink.label = پنجره Ú¯Ùتگوی متنی bbb.chat.cmpColorPicker.toolTip = رنگ متن bbb.chat.input.accessibilityName = قسمت ویرایش پیام متنی bbb.chat.sendBtn.toolTip = ارسال پیام bbb.chat.sendBtn.accessibilityName = ارسال پیغام متنی -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Ú©Ù¾ÛŒ کردن تمام من bbb.chat.publicChatUsername = عمومی bbb.chat.optionsTabName = امکانات @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = آغاز اشتراک گذاری bbb.publishVideo.startPublishBtn.toolTip = شروع اشتراک دوبین خود bbb.publishVideo.startPublishBtn.errorName = امکان اشتراک گذاری دوربین وجود ندارد.دلیل: {0} bbb.webcamPermissions.chrome.title = مجوز های کروم مربوط به دوربین -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = پنجره دوربین ها bbb.videodock.quickLink.label = پنجره دوربین ها bbb.video.minimizeBtn.accessibilityName = کمینه کردن پنجره تصویر @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = بستن جعبه Ù…Øاوره ای تن bbb.video.publish.closeBtn.label = انصرا٠bbb.video.publish.titleBar = اشتراک پنجرع تصاویر bbb.video.streamClose.toolTip = بستن استریم برای: {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = اشتراک گذاری صÙØÙ‡: پیش نمایش ارائه دهنده bbb.screensharePublish.pause.tooltip = وقÙÙ‡ در اشتراک صÙØÙ‡ bbb.screensharePublish.pause.label = وقÙÙ‡ @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = امکان تشخیص bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = به نظر Ù…ÛŒ رسد Ú©Ù‡ شما از Øالت incognito Ùˆ یا مرور خصوصی استÙاده میکنید. لطÙا اطمینان پیدا کنید Ú©Ù‡ در بخش تنظیمات اÙزونه ها امکان اجرا شدن اÙزوده را در Øالت مرور خصوصی/incognito داده باشید bbb.screensharePublish.WebRTCExtensionInstallButton.label = برای نصب اینجا را کلیک کنید bbb.screensharePublish.WebRTCUseJavaButton.label = استÙاده از اشتراک صÙØÙ‡ مبتنی بر جاوا -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = اشتراک صÙØÙ‡ bbb.screenshareView.fitToWindow = بسط به اندازه تمام پنجره bbb.screenshareView.actualSize = نمایش اندازه واقعی bbb.screenshareView.minimizeBtn.accessibilityName = کمینه کردن پنجره مشاهده اشتراک صÙØÙ‡ bbb.screenshareView.maximizeRestoreBtn.accessibilityName = بیشینه کردن پنجره مشاهده اشتراک صÙØÙ‡ bbb.screenshareView.closeBtn.accessibilityName = بستن پنجره مشاهده اشتراک صÙØÙ‡ -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = توق٠شنیدن صدای جلسه bbb.toolbar.phone.toolTip.unmute = شروع شنیدن صدای جلسه bbb.toolbar.phone.toolTip.nomic = میکروÙونی شناسایی نشد bbb.toolbar.deskshare.toolTip.start = باز کردن پنجره نمایش اشتراک صÙØÙ‡ bbb.toolbar.deskshare.toolTip.stop = توق٠اشتراک میز کار من -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = اشتراک دوربین bbb.toolbar.video.toolTip.stop = توق٠اشتراک دوربین +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = اÙزودن Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ جدید به لیست -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = تغییر Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ bbb.layout.loadButton.toolTip = بارگزاری Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ از Ùایل bbb.layout.saveButton.toolTip = ذخیره سازی Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ در یک Ùایل @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = اعمال Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ bbb.layout.combo.custom = * Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ جدید bbb.layout.combo.customName = Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ جدید bbb.layout.combo.remote = از طر٠مدیر -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ ها با موÙقیت ذخیره شدند +bbb.layout.save.ioerror = bbb.layout.load.complete = Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ ها با موÙقیت بارگزاری شدند bbb.layout.load.failed = خطا در بارگزاری Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ ها -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ پیشÙرض bbb.layout.name.closedcaption = زیر نویس bbb.layout.name.videochat = Ú¯Ùتگوی تصویری bbb.layout.name.webcamsfocus = جلسه تصویری bbb.layout.name.presentfocus = جلسه ارائه -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = استادیار bbb.layout.name.lecture = تدریس ارائه -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = مداد bbb.highlighter.toolbar.pencil.accessibilityName = تبدیل اشاره گر تخته سÙید به مداد bbb.highlighter.toolbar.ellipse = دایره @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = انتخاب رنگ bbb.highlighter.toolbar.color.accessibilityName = رنگ اشاره گر ترسیم در تخته سÙید bbb.highlighter.toolbar.thickness = تغییر ضخامت bbb.highlighter.toolbar.thickness.accessibilityName = ضخامت اشاره گر ترسیم در تخته سÙید -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = خارج شدید +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = تایید bbb.logout.appshutdown = برنامه ÛŒ سرور خاموش شده است bbb.logout.asyncerror = رخداد یک خطای Async @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = اتصال به سرور قطع شد bbb.logout.rejected = اتصال به سرور رد شد bbb.logout.invalidapp = برنامه ÛŒ red5 موجود نیست bbb.logout.unknown = اتصال کلاینت شما از سرور قطع شده است -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = شما از Ú¯Ùتگو خارج شدید bbb.logour.breakoutRoomClose = مرورگر شما بسته خواهد شد -bbb.logout.ejectedFromMeeting = مدیر شما را از جلسه بیرون انداخت +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = اگر این خروج به صورت غیر منتظره رخ داده، برای اتصال مجدد دکمه زیر را کلیک کنید. bbb.logout.refresh.label = اتصال مجدد -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = تایید خروج از سیستم bbb.logout.confirm.message = آیا مطمئن هستید میخواهید از سیستم خارج شوید؟ -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = بله bbb.logout.confirm.no = خیر -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=اشکال در ارتباط bbb.connection.reconnecting=برقراری مجدد ارتباط bbb.connection.reestablished=ارتباط مجددا برقرار شد @@ -530,59 +539,60 @@ bbb.notes.title = یادداشت ها bbb.notes.cmpColorPicker.toolTip = رنگ متن bbb.notes.saveBtn = ذخیره bbb.notes.saveBtn.toolTip = ذخیره یادداشت -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = جهت اطمینان از کارکرد صØÛŒØ Ø§Ø´ØªØ±Ø§Ú© گذاری صÙØÙ‡ در کادر ظاهر شده روی پذیرÙتن کلیک کنید bbb.settings.deskshare.start = بررسی وضعیت اشتراک صÙØÙ‡ bbb.settings.voice.volume = Ùعالیت میکروÙون -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = خطای مربوط به نسخه ÛŒ Ùلش bbb.settings.flash.text = نسخه ÛŒ نصب شده ÛŒ Ùلش شما {0} است، اما شما برای اجرای درست سیستم Øداقل نیازمند نسخه ÛŒ {1} هستید. برای نصب آخرین نسخه ÛŒ ادوبی Ùلش پلیر روی دکمه ÛŒ زیر کلیک کنید. bbb.settings.flash.command = جدیدترین نسخه Ùلش را نصب کنید bbb.settings.isight.label = خطای دوربین iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Ùلش پلیر RC2 10.2 را نصب کنید. bbb.settings.warning.label = اخطار bbb.settings.warning.close = بستن اخطار کنونی bbb.settings.noissues = مشکل قابل ذکری یاÙت نشد bbb.settings.instructions = درخواست Ùلش مبنی بر اجازه برای استÙاده از دوربین را بپذیرید. اگرشما قادر به مشاهده تصویر Ùˆ شنیدن صدای خود هستید، مرورگر شما درست تنظیم شده است. مشکلات بالقوه ÛŒ دیگر در زیر نشان داده شده اند. برای یاÙتن راه ØÙ„ اØتمالی روی هر کدام کلیک کنید -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = مثلث ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = تبدیل اشاره گر تخته سÙید به مثلث ltbcustom.bbb.highlighter.toolbar.line = خط @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = شما به آخرین پیام bbb.accessibility.chat.chatBox.navigatedLatestRead = شما به جدیدترین پیامی Ú©Ù‡ خوانده اید رسیده اید bbb.accessibility.chat.chatwindow.input = کادر ورودی Ú¯Ùتگوی متنی bbb.accessibility.chat.chatwindow.audibleChatNotification = اطلاع رسانی صوتی برای چت -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = لطÙا برای پیمایش بین پیام های اخیر Ú©Ù‡ خوانده اید از کلیدهای جهتی استÙاده کنید bbb.accessibility.notes.notesview.input = ورودی یادداشت ها @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = جا دادن Ú©Ù„ ارائه در ص bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = تغییر نقش Ùرد انتخاب شده به ارائه دهنده bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = اخراج Ùرد انتخاب شده از جلسه +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = قطع یا وصل کردن صدای Ùرد انتخاب شده bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = انتشار bbb.polling.closeButton.label = خروج bbb.polling.customPollOption.label = نظرسنجی سÙارشی bbb.polling.pollModal.title = نتیجه زنده نظرسنجی +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = وارد کردن انتخاب های نظرسنجی bbb.polling.respondersLabel.novotes = در انتظار پاسخ bbb.polling.respondersLabel.text = {0} کاربر پاسخ دادند @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = اعمال تنظیمات Ù‚ÙÙ„ کردن bbb.lockSettings.cancel = لنصرا٠bbb.lockSettings.cancel.toolTip = بستن این پنجره بدون ذخیره سازی +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Ù‚ÙÙ„ کردن توسط مدیر bbb.lockSettings.privateChat = Ú¯Ùتگوی خصوصی bbb.lockSettings.publicChat = Ú¯Ùتگوی عمومی bbb.lockSettings.webcam = دوربین +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = میکروÙÙ† bbb.lockSettings.layout = Ø·Ø±Ø Ø¨Ù†Ø¯ÛŒ bbb.lockSettings.title=Ù‚ÙÙ„ کردن مشاهده کنندگان @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=امکان الØاق شدن را Ù‚ÙÙ„ Ú©Ù† bbb.users.breakout.breakoutRooms = اتاق های Breakout bbb.users.breakout.updateBreakoutRooms = به روز رسانی اتاق های Breakout +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = زمان باقی مانده برای اتاق های Breakout bbb.users.breakout.calculatingRemainingTime = Ù…Øاسبه زمان باقی مانده bbb.users.breakout.closing = در Øال بستن +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = اتاق ها bbb.users.breakout.roomsCombo.accessibilityName = تعداد اتاق هایی Ú©Ù‡ باید ایجاد شوند. bbb.users.breakout.room = اتاق -bbb.users.breakout.randomAssign = انتصاب کاربران به صورت تصادÙÛŒ bbb.users.breakout.timeLimit = Ù…Øدودیت زمانی bbb.users.breakout.durationStepper.accessibilityName = Ù…Øدودیت زمانی به دقیقه bbb.users.breakout.minutes = دقیقه @@ -834,14 +848,14 @@ bbb.users.breakout.invite = دعوت bbb.users.breakout.close = بستن bbb.users.breakout.closeAllRooms = بستن تمام اتاق های Berakout bbb.users.breakout.insufficientUsers = تعداد ناکاÙب کاربر: شما Ù…ÛŒ بایست Øداقل یک کاربر در یک اتاق Breakout قرار دهید. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = اتاق bbb.users.roomsGrid.users = کاربران bbb.users.roomsGrid.action = Ùعالیت @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = انتقال صدا bbb.users.roomsGrid.join = الØاق bbb.users.roomsGrid.noUsers = کاربری در این اتاق وجود ندارد -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/fi_FI/bbbResources.properties b/bigbluebutton-client/locale/fi_FI/bbbResources.properties index c0eea07c76cce8da4abc32d81356a8f23ce4a63a..0dfeb90d1d78fea20ee65edccb259702d9f79a64 100644 --- a/bigbluebutton-client/locale/fi_FI/bbbResources.properties +++ b/bigbluebutton-client/locale/fi_FI/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Yhdistetään palvelimeen -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Anteeksi, emme voi yhdistää palvelimeen. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Avaa loki-ikkuna -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Asettelu Työkalurivi Nollaa Asettelu -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Sinulla voi olla vanha kielikäännös BigBlueButtonista. bbb.oldlocalewindow.reminder2 = Ole hyvä ja tyhjennä selaimesi välimuisti ja yritä uudelleen. bbb.oldlocalewindow.windowTitle = Varoitus: Vanha käännös -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = Kokeile Kaiuttimia -bbb.micSettings.playSound.toolTip = Play music to test your speakers +bbb.micSettings.playSound.toolTip = bbb.micSettings.hearFromHeadset = Sinun pitäisi kuulla ääni kuullokkeistasi, ei tietokoneen kaiuttimista. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Vaihda/testaa mikrofonia -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Liity äänellä keskusteluun -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Ääniasetukset. Ääniasetukset ovat päällimmäisenä, kunnes ikkuna suljetaan. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Apua bbb.mainToolbar.logoutBtn = Kirjaudu ulos -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Valitse kieli bbb.mainToolbar.settingsBtn = Asetukset bbb.mainToolbar.settingsBtn.toolTip = Avaa asetukset bbb.mainToolbar.shortcutBtn = Pikanäppäimet -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Pienennä bbb.window.maximizeRestoreBtn.toolTip = Suurenna bbb.window.closeBtn.toolTip = Sulje @@ -162,101 +163,102 @@ bbb.presentation.titleBar = Esitysikkunan otsikkopalkki bbb.chat.titleBar = Keskustelu ikkunan otsikkopalkki. bbb.users.title = Käyttäjät{0} {1} bbb.users.titleBar = Käyttäjien ikkunapalkki, tuplaklikkaa suurentaaksesi -bbb.users.quickLink.label = Users Window +bbb.users.quickLink.label = bbb.users.minimizeBtn.accessibilityName = Pienennä käyttäjien ikkuna bbb.users.maximizeRestoreBtn.accessibilityName = Suurenna käyttäjien ikkuna bbb.users.settings.buttonTooltip = Asetukset -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = Webkameran asetukset bbb.users.settings.muteAll = Mykistä kaikki bbb.users.settings.muteAllExcept = Mykistä kaikki paitsi esittelijä bbb.users.settings.unmuteAll = Mykistys pois kaikilta -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = Klikkaa puhuaksesi bbb.users.pushToMute.toolTip = Klikkaa mykistääksesi itsesi bbb.users.muteMeBtnTxt.talk = Myksitys pois bbb.users.muteMeBtnTxt.mute = Mykistä bbb.users.muteMeBtnTxt.muted = Mykistetty -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Käyttäjien lista. Käytä nuolinäppäimiä navigointiin. bbb.users.usersGrid.nameItemRenderer = Nimi -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you +bbb.users.usersGrid.nameItemRenderer.youIdentifier = bbb.users.usersGrid.statusItemRenderer = Tila -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter +bbb.users.usersGrid.statusItemRenderer.changePresenter = bbb.users.usersGrid.statusItemRenderer.presenter = Esittäjä bbb.users.usersGrid.statusItemRenderer.moderator = Moderaattori -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Katselija -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Media bbb.users.usersGrid.mediaItemRenderer.talking = Puhuu bbb.users.usersGrid.mediaItemRenderer.webcam = Webikamera on jaettu bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Klikkaa katsellaksesi webbikameraa bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Klikkaa mykistys pois käyttäjältä bbb.users.usersGrid.mediaItemRenderer.pushToMute = Klikkaa mykistääksesi käyttäjä -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Poista käyttäjä +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Webikamera on jaettu bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofoni pois päältä bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofoni päälle bbb.users.usersGrid.mediaItemRenderer.noAudio = Et ole liittynyt äänellä konferenssiin. -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Esitys -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Esitysikkuna Edellinen sivu. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = Esitysikkuna Seuraava sivu. bbb.presentation.maxUploadFileExceededAlert = Virhe: Tiedoston koko on suurempi kuin sallittu koko. bbb.presentation.uploadcomplete = Lähetys on valmis. Odota dokumentin konvertointia. bbb.presentation.uploaded = Lähetetty. bbb.presentation.document.supported = Lähetetty dokumentti on tuettu. Konvertointi alkaa... bbb.presentation.document.converted = Office dokumentin konvertointi onnistui. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO virhe. Ota yhteyttä järjestelmän ylläpitäjään. bbb.presentation.error.security = Suojausvirhe. Ota yhteyttä järjestelmän ylläpitäjään. bbb.presentation.error.convert.notsupported = Virhe: Lähetettyä tiedostomuotoa ei tueta. Ole hyvä ja lähetä yhteensopiva tiedosto. @@ -264,8 +266,8 @@ bbb.presentation.error.convert.nbpage = Virhe: Lähetetystä tiedostosta ei void bbb.presentation.error.convert.maxnbpagereach = Virhe: Lähetetyssä tiedostossa on liian monta sivua. bbb.presentation.converted = {0} {1}:stä sivusta konvertoitu. bbb.presentation.slider = Esitysikkunan lähennys -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Esitystiedosto bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD @@ -276,79 +278,80 @@ bbb.presentation.minimizeBtn.accessibilityName = Pienennä esitysikkuna bbb.presentation.maximizeRestoreBtn.accessibilityName = Suurenna esitysikkuna bbb.presentation.closeBtn.accessibilityName = Sulje esitysikkuna bbb.fileupload.title = Lähetä esitykseen tiedostoja -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = Valitse tiedosto bbb.fileupload.selectBtn.toolTip = Valitse tiedosto bbb.fileupload.uploadBtn = Lähetä bbb.fileupload.uploadBtn.toolTip = Lähetä tiedosto bbb.fileupload.deleteBtn.toolTip = Poista esitys bbb.fileupload.showBtn = Näytä -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Näytä esitys -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Pienoiskuvia luodaan... bbb.fileupload.progBarLbl = Edistyminen: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Keskustelu -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = Keskusteluikkunan Tekstin Väri -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = Lähetä Viesti -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Kaikki -bbb.chat.optionsTabName = Options +bbb.chat.optionsTabName = bbb.chat.privateChatSelect = Keskusteluikkuna Valitse henkilö jonka kanssa haluat keskustella yksityisesti -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Keskusteluikkuna Keskustelu vaihtoehdot bbb.chat.fontSize = Keskusteluikkunan Fontin koko -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Pienennä keskusteluikkuna bbb.chat.maximizeRestoreBtn.accessibilityName = Suurenna keskusteluikkuna bbb.chat.closeBtn.accessibilityName = Sulje keskusteluikkuna -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = bbb.publishVideo.startPublishBtn.toolTip = Aloita Jakaminen -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Videotelakka -bbb.videodock.quickLink.label = Webcams Window +bbb.videodock.quickLink.label = bbb.video.minimizeBtn.accessibilityName = Pienennä videotelakan ikkuna bbb.video.maximizeRestoreBtn.accessibilityName = Suurenna videotelakan ikkuna bbb.video.controls.muteButton.toolTip = Mykistä tai mykistys pois {0} @@ -361,96 +364,98 @@ bbb.video.publish.hint.waitingApproval = Odotan hyväksymistä bbb.video.publish.hint.videoPreview = Videon esikatselu bbb.video.publish.hint.openingCamera = Avataan kameraa... bbb.video.publish.hint.cameraDenied = Kameran käyttö estetty -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Julkaisee... bbb.video.publish.closeBtn.accessName = Webkamera ikkuna sulje ikkuna -bbb.video.publish.closeBtn.label = Cancel +bbb.video.publish.closeBtn.label = bbb.video.publish.titleBar = Julkaise webbikameran ikkuna -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Lisää muokattu ulkoasu listalle -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = bbb.layout.loadButton.toolTip = Lataa ulkoasu tiedostosta bbb.layout.saveButton.toolTip = Tallenna ulkoasu tiedostoksi bbb.layout.lockButton.toolTip = Lukitse ulkoasu @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Ota ulkoasu käyttöön bbb.layout.combo.custom = * Muokattu ulkoasu bbb.layout.combo.customName = Muokattu ulkoasu bbb.layout.combo.remote = Etäohjaus -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Ulkoasut tallennettu onnistuneesti +bbb.layout.save.ioerror = bbb.layout.load.complete = Ulkoasut ladattu onnistuneesti -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Kynä bbb.highlighter.toolbar.pencil.accessibilityName = Vaihda kursori kynään bbb.highlighter.toolbar.ellipse = Ympyrä @@ -484,105 +492,107 @@ bbb.highlighter.toolbar.rectangle = Neliö bbb.highlighter.toolbar.rectangle.accessibilityName = Vaihda kursori ruuduksi bbb.highlighter.toolbar.panzoom = Panoroi ja lähennä bbb.highlighter.toolbar.panzoom.accessibilityName = Vaihda kursori panorointiin ja lähennykseen -bbb.highlighter.toolbar.clear = Clear All Annotations +bbb.highlighter.toolbar.clear = bbb.highlighter.toolbar.clear.accessibilityName = Tyhjennä valkotaulu -bbb.highlighter.toolbar.undo = Undo Annotation +bbb.highlighter.toolbar.undo = bbb.highlighter.toolbar.undo.accessibilityName = Kumoa viimeinen valkotaulun kuvio bbb.highlighter.toolbar.color = Valitse Väri -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = Muuta koko -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Palvelinsovellus on suljettu bbb.logout.asyncerror = Async virhe bbb.logout.connectionclosed = Yhteys palvelimeen on suljettu -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Yhteys palvelimeen on hylätty bbb.logout.invalidapp = red5 ohjelmaa ei löydy bbb.logout.unknown = Selaimesi kadotti yhteyden palvelimeen -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Kirjauduit ulos konferenssista -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Muistiinpanot bbb.notes.cmpColorPicker.toolTip = Tekstin väri bbb.notes.saveBtn = Tallenna bbb.notes.saveBtn.toolTip = Tallenna muistiinpano -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klikkaa salliaksesi ponnahdusikkunan joka tarkistaa toimiiko työpöydän jako oikein bbb.settings.deskshare.start = Tarkista Työpöydän Jako bbb.settings.voice.volume = Mikrofonin aktiviteetti -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash versio virhe bbb.settings.flash.text = Flash {0} on asennettu, mutta tarvitset vähintään version {1} käyttääksesi BigBlueButtonia oikein.\nKlikkaa alla olevaa nappia asentaaksesi viimeisimmät Adobe Flash version. bbb.settings.flash.command = Asenna uusin Flash bbb.settings.isight.label = iSight kamera virhe -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Asenna Flash 10.2 RC2 bbb.settings.warning.label = Varoitus bbb.settings.warning.close = Sulje tämä varoitus bbb.settings.noissues = Mitään suurempia ongelmia ei löytynyt. bbb.settings.instructions = Hyväksy Flash ponnahdus joka kysyy sinulta kameran käyttöoikeuksia. Jos näet ja kuulet itsesi, selaimesi on oikein määritetty. Muut mahdolliset ongelmat näkyvät alla. Klikkaa jokaista kohtaa löytääksesi mahdollisen ratkaisun. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Kolmio ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Vaihda kursori kolmioksi ltbcustom.bbb.highlighter.toolbar.line = Viiva @@ -591,34 +601,34 @@ ltbcustom.bbb.highlighter.toolbar.text = Teksti ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Vaihda valkotaulun kursori tekstiksi ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Tekstin väri ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Fontin koko -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Olet ensimmäisessä viestissä. bbb.accessibility.chat.chatBox.reachedLatest = Olet uusimmassa viestissä. @@ -626,33 +636,33 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Olet siirtynyt ensimmäiseen vi bbb.accessibility.chat.chatBox.navigatedLatest = Olet siirtynyt uusimpaan viestiin. bbb.accessibility.chat.chatBox.navigatedLatestRead = Olet siirtynyt uusimpaan lukemaasi viestiin. bbb.accessibility.chat.chatwindow.input = Keskustelun lähetys -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = bbb.accessibility.notes.notesview.input = Muistiinpanojen lähetys bbb.shortcuthelp.title = Pikanäppäimet -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Pienennä oikoteiden ikkuna bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Suurenna oikoteiden ikkuna bbb.shortcuthelp.closeBtn.accessibilityName = Sulje oikoteiden ikkuna -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Laajat oikotiet bbb.shortcuthelp.dropdown.presentation = Esitysten oikotiet bbb.shortcuthelp.dropdown.chat = Keskustelun oikotiet bbb.shortcuthelp.dropdown.users = Käyttäjien oikotiet -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = bbb.shortcutkey.general.minimize = 189 bbb.shortcutkey.general.minimize.function = Pienennä nykyinen ikkuna bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Suurenna ikkuna -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Pois Flash ikkunasta bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Mykistys ja mykistys pois mikrofonista @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Siirrä kohdistus esitys ikkunaan bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Siirrä kohdistus keskustelu ikkunaan -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Avaa työpöydänjako ikkuna @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Kirjaudu ulos tästä tapaamisesta bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Nosta kättä -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Lähetä esitys bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Mene edelliselle sivulle @@ -696,208 +706,166 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Mene seuraavalle sivulle bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Sovita sivu leveyteen -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Sovita sivut sivuun -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Tee valitusta käyttäjästä esittelijä -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Potkaise valittu käyttäjä tapaamisesta +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Mykistys tai mykistys pois valitulta käyttäjältä bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Mykistys tai mykistys pois kaikilta käyttääjiltä -bbb.shortcutkey.users.muteAllButPres = 65 +bbb.shortcutkey.users.muteAllButPres = bbb.shortcutkey.users.muteAllButPres.function = Mykistä kaikki muut paitsi esittelijä -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 +bbb.shortcutkey.chat.focusTabs = bbb.shortcutkey.chat.focusTabs.function = Kohdista keskustelu välilehteen -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = Lähetä keskusteluviesti -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 +bbb.shortcutkey.chat.chatbox.advance = bbb.shortcutkey.chat.chatbox.advance.function = Siirry seuraavaan viestiin bbb.shortcutkey.chat.chatbox.goback = 80 bbb.shortcutkey.chat.chatbox.goback.function = Siirry seuraavaan viestiin -bbb.shortcutkey.chat.chatbox.repeat = 32 +bbb.shortcutkey.chat.chatbox.repeat = bbb.shortcutkey.chat.chatbox.repeat.function = Toista nykyinen viesti -bbb.shortcutkey.chat.chatbox.golatest = 39 +bbb.shortcutkey.chat.chatbox.golatest = bbb.shortcutkey.chat.chatbox.golatest.function = Siirry uusimpaan viestiin -bbb.shortcutkey.chat.chatbox.gofirst = 37 +bbb.shortcutkey.chat.chatbox.gofirst = bbb.shortcutkey.chat.chatbox.gofirst.function = Siirry ensimmäiseen viestiin -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Sulje -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/fr/bbbResources.properties b/bigbluebutton-client/locale/fr/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/fr/bbbResources.properties +++ b/bigbluebutton-client/locale/fr/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/fr_CA/bbbResources.properties b/bigbluebutton-client/locale/fr_CA/bbbResources.properties index 48127ce18ac100c39c05403d905e5e6db481ef39..11580918202255865143e26c336705cffc889b95 100644 --- a/bigbluebutton-client/locale/fr_CA/bbbResources.properties +++ b/bigbluebutton-client/locale/fr_CA/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Connexion au serveur -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = chargement bbb.mainshell.statusProgress.cannotConnectServer = Désolé, impossible d'établir une connexion au serveur. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Ouvrir la fenêtre de log @@ -10,15 +10,15 @@ bbb.mainshell.resetLayoutBtn.toolTip = Disposition par défaut bbb.mainshell.notification.tunnelling = Tunnel bbb.mainshell.notification.webrtc = Audio WebRTC bbb.mainshell.fullscreenBtn.toolTip = Basculer en mode plein écran -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.quote.sentence.1 = Il n'y a pas de secrets pour réussir. C'est le résultat de la préparation, du travail acharné et de l'apprentissage de l'échec. bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Dis-moi et j'oublie. Enseigne-moi et je m'en souviens. Implique-moi et j'apprends. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = J'ai appris la valeur du travail acharné en travaillant dur. bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = Développer une passion pour l'apprentissage. Si vous le faites, vous ne cesserez jamais de grandir. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = La recherche crée de nouvelles connaissances. bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = Vous avez probablement de vieilles traductions de BigBlueButton. bbb.oldlocalewindow.reminder2 = Veuillez effacer la mémoire cache de votre fureteur web et essayer de nouveau. @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Connexion en cours bbb.micSettings.webrtc.transferring = Transfert en cours bbb.micSettings.webrtc.endingecho = Joindre l'audio bbb.micSettings.webrtc.endedecho = Test d'écho terminé. +bbb.micPermissions.message.browserhttp = Ce serveur n'est pas configuré avec SSL. Par conséquent, {0} désactive le partage de votre microphone. bbb.micPermissions.firefox.title = Permissions du microphone de Firefox bbb.micPermissions.firefox.message = Cliquer pour permettre à Chrome d'utiliser votre microphone. bbb.micPermissions.chrome.title = Permissions du microphone de Chrome @@ -100,7 +101,7 @@ bbb.inactivityWarning.cancel = Annuler bbb.mainToolbar.helpBtn = Aide bbb.mainToolbar.logoutBtn = Déconnexion bbb.mainToolbar.logoutBtn.toolTip = Déconnexion -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | Réinitialiser le minuteur de déconnexion bbb.mainToolbar.langSelector = Sélectionner votre langue bbb.mainToolbar.settingsBtn = Paramètres bbb.mainToolbar.settingsBtn.toolTip = Ouvrir les paramètres @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Cette session ne peux être enreg bbb.mainToolbar.recordBtn.confirm.title = Confirmer l'enregistrement bbb.mainToolbar.recordBtn.confirm.message.start = Voulez-vous débuter l'enregistrement de la session? bbb.mainToolbar.recordBtn.confirm.message.stop = Voulez-vous cesser l'enregistrement de la session? -bbb.mainToolbar.recordBtn..notification.title = Enregistrer la notification -bbb.mainToolbar.recordBtn..notification.message1 = Vous pouvez enregistrer cette conférence. -bbb.mainToolbar.recordBtn..notification.message2 = Vous devez cliquer sur le bouton Démarrer / Cesser l'enregistrement dans la barre de titre pour débuter / arrêter l’enregistrement. +bbb.mainToolbar.recordBtn.notification.title = Enregistrer la notification +bbb.mainToolbar.recordBtn.notification.message1 = Vous pouvez enregistrer cette conférence. +bbb.mainToolbar.recordBtn.notification.message2 = Vous devez cliquer sur le bouton Démarrer / Cesser l'enregistrement dans la barre de titre pour débuter / arrêter l’enregistrement. bbb.mainToolbar.recordingLabel.recording = (Enregistrement en cours) bbb.mainToolbar.recordingLabel.notRecording = N'enregistre pas bbb.waitWindow.waitMessage.message = Vous êtes invité, veuillez attendre l'approbation du modérateur. @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Désactiver la sourdine pour bbb.users.usersGrid.mediaItemRenderer.pushToMute = Activer la sourdine pour {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Verrouiller {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Déverrouiller {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Bannir {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = Retirer {0} bbb.users.usersGrid.mediaItemRenderer.webcam = Partager la webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Micro fermé bbb.users.usersGrid.mediaItemRenderer.micOn = Micro ouvert @@ -246,6 +247,7 @@ bbb.presentation.fitToWidth.toolTip = Ajuster la présentation à la largeur bbb.presentation.fitToPage.toolTip = Ajuster la présentation à la page bbb.presentation.uploadPresBtn.toolTip = Importer un fichier bbb.presentation.downloadPresBtn.toolTip = Télécharger les présentations +bbb.presentation.poll.response = Répondre au sondage bbb.presentation.backBtn.toolTip = Page précédente bbb.presentation.btnSlideNum.accessibilityName = Diapo {0} sur {1} bbb.presentation.btnSlideNum.toolTip = Sélectionner une page @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Envoi du fichier terminé. Merci de patienter bbb.presentation.uploaded = envoyé. bbb.presentation.document.supported = Le document envoyé est compatible. Conversion en cours... bbb.presentation.document.converted = Conversion du fichier réussie. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Essayez de convertir le document en PDF et de le télécharger à nouveau. bbb.presentation.error.document.convert.invalid = Veuillez convertir ce document en PDF en premier. bbb.presentation.error.io = Erreur E/S: Contactez l'administrateur. bbb.presentation.error.security = Erreur de sécurité: Contactez l'administrateur. @@ -283,18 +285,18 @@ bbb.fileupload.uploadBtn = Envoyer bbb.fileupload.uploadBtn.toolTip = Envoyer le fichier sélectionné bbb.fileupload.deleteBtn.toolTip = Supprimer une présentation bbb.fileupload.showBtn = Afficher -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Essayez un autre fichier bbb.fileupload.showBtn.toolTip = Afficher cette présentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Fermer +bbb.fileupload.close.accessibilityName = Fermer la fenêtre de téléchargement du fichier bbb.fileupload.genThumbText = Génération des aperçus.. bbb.fileupload.progBarLbl = Progression: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. +bbb.fileupload.fileFormatHint = Vous pouvez télécharger n'importe quel document (PDF) ou Office. Pour le meilleur résultat, nous vous recommandons de télécharger un fichier PDF. bbb.fileupload.letUserDownload = Activer le téléchargement de la présentation bbb.fileupload.letUserDownload.tooltip = Cochez ici si vous souhaitez que les autres utilisateurs téléchargent votre présentation bbb.filedownload.title = Télécharger les présentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window +bbb.filedownload.close.tooltip = Fermer +bbb.filedownload.close.accessibilityName = Fermer la fenêtre de téléchargement du fichier bbb.filedownload.fileLbl = Choisissez le fichier à télécharger: bbb.filedownload.downloadBtn = Télécharger bbb.filedownload.downloadBtn.toolTip = Télécharger la présentation @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = Sauvegarder le clavardage bbb.chat.saveBtn.accessibilityName = Sauvegarder le clavardage dans un fichier bbb.chat.saveBtn.label = Sauvegarder bbb.chat.save.complete = Clavardage sauvegardé avec succès +bbb.chat.save.ioerror = Clavardage non sauvgardé. Essayez d'enregistrer à nouveau. bbb.chat.save.filename = Clavardage public bbb.chat.copyBtn.toolTip = Copier le clavardage bbb.chat.copyBtn.accessibilityName = Copier le clavardage dans le presse-papiers @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Fermer la fenêtre de paramètres pour l bbb.video.publish.closeBtn.label = Annuler bbb.video.publish.titleBar = Publier la webcam bbb.video.streamClose.toolTip = Fermer la transaction : {0} +bbb.video.message.browserhttp = Ce serveur n'est pas configuré avec SSL. Par conséquent, {0} désactive le partage de votre webcam. bbb.screensharePublish.title = Partage d'écran: Aperçu du présentateur bbb.screensharePublish.pause.tooltip = Partage d'écran en pause bbb.screensharePublish.pause.label = Pause @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = Arrêtez de partager votre écran. bbb.toolbar.sharednotes.toolTip = Ouvrir les notes partagées bbb.toolbar.video.toolTip.start = Partager la webcam bbb.toolbar.video.toolTip.stop = Cesser de partager la webcam +bbb.layout.addButton.label = Ajouter bbb.layout.addButton.toolTip = Ajouter la mise en page personnalisée à la liste bbb.layout.overwriteLayoutName.title = Remplacer la mise en page bbb.layout.overwriteLayoutName.text = Nom déjà utilisé. Voulez-vous écraser? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * Mise en page personnalisée bbb.layout.combo.customName = Mise en page personnalisée bbb.layout.combo.remote = Distant bbb.layout.window.name = Nom de la mise en page +bbb.layout.window.close.tooltip = Fermer +bbb.layout.window.close.accessibilityName = Fermer créer une nouvelle fenêtre de mise en page. bbb.layout.save.complete = Les mises en page ont été sauvegardées +bbb.layout.save.ioerror = Les mises en page n'ont pas été sauvgardés. Essayez d'enregistrer à nouveau. bbb.layout.load.complete = Les mises en page ont été téléchargées bbb.layout.load.failed = Impossible de charger les mises en page bbb.layout.sync = Votre mise en page a été envoyée à tous les participants @@ -468,7 +476,7 @@ bbb.layout.name.closedcaption = Sous-titrage bbb.layout.name.videochat = Clavardage vidéo bbb.layout.name.webcamsfocus = Webconférence bbb.layout.name.presentfocus = Visioconférence -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Présentation + Utilisateurs bbb.layout.name.lectureassistant = Assistant de lecture bbb.layout.name.lecture = Lecture bbb.layout.name.sharednotes = Notes partagées @@ -493,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Couleur de la marque bbb.highlighter.toolbar.thickness = Changer l'épaisseur bbb.highlighter.toolbar.thickness.accessibilityName = Épaisseur du trait bbb.highlighter.toolbar.multiuser = Dessin multi-utilisateur -bbb.logout.title = Déconnecté bbb.logout.button.label = OK bbb.logout.appshutdown = L'application serveur a été arrêté bbb.logout.asyncerror = Un erreur de synchronisation est survenu @@ -505,9 +512,11 @@ bbb.logout.unknown = Votre client a perdu la connexion au serveur bbb.logout.guestkickedout = Le modérateur ne vous a pas permis de participer à cette réunion bbb.logout.usercommand = Vous êtes maintenant déconnecté de la conférence bbb.logour.breakoutRoomClose = La fenêtre de votre navigateur sera fermée -bbb.logout.ejectedFromMeeting = Un modérateur vous a expulsé de la réunion. +bbb.logout.ejectedFromMeeting = Vous avez éjecter de la rencontre bbb.logout.refresh.message = Si cette fin de session était involontaire, cliquer le bouton ci-bas pour vous reconnecter. bbb.logout.refresh.label = Reconnecter +bbb.logout.feedback.hint = +bbb.logout.feedback.label = bbb.settings.title = Paramètres bbb.settings.ok = OK bbb.settings.cancel = Annuler @@ -532,32 +541,33 @@ bbb.notes.saveBtn = Sauvegarder bbb.notes.saveBtn.toolTip = Sauvegarder la note bbb.sharedNotes.title = Notes partagées bbb.sharedNotes.quickLink.label = Module des notes partagées -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window +bbb.sharedNotes.createNoteWindow.label = Nom de la note +bbb.sharedNotes.createNoteWindow.close.tooltip = Fermer +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Fermer créer une nouvelle fenêtre de note bbb.sharedNotes.typing.single = {0} tape... bbb.sharedNotes.typing.double = {0} et {1} tapent ... bbb.sharedNotes.typing.multiple = Plusieurs personnes tapent ... bbb.sharedNotes.save.toolTip = Sauvegarder les notes dans un fichier bbb.sharedNotes.save.complete = Les notes ont été sauvegardées +bbb.sharedNotes.save.ioerror = Les notes n'ont pas été sauvgardés. Essayez d'enregistrer à nouveau. bbb.sharedNotes.save.htmlLabel = Texte formaté (.html) bbb.sharedNotes.save.txtLabel = Texte brut (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note +bbb.sharedNotes.new.label = Créer +bbb.sharedNotes.new.toolTip = Créer une note supplémentaire +bbb.sharedNotes.limit.label = Limite de notes atteinte +bbb.sharedNotes.clear.label = Effacer cette note bbb.sharedNotes.undo.toolTip = Annuler la modification bbb.sharedNotes.redo.toolTip = Rétablir la modification bbb.sharedNotes.toolbar.toolTip = Barre d'outils de mise en forme de texte -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? +bbb.sharedNotes.settings.toolTip = Paramètres de notes partagées +bbb.sharedNotes.clearWarning.title = Nettoyage des notes partagées +bbb.sharedNotes.clearWarning.message = Cette action détruit les notes sur cette fenêtre pour tout le monde, et il n'y a aucun moyen de défaire. Êtes-vous sûr de vouloir fermer ces notes? bbb.sharedNotes.additionalNotes.closeWarning.title = Fermer les notes partagées bbb.sharedNotes.additionalNotes.closeWarning.message = Cette action détruit les notes sur cette fenêtre pour tout le monde, et il n'y a aucun moyen de défaire. Êtes-vous sûr de vouloir fermer ces notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.messageLengthWarning.title = Limite de changement de caractère dépassée +bbb.sharedNotes.messageLengthWarning.text = Votre modification dépasse la limite de {0}. Essayez de faire un petit changement. +bbb.sharedNotes.remaining.tooltip = Espace restant disponible dans les notes partagées +bbb.sharedNotes.full.tooltip = Capacité atteinte (essayez de supprimer du texte) bbb.settings.deskshare.instructions = Choisissez Permettre sur la boîte de dialogue qui apparaîtra pour voir si le partage d'écran fonctionne convenablement pour vous bbb.settings.deskshare.start = Regarder le partage d'écran bbb.settings.voice.volume = Activité du micro @@ -568,7 +578,7 @@ bbb.settings.flash.label = Erreur de la version de Flash bbb.settings.flash.text = Vous avez Flash {0} d'installé, mais vous devez avoir au moins la version {1} pour utiliser BigBlueButton convenablement. Pour installer la version la plus récente de Adobe Flash, cliquez sur le bouton ci-dessous. bbb.settings.flash.command = Installer la nouvelle version de Flash bbb.settings.isight.label = Erreur de webcam iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = Si vous avez des problèmes avec votre webcam iSight, c'est peut-être parce que vous utilisez OS X 10.6.5, qui est connu pour avoir un problème avec la capture de vidéo Flash.\nPour corriger cela, le lien ci-dessous va installer une nouvelle version de Flash, ou mettre à jour votre Mac vers la nouvelle version. bbb.settings.isight.command = Installer Flash 10.2 RC2 bbb.settings.warning.label = Attention bbb.settings.warning.close = Fermer ce message @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajuster les pages à la page bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Faire de la personne sélectionnée le présentateur bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Éjecter la personne sélectionnée de la rencontre +bbb.shortcutkey.users.kick.function = Supprimer la personne sélectionnée de la réunion bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activer ou désactiver la sourdine pour la personne sélectionnée bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Publier bbb.polling.closeButton.label = Fermer bbb.polling.customPollOption.label = Votes personnalisés... bbb.polling.pollModal.title = Résultats de sondage en direct +bbb.polling.pollModal.hint = Laissez cette fenêtre ouverte pour permettre aux étudiants de répondre au sondage. La sélection du bouton Publier ou Fermer met fin au sondage. bbb.polling.customChoices.title = Entrez les choix de vote bbb.polling.respondersLabel.novotes = En attente de réponses bbb.polling.respondersLabel.text = {0} utilisateurs ont répondu @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Appliquer les paramètres de verrouillage bbb.lockSettings.cancel = Annuler bbb.lockSettings.cancel.toolTip = Fermer cette fenêtre sans sauvegarder +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Verrouillage du modérateur bbb.lockSettings.privateChat = Clavardage privé bbb.lockSettings.publicChat = Clavardage public bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Micro bbb.lockSettings.layout = Mise en page bbb.lockSettings.title=Verrouiller les participants @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Barrez lorsque joint bbb.users.breakout.breakoutRooms = Salles de discussion bbb.users.breakout.updateBreakoutRooms = Mettre à jour les salles de discussion +bbb.users.breakout.timerForRoom.toolTip = Temps restant pour les salles de discussion bbb.users.breakout.timer.toolTip = Temps restant pour les salles de discussion bbb.users.breakout.calculatingRemainingTime = Calcul du temps restant... bbb.users.breakout.closing = Fermer +bbb.users.breakout.closewarning.text = Les salles de discussions ferment dans une minute. bbb.users.breakout.rooms = Chambres bbb.users.breakout.roomsCombo.accessibilityName = Nombre de salles à créer bbb.users.breakout.room = Chambre -bbb.users.breakout.randomAssign = Assigner les utilisateurs au hasard bbb.users.breakout.timeLimit = Limite de temps bbb.users.breakout.durationStepper.accessibilityName = Limite de temps en minutes bbb.users.breakout.minutes = Minutes @@ -836,11 +850,11 @@ bbb.users.breakout.closeAllRooms = Fermer toutes les salles de discussion bbb.users.breakout.insufficientUsers = Nombre insuffisant d'utilisateurs. Vous devez placer au moins un utilisateur dans une salle d'ateliers. bbb.users.breakout.confirm = Rejoindre une salle de discussion bbb.users.breakout.invited = Vous avez été invité à vous joindre <b>à la salle de discussion</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. +bbb.users.breakout.accept = En acceptant, vous quitterez automatiquement les conférences audio et vidéo. bbb.users.breakout.joinSession = Se joindre à la session. -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window +bbb.users.breakout.joinSession.accessibilityName = Rejoindre une salle de discussion +bbb.users.breakout.joinSession.close.tooltip = Fermer +bbb.users.breakout.joinSession.close.accessibilityName = Fermer la fenêtre de la salle de discussion bbb.users.breakout.youareinroom = Vous êtes dans la salle de discussion {0} bbb.users.roomsGrid.room = Chambre bbb.users.roomsGrid.users = Utilisateurs @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Joindre bbb.users.roomsGrid.noUsers = Pas d'utilisateurs dans cette salle bbb.langSelector.default=Language par défaut -bbb.langSelector.ar=Arabe -bbb.langSelector.az_AZ=Azerbaïdjanais -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgare -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinois (simplifié) -bbb.langSelector.zh_TW=Chinois (traditionnel) -bbb.langSelector.hr_HR=Croate -bbb.langSelector.cs_CZ=Tchèque -bbb.langSelector.da_DK=Danois -bbb.langSelector.nl_NL=Hollandais -bbb.langSelector.en_US=Anglais -bbb.langSelector.et_EE=Estonien -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finlandais -bbb.langSelector.fr_FR=Français -bbb.langSelector.fr_CA=Français (canadien) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=Allemand -bbb.langSelector.el_GR=Grec -bbb.langSelector.he_IL=Hébreu -bbb.langSelector.hu_HU=Hongrois -bbb.langSelector.id_ID=Indonésien -bbb.langSelector.it_IT=Italien -bbb.langSelector.ja_JP=Japonais -bbb.langSelector.ko_KR=Coréen -bbb.langSelector.lv_LV=Letton -bbb.langSelector.lt_LT=Lituanie -bbb.langSelector.mn_MN=Mongol -bbb.langSelector.ne_NE=Népalais -bbb.langSelector.no_NO=Norvégien -bbb.langSelector.pl_PL=polonais -bbb.langSelector.pt_BR=Portugais (brésilien) -bbb.langSelector.pt_PT=Portugais -bbb.langSelector.ro_RO=Roumain -bbb.langSelector.ru_RU=Russe -bbb.langSelector.sr_SR=Serbe (cyrillique) -bbb.langSelector.sr_RS=Serbe (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovaque -bbb.langSelector.sl_SL=Slovène -bbb.langSelector.es_ES=Espanol -bbb.langSelector.es_LA=Espagnol (latino-américain) -bbb.langSelector.sv_SE=Suédois -bbb.langSelector.th_TH=Thaïlandais -bbb.langSelector.tr_TR=Turc -bbb.langSelector.uk_UA=Ukrainien -bbb.langSelector.vi_VN=Vietnamien -bbb.langSelector.cy_GB=Gallois -bbb.langSelector.oc=Occitan + +bbb.alert.cancel = Annuler +bbb.alert.ok = OK +bbb.alert.no = Non +bbb.alert.yes = Oui diff --git a/bigbluebutton-client/locale/fr_FR/bbbResources.properties b/bigbluebutton-client/locale/fr_FR/bbbResources.properties index 5bd5ebb3b03e98047cc1ff88fa40fc3af42587fe..d1529d0ff295af7ffe64d3dff0badbfc15f75645 100644 --- a/bigbluebutton-client/locale/fr_FR/bbbResources.properties +++ b/bigbluebutton-client/locale/fr_FR/bbbResources.properties @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Connexion bbb.micSettings.webrtc.transferring = Transfert en cours bbb.micSettings.webrtc.endingecho = Connexion à la conversation audio en cours bbb.micSettings.webrtc.endedecho = Test d'écho terminé. +bbb.micPermissions.message.browserhttp = Ce serveur n'est pas configuré avec SSL. Il en résulte, {0} désactive le partage de votre microphone. bbb.micPermissions.firefox.title = Permission d'utilisation du microphone par Firefox bbb.micPermissions.firefox.message = Cliquez sur Autoriser pour donner à Firefox la permission d'utiliser votre microphone bbb.micPermissions.chrome.title = Permission d'utilisation du microphone par Chrome @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Cette session ne peut être enreg bbb.mainToolbar.recordBtn.confirm.title = Confirmer l'enregistrement bbb.mainToolbar.recordBtn.confirm.message.start = Êtes-vous sur de vouloir démarrer l'enregistrement de cette session ? bbb.mainToolbar.recordBtn.confirm.message.stop = Êtes-vous sur de vouloir arrêter l'enregistrement de cette session ? -bbb.mainToolbar.recordBtn..notification.title = Notification d'enregistrement -bbb.mainToolbar.recordBtn..notification.message1 = Vous pouvez enregistrer cette conférence. -bbb.mainToolbar.recordBtn..notification.message2 = Vous devez activer le bouton Démarrer/Arrêter l'enregistrement dans la barre de titre pour débuter/terminer l'enregistrement. +bbb.mainToolbar.recordBtn.notification.title = Notification d'enregistrement +bbb.mainToolbar.recordBtn.notification.message1 = Vous pouvez enregistrer cette conférence. +bbb.mainToolbar.recordBtn.notification.message2 = Vous devez activer le bouton Démarrer/Arrêter l'enregistrement dans la barre de titre pour débuter/terminer l'enregistrement. bbb.mainToolbar.recordingLabel.recording = (Enregistrement en cours) bbb.mainToolbar.recordingLabel.notRecording = Pas en cours d'enregistrement bbb.waitWindow.waitMessage.message = Vous êtes un invité, veuillez attendre l'approbation du modérateur. @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Désactiver la sourdine pour bbb.users.usersGrid.mediaItemRenderer.pushToMute = Activer la sourdine pour {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Verrouiller {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Déverrouiller {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Éjecter {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = Enlever {0} bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam en cours de partage bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone inactif bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone actif @@ -500,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Couleur de la marque bbb.highlighter.toolbar.thickness = Changer l'épaisseur bbb.highlighter.toolbar.thickness.accessibilityName = Épaisseur du trait bbb.highlighter.toolbar.multiuser = Dessin Multi-utilisateurs -bbb.logout.title = Déconnecté bbb.logout.button.label = OK bbb.logout.appshutdown = L'application serveur a été arrêtée bbb.logout.asyncerror = Une erreur de synchronisation est survenue @@ -512,9 +512,11 @@ bbb.logout.unknown = Votre client a perdu la connexion au serveur bbb.logout.guestkickedout = Le modérateur ne vous a pas autorisé à rejoindre cette conférence. bbb.logout.usercommand = Vous êtes maintenant déconnecté de la conférence bbb.logour.breakoutRoomClose = La fenêtre de votre navigateur va se fermer -bbb.logout.ejectedFromMeeting = Un modérateur vous a éjecté de la conférence. +bbb.logout.ejectedFromMeeting = Vous avez été enlevé de la conférence. bbb.logout.refresh.message = Si cette déconnexion était inattendue, cliquez sur le bouton ci-dessous pour vous reconnecter. bbb.logout.refresh.label = Se reconnecter +bbb.logout.feedback.hint = Comment pouvons-nous rendre BigBlueButton meilleur? +bbb.logout.feedback.label = Nous serions ravis d'entendre parler de votre expérience avec BigBlueButton (facultatif) bbb.settings.title = Paramètres bbb.settings.ok = OK bbb.settings.cancel = Annuler @@ -710,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajuster les diapositives à la page bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Faire de la personne sélectionnée le présentateur bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Éjecter la personne sélectionnée de la conférence +bbb.shortcutkey.users.kick.function = Enlever de la conférence la personne sélectionnée. bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activer ou désactiver la sourdine pour la personne sélectionnée bbb.shortcutkey.users.muteall = 65 @@ -811,10 +813,12 @@ bbb.lockSettings.save.tooltip = Appliquer les paramètres de verrouillage bbb.lockSettings.cancel = Annuler bbb.lockSettings.cancel.toolTip = Fermer cette fenêtre sans sauvegarder +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Verrouillage du modérateur bbb.lockSettings.privateChat = Discussion privée bbb.lockSettings.publicChat = Discussion publique bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microphone bbb.lockSettings.layout = Disposition bbb.lockSettings.title=Verrouiller les spectateurs @@ -828,10 +832,10 @@ bbb.users.breakout.timerForRoom.toolTip = Temps imparti pour cette salle de grou bbb.users.breakout.timer.toolTip = Temps imparti pour les salles de groupe bbb.users.breakout.calculatingRemainingTime = Calcul du temps restant... bbb.users.breakout.closing = Fermeture +bbb.users.breakout.closewarning.text = Les salles de groupe ferment dans une minute. bbb.users.breakout.rooms = Salles bbb.users.breakout.roomsCombo.accessibilityName = Nombre de salles à créer bbb.users.breakout.room = Salle -bbb.users.breakout.randomAssign = Affecter les utilisateurs aléatoirement bbb.users.breakout.timeLimit = Limite de temps bbb.users.breakout.durationStepper.accessibilityName = Limite de temps en minutes bbb.users.breakout.minutes = Minutes @@ -860,3 +864,8 @@ bbb.users.roomsGrid.join = Rejoindre bbb.users.roomsGrid.noUsers = Pas d'utilisateur dans cette salle bbb.langSelector.default=Langue par défaut + +bbb.alert.cancel = Annuler +bbb.alert.ok = OK +bbb.alert.no = No +bbb.alert.yes = Oui diff --git a/bigbluebutton-client/locale/gl/bbbResources.properties b/bigbluebutton-client/locale/gl/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/gl/bbbResources.properties +++ b/bigbluebutton-client/locale/gl/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/gl_ES/bbbResources.properties b/bigbluebutton-client/locale/gl_ES/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/gl_ES/bbbResources.properties +++ b/bigbluebutton-client/locale/gl_ES/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/he_IL/bbbResources.properties b/bigbluebutton-client/locale/he_IL/bbbResources.properties index 77c1eb0e96c324d41b2ca7a880854d22656b4a2b..4b3bd9c2ac365100108848ceaf99c8642460b0cd 100644 --- a/bigbluebutton-client/locale/he_IL/bbbResources.properties +++ b/bigbluebutton-client/locale/he_IL/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = מתחבר לשרת -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = ×œ×¦×¢×¨× ×• ×œ× ×”×¦×œ×—× ×• להתחבר לשרת -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = פתח חלון רש×\n -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = ×פס ×ª×‘× ×™×ª -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = יתכן ×©×§×™×™×ž×™× ×ª×¨×’×•×ž×™× ×™×©× ×™× ×©×œ ×”×ª×•×›× ×” bbb.oldlocalewindow.reminder2 = בבקשה ×œ× ×§×•×ª ×ת הסליק של הדפדפן ×•×œ× ×¡×•×ª שוב bbb.oldlocalewindow.windowTitle = ×זהרה: ×ª×¨×’×•×ž×™× ×™×©× ×™× -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = bbb.micSettings.title = בדיקת ×ודיו -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = השמע צליל × ×¡×™×•×Ÿ bbb.micSettings.playSound.toolTip = × ×’×Ÿ ×ת המוזיקה על ×ž× ×¦ לבדוק ×ת ×”×¨×ž×§×•×œ×™× ×©×œ×š bbb.micSettings.hearFromHeadset = ×תה ×מור לשמוע צליל ב××•×–× ×™×•×ª, ×œ× ×‘×¨×ž×§×•×œ×™× ×©×œ המחשב bbb.micSettings.speakIntoMic = ×× ×תה משתמש בדיבורית (×ו ××•×–× ×™×•×ª), ×תה ×מור לשמוע ×ת קול ב××•×–× ×™×™×” - ×œ× ×ž×”×¨×ž×§×•×œ×™× ×©×œ המחשב. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = החלף מיקרופון bbb.micSettings.changeMic.toolTip = פתח ×ת תבית ההגדרות המיקרופון ×ž×”× ×’×Ÿ פל×ש -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = הצטרף לשיחה קולית -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = ביטול -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = לבטל ×›× ×™×¡×” לשיחת ועידת ×ודיו bbb.micSettings.access.helpButton = עזרה (פתיחת ×¡×¨×˜×•× ×™ הדרכה ×”× ×‘×“×£ חדש) bbb.micSettings.access.title = הגדרות ×ודיו. הפוקוס ייש×ר על החלון הגדרות שמע ×–×” עד סגירת החלון. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = עזרה bbb.mainToolbar.logoutBtn = ×”×ª× ×ª×§ bbb.mainToolbar.logoutBtn.toolTip = ×œ×”×ª× ×ª×§ -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = בחירת שפה bbb.mainToolbar.settingsBtn = הגדרות bbb.mainToolbar.settingsBtn.toolTip = הגדרות פתוחות bbb.mainToolbar.shortcutBtn = מקשי קיצור bbb.mainToolbar.shortcutBtn.toolTip = פתח ×ת החלון קיצורי ×ž×§×©×™× -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = מזעור bbb.window.maximizeRestoreBtn.toolTip = הגדלה bbb.window.closeBtn.toolTip = סגירה @@ -162,7 +163,7 @@ bbb.presentation.titleBar = פס כותרת החלון של המצגת bbb.chat.titleBar = פס כותרת החלון של הצ'×ט bbb.users.title = משתמשי×{0} {1} bbb.users.titleBar = פס כותרת החלון של ×”×ž×©×ª×ž×©×™× -bbb.users.quickLink.label = Users Window +bbb.users.quickLink.label = bbb.users.minimizeBtn.accessibilityName = מזער ×ת חלון ×”×ž×©×ª×ž×©×™× bbb.users.maximizeRestoreBtn.accessibilityName = הגדל ×ת חלון ×”×ž×©×ª×ž×©×™× bbb.users.settings.buttonTooltip = הגדרות @@ -171,16 +172,16 @@ bbb.users.settings.webcamSettings = הגדרות מצלמת ××™× ×˜×¨× ×˜ bbb.users.settings.muteAll = השתק ×ת כל ×”×ž×©×ª×ž×©×™× bbb.users.settings.muteAllExcept = השתק ×ת כל ×”×ž×©×ª×ž×©×™× ×ž×œ×‘×“ המגיש bbb.users.settings.unmuteAll = ביטול השתקה כל ×”×ž×©×ª×ž×©×™× -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = דבר bbb.users.pushToMute.toolTip = השתק ×ת עצמך bbb.users.muteMeBtnTxt.talk = ביטול השתקה bbb.users.muteMeBtnTxt.mute = השתק bbb.users.muteMeBtnTxt.muted = מושתק -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = רשימת המשתמשי×. השתמש במקשי ×”×—×¦×™× ×›×“×™ ×œ× ×•×•×˜. bbb.users.usersGrid.nameItemRenderer = ×©× bbb.users.usersGrid.nameItemRenderer.youIdentifier = ×ת(×”) @@ -188,24 +189,24 @@ bbb.users.usersGrid.statusItemRenderer = סטטוס bbb.users.usersGrid.statusItemRenderer.changePresenter = לחץ כדי להפוך מגיש bbb.users.usersGrid.statusItemRenderer.presenter = מגיש bbb.users.usersGrid.statusItemRenderer.moderator = ×ž× ×—×” -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = מדיה bbb.users.usersGrid.mediaItemRenderer.talking = ×ž×“×‘×¨×™× bbb.users.usersGrid.mediaItemRenderer.webcam = שיתוף מצלמת ××™× ×˜×¨× ×˜ @@ -214,40 +215,41 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Translate\n\nUnmute\nלבטל bbb.users.usersGrid.mediaItemRenderer.pushToMute = להשתיק {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = ×œ× ×¢×•×œ {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = לבטל × ×¢×™×œ×” {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = להעיף {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = שיתוף מצלמת ××™× ×˜×¨× ×˜ bbb.users.usersGrid.mediaItemRenderer.micOff = מיקרופון כבוי bbb.users.usersGrid.mediaItemRenderer.micOn = מיקרופון מופעל bbb.users.usersGrid.mediaItemRenderer.noAudio = ×œ× ×‘×©×™×—×ª ועידה ×ודיו -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = מצגת bbb.presentation.titleWithPres = הצגה: {0} -bbb.presentation.quickLink.label = Presentation Window +bbb.presentation.quickLink.label = bbb.presentation.fitToWidth.toolTip = התמה הצגה לרוחב bbb.presentation.fitToPage.toolTip = התמה הצגה לעמוד bbb.presentation.uploadPresBtn.toolTip = העלת ההצגה -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = שקופית קודמת -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = בחר שקופית bbb.presentation.forwardBtn.toolTip = שקופית הב××” bbb.presentation.maxUploadFileExceededAlert = שגי××”: קובץ גדול מהמותר @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = העל××” הסתיימה בהצלחה. ×× × bbb.presentation.uploaded = הועלה bbb.presentation.document.supported = סוג המסמך × ×ª×ž×š, מתחיל להמיר.. bbb.presentation.document.converted = מסמך הומר בהצלחה -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = שגי×ת IO: ×× × ×¦×•×¨ קשר ×¢× ×ž× ×”×œ המערכת bbb.presentation.error.security = שגי×ת ×בטחה: ×× × ×¦×•×¨ קשר ×¢× ×ž× ×”×œ המערכת bbb.presentation.error.convert.notsupported = שגי××”: סוג הקובץ שהועלה ××™× ×• × ×ª×ž×š, ×× × ×”×¢×œ×” קובץ × ×ª×ž×š @@ -264,8 +266,8 @@ bbb.presentation.error.convert.nbpage = שגי××”: ×œ× ×”×™×™×ª×” ×פשרות bbb.presentation.error.convert.maxnbpagereach = שגי××”: למסמך שהועלה יותר מדי ×¢×ž×•×“×™× bbb.presentation.converted = הומרו {0} מתוך {1} שקופיות bbb.presentation.slider = רמת ×”×–×•× ×©×œ המצגה -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = קובץ המצגת bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD @@ -276,79 +278,80 @@ bbb.presentation.minimizeBtn.accessibilityName = הקטן ×ת החלון ההצ bbb.presentation.maximizeRestoreBtn.accessibilityName = הגדל ×ת החלון ההצגה bbb.presentation.closeBtn.accessibilityName = סגור ×ת החלון ההצגה bbb.fileupload.title = העלה מצגת -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = בחר קובץ bbb.fileupload.selectBtn.toolTip = עיון bbb.fileupload.uploadBtn = העלה קובץ bbb.fileupload.uploadBtn.toolTip = העלה קובץ bbb.fileupload.deleteBtn.toolTip = מחק מצגת bbb.fileupload.showBtn = הצג -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = הפעל מצגת -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = מייצר ×ª×ž×•× ×•×ª ×ž×•×§×˜× ×•×ª... bbb.fileupload.progBarLbl = התקדמות: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = צ'×ט -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = צבע טקסט bbb.chat.input.accessibilityName = שדה לעריכת הודעת צ'×ט bbb.chat.sendBtn.toolTip = שלח הודעה bbb.chat.sendBtn.accessibilityName = שלח הודעה בצ'×ט -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = הכל bbb.chat.optionsTabName = ×פשרויות bbb.chat.privateChatSelect = בחר ××“× ×יתו תרצה לשוחח ב×ופן פרטי bbb.chat.private.userLeft = המשתמש יצ××” -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = בחר המשתמש לפתיחת שיחה פרטית -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = ×פשרויות צ'×ט bbb.chat.fontSize = גודל טקסט bbb.chat.cmbFontSize.toolTip = בחר ×ת גודל הטקסט בצ׳×ט -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = הקטן ×ת חלון הצ׳×ט bbb.chat.maximizeRestoreBtn.accessibilityName = הגדלת ×œ×ž×§×¡×™×ž×•× ×ת חלון הצ׳×ט bbb.chat.closeBtn.accessibilityName = סגור ×ת חלון הצ׳×ט -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = ×©× ×” ×ת מצלמת ×”××™× ×˜×¨× ×˜ bbb.publishVideo.changeCameraBtn.toolTip = פתח ×ת חלון המצלמת ×”××™× ×˜×¨× ×˜ bbb.publishVideo.cmbResolution.tooltip = בחר ×ת הרזולוציה של המצלמת ×”××™× ×˜×¨× ×˜ bbb.publishVideo.startPublishBtn.labelText = תתחיל לשתף bbb.publishVideo.startPublishBtn.toolTip = שתף וויד×ו -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = ×¢×’×™× ×ª וויד×ו -bbb.videodock.quickLink.label = Webcams Window +bbb.videodock.quickLink.label = bbb.video.minimizeBtn.accessibilityName = הקטן ×ת החלון של המצלמת ×”××™× ×˜×¨× ×˜ bbb.video.maximizeRestoreBtn.accessibilityName = הגדל ×œ×ž×§×¡×™×ž×•× ×ת החלון של המצלמת ×”××™× ×˜×¨× ×˜ bbb.video.controls.muteButton.toolTip = השתיק ×ו בטל ההשתקה {0} @@ -366,538 +369,503 @@ bbb.video.publish.hint.publishing = מפרס×... bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box bbb.video.publish.closeBtn.label = ביטול bbb.video.publish.titleBar = ×¤×¨×¡× ×ת חלון המצלמה -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = מדגיש -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = עיגול -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = מרובע -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = בחר צבע -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = ×©× ×” עובי -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ×ישור bbb.logout.appshutdown = ×”×ª×•×›× ×” × ×¡×’×¨×” בצד שרת bbb.logout.asyncerror = התרחשה שגי××” ×-×¡×™× ×›×¨×•× ×™×ª bbb.logout.connectionclosed = × ×¡×’×¨ הקשר לשרת המרוחק -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = × ×“×—×” הקשר מהשרת המרוחק bbb.logout.invalidapp = ×פליקצית רד5 ×œ× ×§×™×™×ž×ª bbb.logout.unknown = הלקוח ×יבד קשר ×¢× ×”×©×¨×ª -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = × ×•×ª×§×ª מהוועידה -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = לחץ על Allow בחלון שיקפוץ כדי לבדוק ×”×× ×©×™×ª×•×£ שולחן העבודה עובד בצורה ×ª×§×™× ×” ×צלך bbb.settings.deskshare.start = בדוק ×ת שיתוף שולחן העבודה bbb.settings.voice.volume = פעילות מיקרופון -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = שגי××” בגרסת פל×ש bbb.settings.flash.text = ×צלך ×ž×•×ª×§× ×ª גירסה {0}, ×בל דרושה לפחות גירסה {1} של פל×ש על ×ž× ×ª להפעיל ×ת BighBlueButton.\nלחץ על הכפתור למטה על ×ž× ×ª להתקין ×ת הגרסה החדשה ביותר של פל×ש bbb.settings.flash.command = התקן גרסה ×¢×“×›× ×™×ª של פל×ש bbb.settings.isight.label = שגי×ת מצלמת iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = התקן Flash 10.2 RC2 bbb.settings.warning.label = ×זהרה bbb.settings.warning.close = סגורה ×זהרה זו bbb.settings.noissues = ×œ× ×”×ª×’×œ×• × ×•×©××™× ×‘×œ×ª×™ ×¤×ª×•×¨×™× -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = bbb.shortcuthelp.title = מקשי קיצור -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = Translate\n\nSend chat message\nשלח הודעה בצ'×ט -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = סגור -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = תתחיל לשתף bbb.publishVideo.changeCameraBtn.labelText = ×©× ×” ×ת מצלמת ×”××™× ×˜×¨× ×˜ -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = ביטול -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/hi/bbbResources.properties b/bigbluebutton-client/locale/hi/bbbResources.properties index e335debb7975c71d36f4b222f0a5ca15e5bcd2e0..c64986623aa70d2d154a9107dffbe6be1293f1d7 100644 --- a/bigbluebutton-client/locale/hi/bbbResources.properties +++ b/bigbluebutton-client/locale/hi/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = सरà¥à¤µà¤° से कनेकà¥à¤Ÿ हो रहा है -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = कà¥à¤·à¤®à¤¾ करें, हम सरà¥à¤µà¤° से कनेकà¥à¤Ÿ नहीं कर सकते bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = लॉग विंडो खोलें @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = अमानà¥à¤¯ पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤° bbb.mainshell.resetLayoutBtn.toolTip = रीसेट लेआउट bbb.mainshell.notification.tunnelling = टनेलिंग bbb.mainshell.notification.webrtc = वेबआरटीसी ऑडियो -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = आपके पास , BigBlueButton का à¤à¤• पà¥à¤°à¤¾à¤¨à¥€ à¤à¤¾à¤·à¤¾ अनà¥à¤µà¤¾à¤¦ हो सकता है। bbb.oldlocalewindow.reminder2 = कृपया अपने बà¥à¤°à¤¾à¤‰à¤œà¤¼à¤° का कैश साफ़ करें और फिर से पà¥à¤°à¤¯à¤¾à¤¸ करें। bbb.oldlocalewindow.windowTitle = चेतावनी: पà¥à¤°à¤¾à¤¨à¥€ à¤à¤¾à¤·à¤¾ अनà¥à¤µà¤¾à¤¦ @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = कनेकà¥à¤Ÿ किया जा bbb.micSettings.webrtc.transferring = सà¥à¤¥à¤¾à¤¨à¤¾à¤‚तरण bbb.micSettings.webrtc.endingecho = ऑडियो में शामिल हो रहा है bbb.micSettings.webrtc.endedecho = इको टेसà¥à¤Ÿ समापà¥à¤¤ हà¥à¤† +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = फ़ायरफ़ॉकà¥à¤¸ माइकà¥à¤°à¥‹à¤«à¥‹à¤¨ अनà¥à¤®à¤¤à¤¿à¤¯à¤¾à¤‚ -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = कà¥à¤°à¥‹à¤® माइकà¥à¤°à¥‹à¤«à¤¼à¥‹à¤¨ अनà¥à¤®à¤¤à¤¿à¤¯à¤¾à¤‚ -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = ऑडियो चेतावनी bbb.micWarning.joinBtn.label = वैसे à¤à¥€ जà¥à¤¡à¤¼à¥‡à¤‚ bbb.micWarning.testAgain.label = फिर से परीकà¥à¤·à¤£ करें @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = वेबआरटीसी bbb.webrtcWarning.connection.dropped = वेबआरटीसी कनेकà¥à¤¶à¤¨ गिरा दिया bbb.webrtcWarning.connection.reconnecting = फिर से कनेकà¥à¤Ÿ करने का पà¥à¤°à¤¯à¤¾à¤¸ bbb.webrtcWarning.connection.reestablished = वेबआरटीसी कनेकà¥à¤¶à¤¨ फिर से सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = मदद bbb.mainToolbar.logoutBtn = लोग आउट bbb.mainToolbar.logoutBtn.toolTip = लॉग आउट करें -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = à¤à¤¾à¤·à¤¾ चà¥à¤¨à¤¿à¤ bbb.mainToolbar.settingsBtn = सेटिंगà¥à¤¸ bbb.mainToolbar.settingsBtn.toolTip = सेटिंगà¥à¤¸ खोलें @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = रिकॉरà¥à¤¡à¤¿à¤‚ग शॠbbb.mainToolbar.recordBtn.toolTip.stop = रिकॉरà¥à¤¡à¤¿à¤‚ग बंद करें bbb.mainToolbar.recordBtn.toolTip.recording = सतà¥à¤° रिकॉरà¥à¤¡ किया जा रहा है bbb.mainToolbar.recordBtn.toolTip.notRecording = सतà¥à¤° रिकॉरà¥à¤¡ नहीं किया जा रहा है -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = रिकॉरà¥à¤¡à¤¿à¤‚ग की पà¥à¤·à¥à¤Ÿà¤¿ करें bbb.mainToolbar.recordBtn.confirm.message.start = कà¥à¤¯à¤¾ आप वाकई सतà¥à¤° रिकारà¥à¤¡ करना शà¥à¤°à¥‚ करना चाहते हैं? bbb.mainToolbar.recordBtn.confirm.message.stop = कà¥à¤¯à¤¾ आप वाकई सतà¥à¤° रिकॉरà¥à¤¡ करना बंद करना चाहते हैं? -bbb.mainToolbar.recordBtn..notification.title = रिकॉरà¥à¤¡ अधिसूचना -bbb.mainToolbar.recordBtn..notification.message1 = आप इस मीटिंग को रिकॉरà¥à¤¡ कर सकते हैं -bbb.mainToolbar.recordBtn..notification.message2 = आरंठ/ अंत रिकॉरà¥à¤¡à¤¿à¤‚ग के लिठआपको शीरà¥à¤·à¤• बार में रिकॉरà¥à¤¡ / रिकॉरà¥à¤¡à¤¿à¤‚ग पà¥à¤°à¤¾à¤°à¤‚ठकरें को रोकना होगा। +bbb.mainToolbar.recordBtn.notification.title = रिकॉरà¥à¤¡ अधिसूचना +bbb.mainToolbar.recordBtn.notification.message1 = आप इस मीटिंग को रिकॉरà¥à¤¡ कर सकते हैं +bbb.mainToolbar.recordBtn.notification.message2 = आरंठ/ अंत रिकॉरà¥à¤¡à¤¿à¤‚ग के लिठआपको शीरà¥à¤·à¤• बार में रिकॉरà¥à¤¡ / रिकॉरà¥à¤¡à¤¿à¤‚ग पà¥à¤°à¤¾à¤°à¤‚ठकरें को रोकना होगा। bbb.mainToolbar.recordingLabel.recording = रिकॉरà¥à¤¡ किया जा रहा है... bbb.mainToolbar.recordingLabel.notRecording = रिकॉरà¥à¤¡à¤¿à¤‚ग नहीं -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = विनà¥à¤¯à¤¾à¤¸ सूचनाà¤à¤‚ bbb.clientstatus.notification = अपठित सूचनाà¤à¤‚ bbb.clientstatus.close = बंद करे @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = आपका WebRTC ऑडियो bbb.clientstatus.webrtc.almostWeakStatus = आपका WebRTC ऑडिओ कनेकà¥à¤¶à¤¨ खराब है bbb.clientstatus.webrtc.weakStatus = शायद आपके WebRTC ऑडियो कनेकà¥à¤¶à¤¨ में कोई समसà¥à¤¯à¤¾ है bbb.clientstatus.webrtc.message = बेहतर ऑडियो के लिठफ़ायरफ़ॉकà¥à¤¸ या कà¥à¤°à¥‹à¤® का उपयोग करने की सलाह दें -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = छोटा करें bbb.window.maximizeRestoreBtn.toolTip = बड़ा करें bbb.window.closeBtn.toolTip = बंद करे @@ -188,15 +189,15 @@ bbb.users.usersGrid.statusItemRenderer = सà¥à¤¥à¤¿à¤¤à¤¿ bbb.users.usersGrid.statusItemRenderer.changePresenter = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤•à¤°à¥à¤¤à¤¾ को बनाने के लिठकà¥à¤²à¤¿à¤• करें bbb.users.usersGrid.statusItemRenderer.presenter = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤•à¤°à¥à¤¤à¤¾ bbb.users.usersGrid.statusItemRenderer.moderator = मंदक -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = bbb.users.usersGrid.statusItemRenderer.away = बाहर bbb.users.usersGrid.statusItemRenderer.confused = असà¥à¤ªà¤·à¥à¤Ÿ bbb.users.usersGrid.statusItemRenderer.neutral = निषà¥à¤ªà¤•à¥à¤· @@ -214,13 +215,13 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = अनमà¥à¤¯à¥‚ट कर bbb.users.usersGrid.mediaItemRenderer.pushToMute = मौन करें bbb.users.usersGrid.mediaItemRenderer.pushToLock = ताला bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = अनलॉक -bbb.users.usersGrid.mediaItemRenderer.kickUser = लात मारना +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = वेबकैम साà¤à¤¾ करना bbb.users.usersGrid.mediaItemRenderer.micOff = माइकà¥à¤°à¥‹à¤«à¤¼à¥‹à¤¨ बंद bbb.users.usersGrid.mediaItemRenderer.micOn = माइकà¥à¤°à¥‹à¤«à¤¼à¥‹à¤¨ चालू है bbb.users.usersGrid.mediaItemRenderer.noAudio = ऑडियो समà¥à¤®à¥‡à¤²à¤¨ में नहीं -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = साफ़ करें bbb.users.emojiStatus.raiseHand = कहना चाहता हूठbbb.users.emojiStatus.happy = आनंदित @@ -230,22 +231,23 @@ bbb.users.emojiStatus.confused = असà¥à¤ªà¤·à¥à¤Ÿ bbb.users.emojiStatus.away = बाहर bbb.users.emojiStatus.thumbsUp = शाबाश bbb.users.emojiStatus.thumbsDown = नाकामयाब -bbb.users.emojiStatus.applause = Applause +bbb.users.emojiStatus.applause = bbb.users.emojiStatus.agree = मै सहमत हà¥à¤‚ -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = पà¥à¤°à¥‡à¤œà¥‡à¤‚टेशन bbb.presentation.titleWithPres = {0}ï¶{/0} {1}      {/1} {2}पà¥à¤°à¤œà¥‡à¤¨à¥à¤Ÿà¥‡à¤¶à¤¨{/2} bbb.presentation.quickLink.label = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ विंडो bbb.presentation.fitToWidth.toolTip = चौड़ाई के लिठपà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ फ़िट करें bbb.presentation.fitToPage.toolTip = पेज के लिठपà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ फ़िट करें bbb.presentation.uploadPresBtn.toolTip = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ अपलोड करें -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = -- पिछली सà¥à¤²à¤¾à¤‡à¤¡ -- bbb.presentation.btnSlideNum.accessibilityName = {1} का {0} सà¥à¤²à¤¾à¤‡à¤¡ bbb.presentation.btnSlideNum.toolTip = à¤à¤• सà¥à¤²à¤¾à¤‡à¤¡ चà¥à¤¨à¥‡à¤‚ @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = अपलोड पूरा हà¥à¤†Â कृ bbb.presentation.uploaded = अपलोड समà¥à¤ªà¥‚रà¥à¤£ bbb.presentation.document.supported = अपलोड किया गया दसà¥à¤¤à¤¾à¤µà¥‡à¤œà¤¼ समरà¥à¤¥à¤¿à¤¤ है। कनà¥à¤µà¤°à¥à¤Ÿ करने के लिठशà¥à¤°à¥‚ ... bbb.presentation.document.converted = कारà¥à¤¯à¤¾à¤²à¤¯ दसà¥à¤¤à¤¾à¤µà¥‡à¤œà¤¼ को सफलतापूरà¥à¤µà¤• रूपांतरित किया। -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = कृपया इस दसà¥à¤¤à¤¾à¤µà¥‡à¤œà¤¼ को पीडीà¤à¤« में पहली बार कनवरà¥à¤Ÿ करें। bbb.presentation.error.io = आईओ तà¥à¤°à¥à¤Ÿà¤¿: वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤• से संपरà¥à¤• करें। bbb.presentation.error.security = सà¥à¤°à¤•à¥à¤·à¤¾ तà¥à¤°à¥à¤Ÿà¤¿: कृपया वà¥à¤¯à¤µà¤¸à¥à¤¥à¤¾à¤ªà¤• से संपरà¥à¤• करें। @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = अपलोड bbb.fileupload.uploadBtn.toolTip = चयनित फ़ाइल अपलोड करें bbb.fileupload.deleteBtn.toolTip = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ हटाà¤à¤‚ bbb.fileupload.showBtn = दिखाà¤à¤ -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ दिखाà¤à¤‚ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = जनरेटिंग थंबनेल .. bbb.fileupload.progBarLbl = progress -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = चैट bbb.chat.quickLink.label = चैट विंडो bbb.chat.cmpColorPicker.toolTip = टेकà¥à¤¸à¥à¤Ÿ का रंग bbb.chat.input.accessibilityName = चैट संदेश संपादन फ़ीलà¥à¤¡ bbb.chat.sendBtn.toolTip = मेसेज à¤à¥‡à¤œà¥‡à¤‚ bbb.chat.sendBtn.accessibilityName = चैट संदेश à¤à¥‡à¤œà¥‡à¤‚ -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = bbb.chat.copyBtn.toolTip = बातचीत की नकल करे -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = सà¤à¥€ पाठको कॉपी करें bbb.chat.publicChatUsername = सारà¥à¤µà¤œà¤¨à¤¿à¤• bbb.chat.optionsTabName = विकलà¥à¤ª @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = शेयरिंग शà¥à¤°à¥‚ bbb.publishVideo.startPublishBtn.toolTip = अपने वेबकैम को साà¤à¤¾ करना शà¥à¤°à¥‚ करें bbb.publishVideo.startPublishBtn.errorName = वेबकैम को साà¤à¤¾ नहीं किया जा सकता कारण bbb.webcamPermissions.chrome.title = कà¥à¤°à¥‹à¤® वेबकैम अनà¥à¤®à¤¤à¤¿à¤¯à¤¾à¤‚ -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = वेबकैम bbb.videodock.quickLink.label = वेबकैम विंडो bbb.video.minimizeBtn.accessibilityName = वेबकैम विंडो को छोटा करें @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = वेबकैम सेटिंगॠbbb.video.publish.closeBtn.label = रदà¥à¤¦ करना bbb.video.publish.titleBar = वेबकैम विंडो पà¥à¤°à¤•à¤¾à¤¶à¤¿à¤¤ करें bbb.video.streamClose.toolTip = के लिठसà¥à¤Ÿà¥à¤°à¥€à¤® बंद करें: {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = सà¥à¤•à¥à¤°à¥€à¤¨ साà¤à¤¾à¤•à¤°à¤£: पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤•à¤°à¥à¤¤à¤¾ का पूरà¥à¤µà¤¾à¤µà¤²à¥‹à¤•à¤¨ bbb.screensharePublish.pause.tooltip = सà¥à¤•à¥à¤°à¥€à¤¨ शेयर रोकें bbb.screensharePublish.pause.label = विराम @@ -428,8 +432,8 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = सà¥à¤•à¥à¤°à¥€à¤¨ bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = à¤à¤¸à¤¾ लगता है कि आप गà¥à¤ªà¥à¤¤ या निजी बà¥à¤°à¤¾à¤‰à¤œà¤¼à¤¿à¤‚ग का उपयोग कर सकते हैं। सà¥à¤¨à¤¿à¤¶à¥à¤šà¤¿à¤¤ करें कि आपके à¤à¤•à¥à¤¸à¤Ÿà¥‡à¤‚शन सेटिंगà¥à¤¸ के अंतरà¥à¤—त आप à¤à¤•à¥à¤¸à¤Ÿà¥‡à¤‚शन को गà¥à¤ªà¥à¤¤ / निजी बà¥à¤°à¤¾à¤‰à¤œà¤¼à¤¿à¤‚ग में चलाने की अनà¥à¤®à¤¤à¤¿ देते हैं। bbb.screensharePublish.WebRTCExtensionInstallButton.label = सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ करने के लिठयहां कà¥à¤²à¤¿à¤• करें bbb.screensharePublish.WebRTCUseJavaButton.label = जावा सà¥à¤•à¥à¤°à¥€à¤¨ साà¤à¤¾à¤•à¤°à¤£ का उपयोग करें -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = सà¥à¤•à¥à¤°à¥€à¤¨ साà¤à¤¾ करना bbb.screenshareView.fitToWindow = खिड़की के लिठफिट bbb.screenshareView.actualSize = वासà¥à¤¤à¤µà¤¿à¤• आकार पà¥à¤°à¤¦à¤°à¥à¤¶à¤¿à¤¤ करें @@ -443,12 +447,13 @@ bbb.toolbar.phone.toolTip.unmute = समà¥à¤®à¥‡à¤²à¤¨ सà¥à¤¨à¤¨à¤¾ शॠbbb.toolbar.phone.toolTip.nomic = कोई माइकà¥à¤°à¥‹à¤«à¤¼à¥‹à¤¨ नहीं मिला bbb.toolbar.deskshare.toolTip.start = ओपन सà¥à¤•à¥à¤°à¥€à¤¨ शेयर पà¥à¤°à¤•à¤¾à¤¶à¤¿à¤¤ करें विंडो bbb.toolbar.deskshare.toolTip.stop = अपनी सà¥à¤•à¥à¤°à¥€à¤¨ को साà¤à¤¾ करना बंद करो -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = आपका वेबकैम साà¤à¤¾ करें bbb.toolbar.video.toolTip.stop = आपका वेबकैम साà¤à¤¾ करना बंद करो +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = सूची में कसà¥à¤Ÿà¤® लेआउट जोड़ें -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = bbb.layout.broadcastButton.toolTip = सà¤à¥€ दरà¥à¤¶à¤•à¥‹à¤‚ के लिठवरà¥à¤¤à¤®à¤¾à¤¨ दिखावट लागू करें bbb.layout.combo.toolTip = अपना लेआउट बदलें bbb.layout.loadButton.toolTip = फ़ाइल से लेआउट को लोड करें @@ -459,23 +464,26 @@ bbb.layout.combo.custom = * कसà¥à¤Ÿà¤® लेआउट bbb.layout.combo.customName = कसà¥à¤Ÿà¤® लेआउट bbb.layout.combo.remote = रिमोट bbb.layout.window.name = दिखावट का नाम +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = लेआउट सफलतापूरà¥à¤µà¤• सहेजे गठथे +bbb.layout.save.ioerror = bbb.layout.load.complete = लेआउट सफलतापूरà¥à¤µà¤• लोड किठगठथे bbb.layout.load.failed = लेआउट लोड करने में असमरà¥à¤¥ -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = मूलà¤à¥‚त ढांचा bbb.layout.name.closedcaption = बंद शीरà¥à¤·à¤• bbb.layout.name.videochat = वीडियोचैट bbb.layout.name.webcamsfocus = वेबकैम बैठक bbb.layout.name.presentfocus = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ बैठक -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾à¤¨ सहायक bbb.layout.name.lecture = वà¥à¤¯à¤¾à¤–à¥à¤¯à¤¾à¤¨. -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = पेंसिल bbb.highlighter.toolbar.pencil.accessibilityName = सफेदबोरà¥à¤¡ करà¥à¤¸à¤° को पेंसिल पर सà¥à¤µà¤¿à¤š करें bbb.highlighter.toolbar.ellipse = गोला @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = रंग चà¥à¤¨à¥‹ bbb.highlighter.toolbar.color.accessibilityName = वà¥à¤¹à¤¾à¤‡à¤Ÿà¤¬à¥‹à¤°à¥à¤¡ चिहà¥à¤¨ रंग आकरà¥à¤·à¤¿à¤¤ bbb.highlighter.toolbar.thickness = मोटाई बदलें bbb.highlighter.toolbar.thickness.accessibilityName = वà¥à¤¹à¤¾à¤‡à¤Ÿà¤¬à¥‹à¤°à¥à¤¡ आकरà¥à¤·à¤¿à¤¤ मोटाई -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = लॉग आउट +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ठीक bbb.logout.appshutdown = सरà¥à¤µà¤° à¤à¤ª बंद कर दिया गया है bbb.logout.asyncerror = à¤à¤• à¤à¤¸à¤¿à¤‚नà¥à¤• तà¥à¤°à¥à¤Ÿà¤¿ हà¥à¤ˆ @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = सरà¥à¤µà¤° से कनेकà¥à¤¶à¤¨ स bbb.logout.rejected = सरà¥à¤µà¤° से कनेकà¥à¤¶à¤¨ असà¥à¤µà¥€à¤•à¤¾à¤° कर दिया गया है bbb.logout.invalidapp = लाल 5 à¤à¤ª मौजूद नहीं है bbb.logout.unknown = आपके गà¥à¤°à¤¾à¤¹à¤• ने सरà¥à¤µà¤° से कनेकà¥à¤¶à¤¨ खो दिया है -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = आपने समà¥à¤®à¥‡à¤²à¤¨ से लॉग आउट किया है bbb.logour.breakoutRoomClose = आपकी बà¥à¤°à¤¾à¤‰à¤œà¤¼à¤° विंडो बंद हो जाà¤à¤—ी -bbb.logout.ejectedFromMeeting = à¤à¤• मॉडरेटर ने आपको बैठक से निकाल दिया है +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = यदि यह लॉगआउट अपà¥à¤°à¤¤à¥à¤¯à¤¾à¤¶à¤¿à¤¤ था तो फिर से कनेकà¥à¤Ÿ करने के लिठनीचे दिठगठबटन पर कà¥à¤²à¤¿à¤• करें। bbb.logout.refresh.label = फिर से जà¥à¥œà¥‡à¤‚ -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = लॉगआउट की पà¥à¤·à¥à¤Ÿà¤¿ करें bbb.logout.confirm.message = कà¥à¤¯à¤¾ आप वाकई में लॉग आउट करना चाहते हैं? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = हाठbbb.logout.confirm.no = नहीं -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=पता लगाया कनेकà¥à¤Ÿà¤¿à¤µà¤¿à¤Ÿà¥€ समसà¥à¤¯à¤¾à¤à¤‚ bbb.connection.reconnecting=पà¥à¤¨: कनेकà¥à¤Ÿ bbb.connection.reestablished=कनेकà¥à¤¶à¤¨ पà¥à¤¨: सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ किया गया @@ -530,59 +539,60 @@ bbb.notes.title = टिपà¥à¤ªà¤£à¤¿à¤¯à¤¾à¤ bbb.notes.cmpColorPicker.toolTip = टेकà¥à¤¸à¥à¤Ÿ का रंग bbb.notes.saveBtn = सेव करे bbb.notes.saveBtn.toolTip = नोट सहेजें -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = डेसà¥à¤•à¤Ÿà¥‰à¤ª पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¤¿ आपके लिठठीक तरह से काम कर रहा है यह जांचने के लिठपॉप अप करने के लिठअनà¥à¤®à¤¤à¤¿ दें चà¥à¤¨à¥‡à¤‚ bbb.settings.deskshare.start = डेसà¥à¤•à¤Ÿà¥‰à¤ª शेयरिंग की जांच करें bbb.settings.voice.volume = माइकà¥à¤°à¥‹à¤«à¥‹à¤¨ गतिविधि -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = फà¥à¤²à¥ˆà¤¶ संसà¥à¤•à¤°à¤£ तà¥à¤°à¥à¤Ÿà¤¿ bbb.settings.flash.text = आपके पास फà¥à¤²à¥ˆà¤¶ {0} इंसà¥à¤Ÿà¥‰à¤² है, लेकिन BigBlueButton को ठीक से चलाने के लिठआपको कम से कम संसà¥à¤•à¤°à¤£ {1} की आवशà¥à¤¯à¤•à¤¤à¤¾ है नीचे दिया गया बटन नवीनतम à¤à¤¡à¥‹à¤¬ फ़à¥à¤²à¥ˆà¤¶ संसà¥à¤•à¤°à¤£ सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ करेगा। bbb.settings.flash.command = नवीनतम फà¥à¤²à¥ˆà¤¶ सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ करें bbb.settings.isight.label = ISight वेबकैम तà¥à¤°à¥à¤Ÿà¤¿ -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = फ़à¥à¤²à¥ˆà¤¶ 10.2 आरसी 2 सà¥à¤¥à¤¾à¤ªà¤¿à¤¤ करें bbb.settings.warning.label = चेतावनी bbb.settings.warning.close = इस चेतावनी को बंद करें bbb.settings.noissues = कोई बकाया मà¥à¤¦à¥à¤¦à¥‹à¤‚ का पता नहीं लगाया गया है। bbb.settings.instructions = फ़à¥à¤²à¥ˆà¤¶ पà¥à¤°à¥‰à¤®à¥à¤ªà¥à¤Ÿ सà¥à¤µà¥€à¤•à¤¾à¤° करें जो आपको वेबकैम अनà¥à¤®à¤¤à¤¿ के लिठकहता है यदि अपेकà¥à¤·à¤¿à¤¤ परिणाम से मेल खाता आउटपà¥à¤Ÿ मिलता है, तो आपके बà¥à¤°à¤¾à¤‰à¤œà¤¼à¤° को सही ढंग से सेट किया गया है अनà¥à¤¯ संà¤à¤¾à¤µà¤¿à¤¤ मà¥à¤¦à¥à¤¦à¥‹à¤‚ के नीचे हैं संà¤à¤µ समाधान खोजने के लिठउनà¥à¤¹à¥‡à¤‚ जांचें -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = bbb.bwmonitor.current = मौजूदा bbb.bwmonitor.available = मौजूद -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = तà¥à¤°à¤¿à¤à¥à¤œ ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = वà¥à¤¹à¤¾à¤‡à¤Ÿà¤¬à¥‹à¤°à¥à¤¡ करà¥à¤¸à¤° तà¥à¤°à¤¿à¤•à¥‹à¤£ पर सà¥à¤µà¤¿à¤š करें ltbcustom.bbb.highlighter.toolbar.line = रेखा @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = आपने नवीनतम bbb.accessibility.chat.chatBox.navigatedLatestRead = आपने पढ़ा है सबसे हाल के संदेश को नेविगेट किया है। bbb.accessibility.chat.chatwindow.input = चैट इनपà¥à¤Ÿ bbb.accessibility.chat.chatwindow.audibleChatNotification = शà¥à¤°à¤µà¥à¤¯ चैट अधिसूचना -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = चैट संदेशों के माधà¥à¤¯à¤® से नेविगेट करने के लिठकृपया तीर कà¥à¤‚जियों का उपयोग करें। bbb.accessibility.notes.notesview.input = नोटà¥à¤¸ इनपà¥à¤Ÿ @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = पृषà¥à¤ पर सà¥à¤²à¤¾ bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = चयनित वà¥à¤¯à¤•à¥à¤¤à¤¿ पà¥à¤°à¤¸à¥à¤¤à¥‹à¤¤à¤¾ को बनाà¤à¤‚ bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = बैठक से चà¥à¤¨à¥‡ हà¥à¤ वà¥à¤¯à¤•à¥à¤¤à¤¿ को हटा दें +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = चयनित वà¥à¤¯à¤•à¥à¤¤à¤¿ को मà¥à¤¯à¥‚ट या अनमà¥à¤¯à¥‚ट करें bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = पà¥à¤°à¤•à¤¾à¤¶à¤¿à¤¤ करें bbb.polling.closeButton.label = बंद करे bbb.polling.customPollOption.label = कसà¥à¤Ÿà¤® मतदान ... bbb.polling.pollModal.title = लाइव पोल परिणाम +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = मतदान विकलà¥à¤ª दरà¥à¤œ करें bbb.polling.respondersLabel.novotes = पà¥à¤°à¤¤à¤¿à¤•à¥à¤°à¤¿à¤¯à¤¾à¤“ं की पà¥à¤°à¤¤à¥€à¤•à¥à¤·à¤¾ कर रहा है bbb.polling.respondersLabel.text = {0} उपयोगकरà¥à¤¤à¤¾à¤“ं ने जवाब दिया @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = लॉक सेटिंग लागू कर bbb.lockSettings.cancel = रदà¥à¤¦ करना bbb.lockSettings.cancel.toolTip = बिना सहेजे इस विंडो को बंद करें +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = मॉडरेटर लॉकिंग bbb.lockSettings.privateChat = गोपनीय बातचीत bbb.lockSettings.publicChat = सारà¥à¤µà¤œà¤¨à¤¿à¤• चैट bbb.lockSettings.webcam = वेबकैम +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = माइकà¥à¤°à¥‹à¤«à¥‹à¤¨ bbb.lockSettings.layout = लेआउट (अà¤à¤¿à¤¨à¥à¤¯à¤¾à¤¸) bbb.lockSettings.title=लॉक वà¥à¤¯à¥‚अर @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=जà¥à¤¡à¤¼à¥‡à¤‚ लॉक करें bbb.users.breakout.breakoutRooms = बà¥à¤°à¥‡à¤•à¤†à¤‰à¤Ÿ रूम bbb.users.breakout.updateBreakoutRooms = बà¥à¤°à¥‡à¤•à¤†à¤‰à¤Ÿ रूम अपडेट करें +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = बà¥à¤°à¥‡à¤•à¤†à¤‰à¤Ÿ रूम के लिठसमय बचे bbb.users.breakout.calculatingRemainingTime = शेष समय की गणना ... bbb.users.breakout.closing = समापन +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = कमरे bbb.users.breakout.roomsCombo.accessibilityName = बनाने के लिठकमरों की संखà¥à¤¯à¤¾ bbb.users.breakout.room = रूम -bbb.users.breakout.randomAssign = बेतरतीब उपयोगकरà¥à¤¤à¤¾ असाइन करें bbb.users.breakout.timeLimit = समय सीमा bbb.users.breakout.durationStepper.accessibilityName = मिनटों में समय सीमा bbb.users.breakout.minutes = मिनट @@ -834,14 +848,14 @@ bbb.users.breakout.invite = आमंतà¥à¤°à¤¿à¤¤ करें bbb.users.breakout.close = बंद करे bbb.users.breakout.closeAllRooms = सà¤à¥€ बà¥à¤°à¥‡à¤•à¤†à¤‰à¤Ÿ कमरे बंद करें bbb.users.breakout.insufficientUsers = अपरà¥à¤¯à¤¾à¤ªà¥à¤¤ उपयोगकरà¥à¤¤à¤¾Â आपको à¤à¤• बà¥à¤°à¥‡à¤•à¤†à¤‰à¤Ÿ रूम में कम से कम à¤à¤• उपयोगकरà¥à¤¤à¤¾ रखना चाहिà¤à¥¤ -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = रूम bbb.users.roomsGrid.users = उपयोगकरà¥à¤¤à¤¾ bbb.users.roomsGrid.action = कारà¥à¤°à¤µà¤¾à¤ˆ @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = ऑडियो टà¥à¤°à¤¾à¤‚सफर कर bbb.users.roomsGrid.join = जà¥à¥œà¥‡à¤‚ bbb.users.roomsGrid.noUsers = कोई à¤à¥€ उपयोगकरà¥à¤¤à¤¾ इस कमरे में नहीं है -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=फारà¥à¤¸à¥€ -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=हीबà¥à¤°à¥‚ -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=सिनà¥à¤¹à¤² -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=सà¥à¤ªà¥ˆà¤¨à¤¿à¤¶ -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/hi_IN/bbbResources.properties b/bigbluebutton-client/locale/hi_IN/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/hi_IN/bbbResources.properties +++ b/bigbluebutton-client/locale/hi_IN/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/hr_HR/bbbResources.properties b/bigbluebutton-client/locale/hr_HR/bbbResources.properties index 01ff7388beec3bc58cdcd23ef6132f1f12839677..c78c6e98ee456e19191904b818081e0e311a980b 100644 --- a/bigbluebutton-client/locale/hr_HR/bbbResources.properties +++ b/bigbluebutton-client/locale/hr_HR/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Povezivanje se sa serverom -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Nažalost nije moguće uspostaviti vezu sa serverom. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Otvori log prozor. bbb.mainshell.meetingNotFound = Sastanak nije naÄ‘en bbb.mainshell.invalidAuthToken = Autentifikacijski token nije valjan bbb.mainshell.resetLayoutBtn.toolTip = Resetiraj izgled -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Moguće je da imate staru verziju prijevoda. bbb.oldlocalewindow.reminder2 = Molimo ispraznite keÅ¡ pretraživaÄa i pokuÅ¡ajte ponovo. bbb.oldlocalewindow.windowTitle = Upozorenje: Stara verzija prijevoda @@ -35,7 +35,7 @@ bbb.micSettings.microphone.header = Testiraj mikrofon bbb.micSettings.playSound = Testirajte zvuÄnike. bbb.micSettings.playSound.toolTip = Pustite muziku kako biste testirali vaÅ¡e zvuÄnike. bbb.micSettings.hearFromHeadset = Trebalo bi da Äujete zvuk u vaÅ¡im sluÅ¡alicama, a ne na zvuÄnicima vaÅ¡eg raÄunara. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. +bbb.micSettings.speakIntoMic = bbb.micSettings.echoTestMicPrompt = Ovo je privatni echo test. Reci nekoliko rijeÄi. Jesi li Äuo audio? bbb.micSettings.echoTestAudioYes = Da bbb.micSettings.echoTestAudioNo = Ne @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Otkaži bbb.micSettings.connectingtoecho = Povezivanje bbb.micSettings.connectingtoecho.error = Echo Test GreÅ¡ka: Molimo kontrolirajte administratora. bbb.micSettings.cancel.toolTip = IskljuÄite se iz audio konferencije. -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = PodeÅ¡avanja zvuka. Fokus će ostati na prozoru za podeÅ¡avanje zvuka, sve dok ga ne zatvorite. bbb.micSettings.webrtc.title = WebRTC podrÅ¡ka bbb.micSettings.webrtc.capableBrowser = VaÅ¡ browser podržava WebRTC. @@ -66,94 +66,95 @@ bbb.micSettings.webrtc.waitingforice = Povezivanje bbb.micSettings.webrtc.transferring = PrenoÅ¡enje bbb.micSettings.webrtc.endingecho = Pridružujem se audiu bbb.micSettings.webrtc.endedecho = Echo test je zavrÅ¡io. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox DopuÅ¡tenja Mikrofona -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome DopuÅ¡tenja Mikrofona -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Audio upozorenje bbb.micWarning.joinBtn.label = Svejedno se pridruži bbb.micWarning.testAgain.label = Testiraj ponovo bbb.micWarning.message = VaÅ¡ mikrofon nije aktivan, ostali vas vjerovatno neće moći Äuti tokom sesije. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = bbb.webrtcWarning.failedError.1001 = GreÅ¡ka 1001: WebSocket je odspojen -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = bbb.webrtcWarning.failedError.1005 = GreÅ¡ka 1005: Poziv je neoÄekivano zavrÅ¡io -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = bbb.webrtcWarning.failedError.1008 = GreÅ¡ka 1008: Prijenos nije uspio -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = GreÅ¡ka {0}: Nepoznat kod greÅ¡ke -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Pomoć bbb.mainToolbar.logoutBtn = Odjava bbb.mainToolbar.logoutBtn.toolTip = Odjavi se -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Odaberi jezik bbb.mainToolbar.settingsBtn = Postavke bbb.mainToolbar.settingsBtn.toolTip = Otvori postavke bbb.mainToolbar.shortcutBtn = Kratice Tipkovnice -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window +bbb.mainToolbar.shortcutBtn.toolTip = bbb.mainToolbar.recordBtn.toolTip.start = ZapoÄni snimanje bbb.mainToolbar.recordBtn.toolTip.stop = Zaustavi snimanje bbb.mainToolbar.recordBtn.toolTip.recording = Ova sesija se snima bbb.mainToolbar.recordBtn.toolTip.notRecording = Ova sesija se ne snima -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Potvrdi snimanje bbb.mainToolbar.recordBtn.confirm.message.start = Da li ste sigurni da želite zapoÄeti snimanje sesije? bbb.mainToolbar.recordBtn.confirm.message.stop = Da li ste sigurni da želite zaustaviti snimanje sesije? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = MožeÅ¡ snimati ovaj sastanak. -bbb.mainToolbar.recordBtn..notification.message2 = MoraÅ¡ kliknuti na PoÄni/Prestani Snimati gumb kako bi poÄeo/prestao snimati. +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = MožeÅ¡ snimati ovaj sastanak. +bbb.mainToolbar.recordBtn.notification.message2 = MoraÅ¡ kliknuti na PoÄni/Prestani Snimati gumb kako bi poÄeo/prestao snimati. bbb.mainToolbar.recordingLabel.recording = (Snimanje) bbb.mainToolbar.recordingLabel.notRecording = Ne snima se -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = bbb.clientstatus.notification = NeproÄitane notifikacije bbb.clientstatus.close = Zatvori bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection +bbb.clientstatus.tunneling.message = bbb.clientstatus.browser.title = Verzija Web Preglednika bbb.clientstatus.browser.message = Tvoj web preglednik ({0}) nije ažuriran. PreporuÄuje se koriÅ¡tenje najnovije verzije. bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Tvoj Flash Player plugin ({0}) nije ažuriran. PreporuÄuje se ažuriranje na najnoviju verziju. bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = PreporuÄuje se koriÅ¡tenje Firefoxa ili Chromea za bolji audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Smanji bbb.window.maximizeRestoreBtn.toolTip = Povećaj bbb.window.closeBtn.toolTip = Zatvori @@ -173,7 +174,7 @@ bbb.users.settings.muteAllExcept = UtiÅ¡aj sve korisnike izuzev prezentatora bbb.users.settings.unmuteAll = UkljuÄi sve korisnike bbb.users.settings.clearAllStatus = OÄisti sve status ikone bbb.users.emojiStatusBtn.toolTip = Ažuriraj moju status ikonu -bbb.users.roomMuted.text = Viewers Muted +bbb.users.roomMuted.text = bbb.users.roomLocked.text = Gledatelji ZakljuÄani bbb.users.pushToTalk.toolTip = PriÄaj bbb.users.pushToMute.toolTip = UtiÅ¡aj sebe @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Klikni da stvoriÅ¡ Prezentatora bbb.users.usersGrid.statusItemRenderer.presenter = Prezentator bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = OÄisti status bbb.users.usersGrid.statusItemRenderer.viewer = Preglednik bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Dijeljenje webkamere. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = UkljuÄi {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = IskljuÄi {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = ZakljuÄaj {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = OtkljuÄaj {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Trzni {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Dijeljenje web kamere bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon iskljuÄen bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon ukljuÄen bbb.users.usersGrid.mediaItemRenderer.noAudio = Nije u audio konferenciji -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = OÄisti -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentacija bbb.presentation.titleWithPres = Prezentacija bbb.presentation.quickLink.label = Prozor "Prezentacija" -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = bbb.presentation.uploadPresBtn.toolTip = UÄitaj Prezentaciju -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Prethodni slajd bbb.presentation.btnSlideNum.accessibilityName = Slajd {0} od {1} bbb.presentation.btnSlideNum.toolTip = Izaberi slajd @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Prebacivanje zavrÅ¡eno. Molimo priÄekajte dok bbb.presentation.uploaded = PrebaÄeno. bbb.presentation.document.supported = PrebaÄeni dokument je podržan. PoÄinje konvertiranje... bbb.presentation.document.converted = UspjeÅ¡no konvertiran office dokument. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO greÅ¡ka: Molimo kontaktirajte administratora. bbb.presentation.error.security = Sigurnosna greÅ¡ka: Molimo kontaktirajte administratora. bbb.presentation.error.convert.notsupported = GreÅ¡ka: PrebaÄeni dokument nije podržan. Molimo prebacite kompatibilnu datoteku. @@ -283,61 +285,62 @@ bbb.fileupload.uploadBtn = Prebaci bbb.fileupload.uploadBtn.toolTip = Prebaci oznaÄenu datoteku bbb.fileupload.deleteBtn.toolTip = IzbriÅ¡i prezentaciju bbb.fileupload.showBtn = Prikaži -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Prikaži prezentaciju -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Generisanje sliÄica.. bbb.fileupload.progBarLbl = Progres: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat bbb.chat.quickLink.label = Prozor "Chat" bbb.chat.cmpColorPicker.toolTip = Boja teksta bbb.chat.input.accessibilityName = Polje za ureÄ‘ivanje poruke bbb.chat.sendBtn.toolTip = PoÅ¡alji poruku bbb.chat.sendBtn.accessibilityName = PoÅ¡alji poruku -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopiraj sav tekst bbb.chat.publicChatUsername = Javno bbb.chat.optionsTabName = Opcije bbb.chat.privateChatSelect = Izaberite osobu sa kojom želite privatno ćaskati bbb.chat.private.userLeft = Korisnik je otiÅ¡ao. bbb.chat.private.userJoined = Korisnik se pridružio. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Odaberi korisnika kako bi otvorio privatni chat bbb.chat.usersList.accessibilityName = Odaberi korisnika kako bi otvorio privatni chat. Koristi strelice na tipkovnici za navigaciju. bbb.chat.chatOptions = PodeÅ¡avanja Chat-a bbb.chat.fontSize = VeliÄina fonta "Chat" poruke bbb.chat.cmbFontSize.toolTip = Odaberi veliÄinu fonta za chat poruke -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Smanji prozor za chat bbb.chat.maximizeRestoreBtn.accessibilityName = Povećaj prozor za chat bbb.chat.closeBtn.accessibilityName = Zatvori prozor za chat bbb.chat.chatTabs.accessibleNotice = Nove poruke u ovom tabu. bbb.chat.chatMessage.systemMessage = Sustav -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Poruka je {0} znakova preduga bbb.publishVideo.changeCameraBtn.labelText = Promijeni web kameru bbb.publishVideo.changeCameraBtn.toolTip = Otvori dijaloÅ¡ki okvir za promjenu web kamere @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = PoÄni dijeliti bbb.publishVideo.startPublishBtn.toolTip = PoÄni dijeliti web kameru bbb.publishVideo.startPublishBtn.errorName = Ne mogu podijeliti web kameru. Razog: {0} bbb.webcamPermissions.chrome.title = Chrome DopuÅ¡tenja Webkamere -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Web kamere bbb.videodock.quickLink.label = Prozor "Web kamere" bbb.video.minimizeBtn.accessibilityName = Smanji prozor web kamere @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = Objavljivanje... bbb.video.publish.closeBtn.accessName = Zatvorite dijaloÅ¡ki okvir za podeÅ¡avanje web kamere bbb.video.publish.closeBtn.label = Otkaži bbb.video.publish.titleBar = Objavi prozor web kamere -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Prestani sluÅ¡ati konferenciju bbb.toolbar.phone.toolTip.unmute = PoÄni sluÅ¡ati konferenciju bbb.toolbar.phone.toolTip.nomic = Mikrofon nije detektiran -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Podijeli svoju video kameru bbb.toolbar.video.toolTip.stop = Prestani dijeliti svoju video kameru +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Dodajte prilagoÄ‘eni raspored elemenata na listu -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Promijeni svoj layout bbb.layout.loadButton.toolTip = UÄitaj rasporede iz datoteke bbb.layout.saveButton.toolTip = SaÄuvaj rasporede kao datoteku @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Primijeni raspored bbb.layout.combo.custom = * PrilagoÄ‘eni raspored bbb.layout.combo.customName = PrilagoÄ‘eni raspored bbb.layout.combo.remote = Udaljen -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Rasporedi su uspjeÅ¡no saÄuvani +bbb.layout.save.ioerror = bbb.layout.load.complete = Rasporedi su uspjeÅ¡no uÄitani bbb.layout.load.failed = Nemoguće je uÄitati layoute -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Video Chat bbb.layout.name.webcamsfocus = Webcam Sastanak bbb.layout.name.presentfocus = Prezentacijski Sastanak -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = bbb.layout.name.lecture = Predavanje -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Olovka bbb.highlighter.toolbar.pencil.accessibilityName = Promijenite kursor u olovku bbb.highlighter.toolbar.ellipse = Krug @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Izaberi boju bbb.highlighter.toolbar.color.accessibilityName = Boja olovke za crtanje bbb.highlighter.toolbar.thickness = Promijeni debljinu bbb.highlighter.toolbar.thickness.accessibilityName = Debljina olovke za crtanje -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Odjavljen/a +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serverska aplikacija je iskljuÄena bbb.logout.asyncerror = DoÅ¡lo je do greÅ¡ke u sinkronizaciji @@ -502,87 +509,90 @@ bbb.logout.connectionfailed = Veza sa serverom je zavrÅ¡ena bbb.logout.rejected = Veza sa serverom odbaÄena bbb.logout.invalidapp = red5 aplikacija ne postoji bbb.logout.unknown = Izgubljena veza sa serverom -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = UspjeÅ¡no ste izaÅ¡li iz konferencije -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Moderator te je izbacio sa sastanka. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ako je ova odjava bila neoÄekivana klikni gumb ispod kako bi se ponovo povezao. bbb.logout.refresh.label = Ponovo se poveži -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Potvrdi odjavu bbb.logout.confirm.message = Da li ste sigurni da se želite odjaviti? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Da bbb.logout.confirm.no = Ne -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Detektirani Problemi sa Spojivošću bbb.connection.reconnecting=Ponovo povezivanje bbb.connection.reestablished=Veza je opet uspostavljena bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP +bbb.connection.sip= bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.connection.deskshare= bbb.notes.title = BiljeÅ¡ke bbb.notes.cmpColorPicker.toolTip = Boja teksta bbb.notes.saveBtn = SaÄuvaj bbb.notes.saveBtn.toolTip = SaÄuvaj biljeÅ¡ke -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Odaberite opciju "Dopusti" kako biste provjerili da li dijeljenje radne ploÄe funkcioniÅ¡e kako treba bbb.settings.deskshare.start = Provjerite dijeljenje radne ploÄe bbb.settings.voice.volume = Status mikrofona -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = GreÅ¡ka u verziji Flash-a bbb.settings.flash.text = Imate instaliranu Flash verziju {0}. Da biste mogli koristiti BigBlueButton morate instalirati najmanje verziju {1}. Klikom na dugme ispod možete instalirati noviju verziju Adobe Flash-a. bbb.settings.flash.command = Instaliraj noviju verziju Flash-a bbb.settings.isight.label = GreÅ¡ka iSight web kamere -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instaliraj Flash 10.2 RC2 bbb.settings.warning.label = Upozorenje bbb.settings.warning.close = Zatvori ovo upozorenje bbb.settings.noissues = Nisu uoÄeni neuobiÄajeni problemi. bbb.settings.instructions = Potvrdite Flash naredbu koja traži dozvolu za pristup web kameri. Ukoliko izlaz odgovara onome Å¡to se oÄekuje, vaÅ¡ browser je ispravno podeÅ¡en. Ostali potencijalni problemi su prikazani ispod. Ispitajte ih kako biste pronaÅ¡li moguće rjeÅ¡enje. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Trokut ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Promijenite kursor u trokut ltbcustom.bbb.highlighter.toolbar.line = Linija @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Promijenite kursor u tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Boja teksta ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = VeliÄina fonta -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Spreman @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = DoÅ¡li ste do prve poruke. bbb.accessibility.chat.chatBox.navigatedLatest = DoÅ¡li ste do posljednje poruke. bbb.accessibility.chat.chatBox.navigatedLatestRead = DoÅ¡li ste do posljednje poruke koju ste proÄitali. bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Molimo koristite tipke sa strelicama kako biste navigirali kroz chat poruke. bbb.accessibility.notes.notesview.input = Unos biljeÅ¡ki bbb.shortcuthelp.title = Kratice Tipkovnice -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Smanjite prozor preÄice "Pomoć" bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Povećajte prozor preÄice "Pomoć" bbb.shortcuthelp.closeBtn.accessibilityName = Zatvorite prozor preÄice "Pomoć" -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = PreÄice bbb.shortcuthelp.dropdown.presentation = PreÄice prezentacije bbb.shortcuthelp.dropdown.chat = Chat preÄice bbb.shortcuthelp.dropdown.users = PreÄice korisnika -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = PreÄica bbb.shortcuthelp.headers.function = Funkcija @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Smanji trenutni prozor bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Povećaj trenutni prozor -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = IzaÄ‘ite iz Flash prozora bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = IskljuÄivanje i ukljuÄivanje mikrofona @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = PrijeÄ‘i na prozor "Prezentacija" bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = PrijeÄ‘i na prozor "Ćaskanje" -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Otvori prozor za dijeljenje radne ploÄe @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Odjavite se sa ovog sastanka bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Podigni ruku -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Prenesi prezentaciju bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Idi na prethodni slajd @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Idi na naredni slajd bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Podesi slajdove po Å¡irini -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Podesi slajdove prema stranici -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Dodaj ulogu prezentatora za oznaÄenu osobu -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Izbaci odabranu osobu sa sastanka +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = UtiÅ¡aj ili ukljuÄi odabranu sobu bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = UtiÅ¡aj ili ukljuÄi sve korisnike bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = UtiÅ¡aj sve sudionike osim prezentatora -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Fokus na chat tabove -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Fokus na odabir boje fonta. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,16 +756,17 @@ bbb.shortcutkey.chat.chatbox.goread.function = Idite na posljednju poruku koju s bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Privremeno uklonite hotkey -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = ZapoÄni anketu -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.label = bbb.polling.publishButton.label = Objavi bbb.polling.closeButton.label = Zatvori -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Rezultati Ankete Uživo -bbb.polling.customChoices.title = Enter Polling Choices +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = bbb.polling.respondersLabel.novotes = ÄŒekam odgovore bbb.polling.respondersLabel.text = {0} Korisnika je odgovorilo bbb.polling.respondersLabel.finished = Gotovo @@ -791,21 +802,23 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Zatvori sve video klipove bbb.users.settings.lockAll = ZakljuÄaj sve korisnike bbb.users.settings.lockAllExcept = ZakljuÄaj sve korisnike osim prezentatora bbb.users.settings.lockSettings = ZakljuÄaj gledatelje... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = OdkljuÄaj sve gledatelje bbb.users.settings.roomIsLocked = ZakljuÄano po zadanim postavkama bbb.users.settings.roomIsMuted = UtiÅ¡ano po zadanim postavkama bbb.lockSettings.save = Primijeni -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = Otkaži bbb.lockSettings.cancel.toolTip = Zatvori prozor bez spaÅ¡avanja +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = ZakljuÄavanje moderatora bbb.lockSettings.privateChat = Privatno ćaskanje bbb.lockSettings.publicChat = Javno ćaskanje bbb.lockSettings.webcam = Web kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Layout bbb.lockSettings.title=ZakljuÄaj Gledatelje @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Mogućnost bbb.lockSettings.locked=ZakljuÄano bbb.lockSettings.lockOnJoin=ZakljuÄaj pri pridruživanju -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/hu_HU/bbbResources.properties b/bigbluebutton-client/locale/hu_HU/bbbResources.properties index ec2872e29decfdd944a6984a501b631d49a4d083..76252cf73498824b79f22999d6f6aed04408f739 100644 --- a/bigbluebutton-client/locale/hu_HU/bbbResources.properties +++ b/bigbluebutton-client/locale/hu_HU/bbbResources.properties @@ -21,7 +21,7 @@ bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo bbb.mainshell.quote.sentence.5 = A kutatás új tudást hoz létre. bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = ValószÃnű régi BigBlueButton fordÃtása van. -bbb.oldlocalewindow.reminder2 = Kérem ürÃtse böngészÅ‘je gyorsÃtótárát és próbálja újra. +bbb.oldlocalewindow.reminder2 = Kérem, ürÃtse böngészÅ‘je gyorsÃtótárát és próbálja újra. bbb.oldlocalewindow.windowTitle = Figyelmeztetés: Régiek a fordÃtások bbb.audioSelection.title = Hogyan csatlakozik a beszélgetéshez? bbb.audioSelection.btnMicrophone.label = Mikrofont is használok @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Csatlakozás bbb.micSettings.webrtc.transferring = Ãtvitel folyamatban bbb.micSettings.webrtc.endingecho = Csatlakozás bbb.micSettings.webrtc.endedecho = Hangteszt véget ért. +bbb.micPermissions.message.browserhttp = Ez a szerver nem használ SSL-t, ezért {0} letiltja az Ön mikrofonjának megosztását. bbb.micPermissions.firefox.title = Firefox mikrofon jogosultságok bbb.micPermissions.firefox.message = Kattintson az Engedélyezésre, hogy a Firefox hozzáférhessen a mikrofonjához. bbb.micPermissions.chrome.title = Chrome mikrofon jogosultságok @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Ez a munkamenet nem rögzÃthetÅ‘ bbb.mainToolbar.recordBtn.confirm.title = Felvétel jóváhagyása bbb.mainToolbar.recordBtn.confirm.message.start = Biztos indÃtja a találkozó felvételét? bbb.mainToolbar.recordBtn.confirm.message.stop = Biztos leállÃtja a találkozó felvételét? -bbb.mainToolbar.recordBtn..notification.title = Megjegyzés a felvételhez -bbb.mainToolbar.recordBtn..notification.message1 = Ezt az elÅ‘adást rögzÃtheti. -bbb.mainToolbar.recordBtn..notification.message2 = A cÃmsorban lévÅ‘ Felvétel indÃtása/leállÃtása gombra kell kattintani a felvétel elkezdéséhez és befejezéséhez. +bbb.mainToolbar.recordBtn.notification.title = Megjegyzés a felvételhez +bbb.mainToolbar.recordBtn.notification.message1 = Ezt az elÅ‘adást rögzÃtheti. +bbb.mainToolbar.recordBtn.notification.message2 = A cÃmsorban lévÅ‘ Felvétel indÃtása/leállÃtása gombra kell kattintani a felvétel elkezdéséhez és befejezéséhez. bbb.mainToolbar.recordingLabel.recording = (Felvétel) bbb.mainToolbar.recordingLabel.notRecording = Nem készül felvétel bbb.waitWindow.waitMessage.message = Ön egy vendég, kérem, várjon türelemmel egy moderátor jóváhagyására. @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = {0} hangosÃtása bbb.users.usersGrid.mediaItemRenderer.pushToMute = {0} némÃtása bbb.users.usersGrid.mediaItemRenderer.pushToLock = {0} zárolása bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = {0} zárolásának feloldása -bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} kiléptetése +bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} eltávolÃtása bbb.users.usersGrid.mediaItemRenderer.webcam = Webkamera megosztása bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon kikapcsolva bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon bekapcsolva @@ -246,6 +247,7 @@ bbb.presentation.fitToWidth.toolTip = Prezentáció ablak szélességhez igazÃt bbb.presentation.fitToPage.toolTip = Prezentáció ablak oldalhoz igazÃtása bbb.presentation.uploadPresBtn.toolTip = Prezentációs fájl feltöltése bbb.presentation.downloadPresBtn.toolTip = Prezentációk letöltése +bbb.presentation.poll.response = Válasz a szavazásra bbb.presentation.backBtn.toolTip = ElÅ‘zÅ‘ dia bbb.presentation.btnSlideNum.accessibilityName = {0} / {1} dia bbb.presentation.btnSlideNum.toolTip = Kattintson a dia kiválasztásához @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = Beszélgetés mentése bbb.chat.saveBtn.accessibilityName = Beszélgetés mentése fájlba bbb.chat.saveBtn.label = Mentés bbb.chat.save.complete = A beszélgetést sikeresen mentette +bbb.chat.save.ioerror = A beszélgetést nem sikerült menteni. Próbálja újra. bbb.chat.save.filename = nyilvános beszélgetés bbb.chat.copyBtn.toolTip = Beszélgetés másolása bbb.chat.copyBtn.accessibilityName = Beszélgetés másolása a vágólapra @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Webkamera beállÃtások bezárása bbb.video.publish.closeBtn.label = Mégsem bbb.video.publish.titleBar = Webkamera ablak közzététele bbb.video.streamClose.toolTip = Folyam lezárása: {0} +bbb.video.message.browserhttp = Ez a szerver nem használ SSL-t, ezért {0} letiltja az Ön webkamerájának megosztását. bbb.screensharePublish.title = KépernyÅ‘megosztás: ElÅ‘adó nézete bbb.screensharePublish.pause.tooltip = KépernyÅ‘megosztás szüneteltetése bbb.screensharePublish.pause.label = Szüneteltetés @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = KépernyÅ‘megosztás befejezése bbb.toolbar.sharednotes.toolTip = Megosztott jegyzetek megnyitása bbb.toolbar.video.toolTip.start = Webkamerám megosztása bbb.toolbar.video.toolTip.stop = Webkamerám megosztásának befejezése +bbb.layout.addButton.label = Hozzáadás bbb.layout.addButton.toolTip = Egyéni elrendezés hozzáadása a listához bbb.layout.overwriteLayoutName.title = Elrendezés felülÃrása bbb.layout.overwriteLayoutName.text = Ez a név már létezik. Biztos, hogy felülÃrja? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * Egyéni elrendezés bbb.layout.combo.customName = Egyéni elrendezés bbb.layout.combo.remote = Táv bbb.layout.window.name = Elrendezés neve +bbb.layout.window.close.tooltip = Bezárás +bbb.layout.window.close.accessibilityName = Új elrendezés hozzáadása ablak bezárása bbb.layout.save.complete = Elrendezés sikeresen mentve +bbb.layout.save.ioerror = Kinézetet nem sikerült menteni. Próbálja újra. bbb.layout.load.complete = Elrendezés sikeres betöltve bbb.layout.load.failed = Nem sikerült az elrendezést betölteni bbb.layout.sync = Elrendezését elküldtük az összes felhasználónak @@ -493,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Rajztáblához kijelölÅ‘szÃn bbb.highlighter.toolbar.thickness = Vastagság változtatása bbb.highlighter.toolbar.thickness.accessibilityName = Rajztáblához kurzorvastagság bbb.highlighter.toolbar.multiuser = Többfelhasználós rajzolás -bbb.logout.title = Kijelentkeztél bbb.logout.button.label = OK bbb.logout.appshutdown = A szerveralkalmazást leállÃtották bbb.logout.asyncerror = Async hiba @@ -505,9 +512,11 @@ bbb.logout.unknown = Kapcsolat a szerverrel megszakadt bbb.logout.guestkickedout = A moderátor nem engedélyezte Önnek a csatlakozást ehhez elÅ‘adáshoz bbb.logout.usercommand = Kijelentkezett a beszélgetésbÅ‘l bbb.logour.breakoutRoomClose = BöngészÅ‘je ablakát bezárjuk -bbb.logout.ejectedFromMeeting = Egy moderátor kitett az elÅ‘adásról. +bbb.logout.ejectedFromMeeting = Ön kijelentkeztették az elÅ‘adásról. bbb.logout.refresh.message = Amennyiben kilépése nem szándékos volt, kattintson az újracsatlakozás gombra. bbb.logout.refresh.label = Újracsatlakozás +bbb.logout.feedback.hint = Hogyan tehetnénk a BigBlueButton-t még jobbá? +bbb.logout.feedback.label = Örömmel vesszük, ha Ãr néhány szót a BigBlueButton használatának tapasztalatairól (nem kötelezÅ‘) bbb.settings.title = BeállÃtások bbb.settings.ok = OK bbb.settings.cancel = Mégsem @@ -540,6 +549,7 @@ bbb.sharedNotes.typing.double = {0} és {1} éppen Ãr... bbb.sharedNotes.typing.multiple = Sok ember Ãr éppen... bbb.sharedNotes.save.toolTip = Jegyzetek mentése fájlba bbb.sharedNotes.save.complete = Jegyzetek sikeresen mentette +bbb.sharedNotes.save.ioerror = Jegyzetet nem sikerült menteni. Próbálja újra. bbb.sharedNotes.save.htmlLabel = Formázott szöveg (.html) bbb.sharedNotes.save.txtLabel = Egyszerű szöveg (.txt) bbb.sharedNotes.new.label = Létrehozás @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Közzététel bbb.polling.closeButton.label = Bezárás bbb.polling.customPollOption.label = Egyéni szavazás... bbb.polling.pollModal.title = Szavazás jelenlegi állása +bbb.polling.pollModal.hint = Hagyja nyitva ezt az ablakot, hogy a résztvevÅ‘k leadhassák szavazatukat. A szavazás befejezéséhez válassza a Közzététel vagy a Bezárás gombot. bbb.polling.customChoices.title = Adja meg a szavazási lehetÅ‘ségeket bbb.polling.respondersLabel.novotes = Válaszokra várakozás bbb.polling.respondersLabel.text = {0} felhasználó válaszolt @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Zárolási beállÃtások jóváhagyása bbb.lockSettings.cancel = Mégsem bbb.lockSettings.cancel.toolTip = Az ablak bezárása mentés nélkül +bbb.lockSettings.hint = Ezek az opciókkal letilthatod a résztvevÅ‘k néhány lehetÅ‘ségét, mint például a privát csevegés használata. (Ezek a tiltások nem érintik a moderátorokat) bbb.lockSettings.moderatorLocking = Moderátor zárolása bbb.lockSettings.privateChat = Privát üzenetek bbb.lockSettings.publicChat = Nyilvános üzenetek bbb.lockSettings.webcam = Webkamera +bbb.lockSettings.webcamsOnlyForModerator = Többiek webkamerájának elrejtése bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Elrendezés bbb.lockSettings.title=RésztvevÅ‘k zárolása @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Csatlakozáskor zárolás bbb.users.breakout.breakoutRooms = Csapatszobák bbb.users.breakout.updateBreakoutRooms = Csapatszobák frissÃtése +bbb.users.breakout.timerForRoom.toolTip = Csapatszoba hátralévÅ‘ ideje bbb.users.breakout.timer.toolTip = Csapatszobák hátralévÅ‘ ideje bbb.users.breakout.calculatingRemainingTime = HátralévÅ‘ idÅ‘ számÃtása... bbb.users.breakout.closing = Bezárás +bbb.users.breakout.closewarning.text = A csapatszobák egy percen belül bezárnak. bbb.users.breakout.rooms = Szobák bbb.users.breakout.roomsCombo.accessibilityName = Létrehozandó szobák száma bbb.users.breakout.room = Szoba -bbb.users.breakout.randomAssign = Véletlenszerűen rendeljen hozzá felhasználókat bbb.users.breakout.timeLimit = IdÅ‘korlát bbb.users.breakout.durationStepper.accessibilityName = IdÅ‘korlát percben bbb.users.breakout.minutes = perc @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Csatlakozás bbb.users.roomsGrid.noUsers = Egy felhasználó sincs ebben a szobában bbb.langSelector.default=Alapértelmezett nyelv -bbb.langSelector.ar=Arab -bbb.langSelector.az_AZ=Azerbajdzsáni -bbb.langSelector.eu_EU=Baszk -bbb.langSelector.bn_BN=Bengáli -bbb.langSelector.bg_BG=Bulgár -bbb.langSelector.ca_ES=Katalán -bbb.langSelector.zh_CN=KÃna (egyszerűsÃtett) -bbb.langSelector.zh_TW=KÃnai (tradicionális) -bbb.langSelector.hr_HR=Horvát -bbb.langSelector.cs_CZ=Cseh -bbb.langSelector.da_DK=Dán -bbb.langSelector.nl_NL=Holland -bbb.langSelector.en_US=Angol -bbb.langSelector.et_EE=Észtország -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finn -bbb.langSelector.fr_FR=Francia -bbb.langSelector.fr_CA=Francia (kanadai) -bbb.langSelector.ff_SN=Fulbe -bbb.langSelector.de_DE=Német -bbb.langSelector.el_GR=Görög -bbb.langSelector.he_IL=Héber -bbb.langSelector.hu_HU=Magyar -bbb.langSelector.id_ID=Indonéz -bbb.langSelector.it_IT=Olasz -bbb.langSelector.ja_JP=Japán -bbb.langSelector.ko_KR=Koreai -bbb.langSelector.lv_LV=Litván -bbb.langSelector.lt_LT=Litvánia -bbb.langSelector.mn_MN=Mongol -bbb.langSelector.ne_NE=Nepáli -bbb.langSelector.no_NO=Norvég -bbb.langSelector.pl_PL=Lengyel -bbb.langSelector.pt_BR=Portugál (brazil) -bbb.langSelector.pt_PT=Portugál -bbb.langSelector.ro_RO=Román -bbb.langSelector.ru_RU=Orosz -bbb.langSelector.sr_SR=Szerb (cirill) -bbb.langSelector.sr_RS=Szerb (latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Szlovákia -bbb.langSelector.sl_SL=Szlovén -bbb.langSelector.es_ES=Spanyol -bbb.langSelector.es_LA=Spanyol (latin-amerikai) -bbb.langSelector.sv_SE=Svéd -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Török -bbb.langSelector.uk_UA=Ukrán -bbb.langSelector.vi_VN=Vietnámi -bbb.langSelector.cy_GB=Welszi -bbb.langSelector.oc=Okszitán + +bbb.alert.cancel = Mégsem +bbb.alert.ok = OK +bbb.alert.no = Nem +bbb.alert.yes = Igen diff --git a/bigbluebutton-client/locale/hy/bbbResources.properties b/bigbluebutton-client/locale/hy/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/hy/bbbResources.properties +++ b/bigbluebutton-client/locale/hy/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/hy_AM/bbbResources.properties b/bigbluebutton-client/locale/hy_AM/bbbResources.properties index 0941cafa9e1e3e2216a058e709f4fcd7eb369f29..ec86d8d74a6f12ddadcd35d6ea586a8b22e511af 100644 --- a/bigbluebutton-client/locale/hy_AM/bbbResources.properties +++ b/bigbluebutton-client/locale/hy_AM/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Õ„Õ«Õ¡ÖÕ¸Ö‚Õ´ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Õ¶ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Ô¿Õ¶Õ¥Ö€Õ¥Ö„, Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ¹Õ§ Õ´Õ«Õ¡Õ¶Õ¡Õ¬ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Õ¶ -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Ô²Õ¡ÖÕ¥Õ¬ Õ¿Õ¥Õ²Õ¥Õ¯Õ¡Õ´Õ¡Õ¿ÕµÕ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.mainshell.meetingNotFound = Õ‰Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥Ö Õ£Õ¿Õ¶Õ¥Õ¬ Õ¾Õ¥Õ¢Õ«Õ¶Õ¡Ö€Õ¨ bbb.mainshell.invalidAuthToken = Õ„Õ¸Ö‚Õ¿Ö„Õ« Õ½ÕÕ¡Õ¬ Õ¿Õ¾ÕµÕ¡Õ¬Õ¶Õ¥Ö€ bbb.mainshell.resetLayoutBtn.toolTip = ÕŽÕ¥Ö€Õ¡Õ¤Õ¡Õ¼Õ¶Õ¡Õ¬ Õ½Õ¯Õ¦Õ¢Õ¶Õ¡Õ¯Õ¡Õ¶ Õ·Õ¡Ö€Õ¡Õ¯Õ¡Ö€Õ£Õ«Õ¶ bbb.mainshell.notification.tunnelling = Ô¿Õ¡Õ¶Õ¡Õ¬Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´ bbb.mainshell.notification.webrtc = ÕÕ¡ÕµÕ¶Õ« Õ°Õ¥Õ¼Õ¡Ö€ÖÕ¡Õ¯Õ¸Ö‚Õ´ WebRTC Õ´Õ«Õ»Õ¸ÖÕ¸Õ¾ -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Õ€Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ§ ÕÕ¥Ö€ BigBlueButton-Õ« Õ¬Õ¥Õ¦Õ¾Õ« Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ°Õ¶Õ¡ÖÕ¡Õ® Õ§Ö‰ bbb.oldlocalewindow.reminder2 = Õ„Õ¡Ö„Ö€Õ¥Ö„ ÕÕ¥Ö€ Õ¦Õ¶Õ¶Õ«Õ¹Õ« Õ°Õ«Õ·Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Ö‡ Õ¯Ö€Õ¯Õ«Õ¶ ÖƒÕ¸Ö€Õ±Õ¥Ö„ bbb.oldlocalewindow.windowTitle = Ô¶Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´Ö‰ Ô¼Õ¥Õ¦Õ¾Õ« Õ°Õ«Õ¶ Õ©Õ¡Ö€Õ£Õ´Õ¡Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Õ‰Õ¥Õ²Õ¡Ö€Õ¯Õ¥Õ¬ bbb.micSettings.connectingtoecho = Ô¿Õ¡Õ¿Õ¡Ö€Õ¾Õ¸Ö‚Õ´ Õ§ Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´ bbb.micSettings.connectingtoecho.error = Ô±Ö€Õ±Õ¡Õ£Õ¡Õ¶Ö„Õ« Õ©Õ¥Õ½Õ©Õ« Õ½ÕÕ¡Õ¬Ö‰ Ô½Õ¶Õ¤Ö€Õ¸Ö‚Õ´ Õ¥Õ¶Ö„ Õ¯Õ¡ÕºÕ¶Õ¾Õ¥Õ¬ Õ¡Õ¤Õ´Õ«Õ¶Õ«Õ½Õ¿Ö€Õ¡Õ¿Õ¸Ö€Õ« Õ°Õ¥Õ¿Ö‰ bbb.micSettings.cancel.toolTip = Õ‰Õ¥Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ±Õ¡ÕµÕ¶Õ¡ÕµÕ«Õ¶ Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ«Õ¶ -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = ÕÕ¡ÕµÕ¶Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Ö‰ ÕŠÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ Õ¡Õ¯Õ¿Õ«Õ¾ Õ¯Õ´Õ¶Õ¡, Õ´Õ«Õ¶Õ¹Ö‡ Õ¤Õ¸Ö‚Ö„ Õ¡ÕµÕ¶ Õ¹ÖƒÕ¡Õ£Õ¥Ö„Ö‰ bbb.micSettings.webrtc.title = WebRTC Õ¡Õ»Õ¡Õ¯ÖÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ bbb.micSettings.webrtc.capableBrowser = ÕÕ¥Ö€ Õ¦Õ¶Õ¶Õ«Õ¹Õ¨ Õ¡Õ»Õ¡Õ¯ÖÕ¸Ö‚Õ´ Õ§ WebRTC @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Õ„Õ«Õ¡Õ¶Õ¸Ö‚Õ´ Õ§ bbb.micSettings.webrtc.transferring = Õ“Õ¸ÕÕ¡Õ¶ÖÕ¸Ö‚Õ´ bbb.micSettings.webrtc.endingecho = Ô¿Õ¡Õ¿Õ¡Ö€Õ¾Õ¸Ö‚Õ´ Õ§ Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´ Õ±Õ¡ÕµÕ¶Õ¡Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ«Õ¶ bbb.micSettings.webrtc.endedecho = Ô±Ö€Õ±Õ¡Õ£Õ¡Õ¶Ö„Õ« Õ©Õ¥Õ½Õ©Õ¨ Õ¡Õ¾Õ¡Ö€Õ¿Õ¾Õ¡Õ® Õ§ +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ Firefox Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ¸Ö‚Õ´ -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ Chrome Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ¸Ö‚Õ´ -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = ÕÕ¡ÕµÕ¶Õ¡ÕµÕ«Õ¶ Õ¦Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´ bbb.micWarning.joinBtn.label = Õ„Õ¸Ö‚Õ¿Ö„ Õ£Õ¸Ö€Õ®Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ Õ¤Õ¥ÕºÖ„Õ¸Ö‚Õ´ bbb.micWarning.testAgain.label = ÕÕ¿Õ¸Ö‚Õ£Õ¥Õ¬ Õ¯Ö€Õ¯Õ«Õ¶ @@ -84,23 +85,23 @@ bbb.webrtcWarning.failedError.1005 = ÕÕÕ¡Õ¬ 1005․ Ô¶Õ¡Õ¶Õ£Õ¨ Õ¡Õ¶Õ½ÕºÕ¡Õ½Õ¥ bbb.webrtcWarning.failedError.1006 = ÕÕÕ¡Õ¬ 1006․ Ô¶Õ¡Õ¶Õ£Õ« ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ¨ Õ¡Õ¾Õ¡Ö€Õ¿Õ¾Õ¡Õ® Õ§ bbb.webrtcWarning.failedError.1007 = ÕÕÕ¡Õ¬ 1007․ ICE-Õ« Õ°Õ¥Õ¿ Õ¯Õ¡ÕºÕ¨ ÕÕ¡ÖƒÕ¡Õ¶Õ¾Õ¥Õ¬ Õ§ bbb.webrtcWarning.failedError.1008 = Error 1008. Õ“Õ¸ÕÕ¡Õ¶ÖÕ¸Ö‚Õ´ Õ±Õ¡ÕÕ¸Õ²Õ¾Õ¥Ö -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information +bbb.webrtcWarning.failedError.1009 = bbb.webrtcWarning.failedError.1010 = ÕÕÕ¡Õ¬ 1010: ICE Õ¢Õ¡Õ¶Õ¡Õ¯ÖÕ¡ÕµÕ«Õ¶ ÕªÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ« Õ½ÕºÕ¡Õ¼Õ¸Ö‚Õ´ -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = ÕÕÕ¡Õ¬ {0}․ Ô±Õ¶Õ®Õ¡Õ¶Õ¸Õ© Õ½ÕÕ¡Õ¬ Õ¯Õ¸Õ¤ bbb.webrtcWarning.failedError.mediamissing = Õ‰Õ°Õ¡Õ»Õ¸Õ²Õ¾Õ¥Ö Õ£Õ¿Õ¶Õ¥Õ¬ Õ±Õ¥Ö€ Õ´Õ«Õ¯Ö€Õ¸Ö†Õ¸Õ¶Õ¨ WebRTC Õ¦Õ¡Õ¶Õ£Õ« Õ°Õ¡Õ´Õ¡Ö€ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC Õ¡Ö€Õ±Õ¡Õ£Õ¡Õ¶Ö„Õ« ÖƒÕ¸Ö€Õ±Õ¡Ö€Õ¯Õ¸Ö‚Õ´Õ¨ Õ¡Õ¶Õ½ÕºÕ¡Õ½Õ¥Õ¬Õ« Õ¡Õ¾Õ¡Ö€Õ¿Õ¾Õ¥Õ¬ Õ§ -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped +bbb.webrtcWarning.connection.dropped = bbb.webrtcWarning.connection.reconnecting = ÕŽÕ¥Ö€Õ¡Õ´Õ«Õ¡ÖÕ´Õ¡Õ¶ ÖƒÕ¸Ö€Õ± -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Õ•Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ bbb.mainToolbar.logoutBtn = ÔµÕ¬Ö„ bbb.mainToolbar.logoutBtn.toolTip = ÔµÕ¬Ö„ -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ¬Õ¥Õ¦Õ¸Ö‚Õ¶ bbb.mainToolbar.settingsBtn = Ô¿Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.mainToolbar.settingsBtn.toolTip = Ô²Õ¡ÖÕ¥Õ¬ Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = ÕÕ¯Õ½Õ¥Õ¬ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚ bbb.mainToolbar.recordBtn.toolTip.stop = ÕŽÕ¥Ö€Õ»Õ¡ÖÕ¶Õ¥Õ¬ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ bbb.mainToolbar.recordBtn.toolTip.recording = ÕÕ¥Õ½Õ«Õ¡Õ¶ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¾Õ¸Ö‚Õ´ Õ§ bbb.mainToolbar.recordBtn.toolTip.notRecording = ÕÕ¥Õ½Õ«Õ¡Õ¶ Õ¹Õ« Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¾Õ¸Ö‚Õ´ -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Õ€Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨ bbb.mainToolbar.recordBtn.confirm.message.start = Ô´Õ¸Ö‚Ö„ Õ°Õ¡Õ´Õ¸Õ¦Õ¾Õ¡Õ® Õ¥Ö„, Õ¸Ö€ Ô´Õ¸Ö‚Ö„ Õ¸Ö‚Õ¦Õ¸Ö‚Õ´ Õ¥Ö„ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¥Õ¬ Õ¡ÕµÕ½ Õ½Õ¥Õ½Õ«Õ¡Õ¶ bbb.mainToolbar.recordBtn.confirm.message.stop = Ô´Õ¸Ö‚Ö„ Õ°Õ¡Õ´Õ¸Õ¦Õ¾Õ¡Õ® Õ¥Ö„, Õ¸Ö€ Ô´Õ¸Ö‚Ö„ Õ¸Ö‚Õ¦Õ¸Ö‚Õ´ Õ¥Ö„ Õ¾Õ¥Ö€Õ»Õ¡ÖÕ¶Õ¥Õ¬ Õ¡ÕµÕ½ Õ½Õ¥Õ½Õ«Õ¡Õ« Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ -bbb.mainToolbar.recordBtn..notification.title = ÕÕ¡ÕµÕ¶Õ¡Õ£Ö€Õ´Õ¡Õ¶ Õ´Õ¡Õ½Õ«Õ¶ Õ¦Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´ -bbb.mainToolbar.recordBtn..notification.message1 = Ô±ÕµÕ½ Õ¾Õ¥Õ¢Õ«Õ¶Õ¡Ö€Õ¨ Õ¯Õ¡Ö€Õ¥Õ¬Õ« Õ§ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¥Õ¬ -bbb.mainToolbar.recordBtn..notification.message2 = ÕˆÖ€ÕºÕ¥Õ½Õ¦Õ« Õ½Õ¯Õ½Õ¥Ö„ Õ¯Õ¡Õ´ Õ¤Õ¡Õ¤Õ¡Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨, Õ½ÕÕ´Õ¥Ö„ «սկսել/Õ¤Õ¡Õ¤Õ¡Ö€Õ¡ÖÕ¶Õ¥Õ¬ ձայանգրումը» Õ½Õ¿Õ¥Õ²Õ¶Õ¨ Õ¾Õ¥Ö€Õ¥Õ¾Õ« Õ¾Õ¡Õ°Õ¡Õ¶Õ¡Õ¯Õ« Õ¾Ö€Õ¡Ö‰ +bbb.mainToolbar.recordBtn.notification.title = ÕÕ¡ÕµÕ¶Õ¡Õ£Ö€Õ´Õ¡Õ¶ Õ´Õ¡Õ½Õ«Õ¶ Õ¦Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´ +bbb.mainToolbar.recordBtn.notification.message1 = Ô±ÕµÕ½ Õ¾Õ¥Õ¢Õ«Õ¶Õ¡Ö€Õ¨ Õ¯Õ¡Ö€Õ¥Õ¬Õ« Õ§ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¥Õ¬ +bbb.mainToolbar.recordBtn.notification.message2 = ÕˆÖ€ÕºÕ¥Õ½Õ¦Õ« Õ½Õ¯Õ½Õ¥Ö„ Õ¯Õ¡Õ´ Õ¤Õ¡Õ¤Õ¡Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¸Ö‚Õ´Õ¨, Õ½ÕÕ´Õ¥Ö„ «սկսել/Õ¤Õ¡Õ¤Õ¡Ö€Õ¡ÖÕ¶Õ¥Õ¬ ձայանգրումը» Õ½Õ¿Õ¥Õ²Õ¶Õ¨ Õ¾Õ¥Ö€Õ¥Õ¾Õ« Õ¾Õ¡Õ°Õ¡Õ¶Õ¡Õ¯Õ« Õ¾Ö€Õ¡Ö‰ bbb.mainToolbar.recordingLabel.recording = (Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¾Õ¸Ö‚Õ´ Õ§) bbb.mainToolbar.recordingLabel.notRecording = Õ‰Õ« Õ±Õ¡ÕµÕ¶Õ¡Õ£Ö€Õ¾Õ¸Ö‚Õ´ -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Ô¾Õ¡Õ¶Õ¸Ö‚ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ´ bbb.clientstatus.notification = Õ‰Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¾Õ¡Õ® Õ¦Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.clientstatus.close = ÖƒÕ¡Õ¯Õ¥Õ¬ bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection +bbb.clientstatus.tunneling.message = bbb.clientstatus.browser.title = Ô²Ö€Õ¡Õ¸Ö‚Õ¦Õ¥Ö€Õ« Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯ bbb.clientstatus.browser.message = ÕÕ¥Ö€ Õ¢Ö€Õ¡Õ¸Ö‚Õ¦Õ¥Ö€Õ¨ ({0}) Õ°Õ¶Õ¡ÖÕ¡Õ® Õ§. Ô½Õ¸Ö€Õ°Õ¸Ö‚Ö€Õ¤ Õ¥Õ¶ Õ¿Õ¡Õ¬Õ«Õ½ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¶Õ¥Õ¬Õ¸Ö‚ Õ¡ÕµÕ¶ Õ´Õ«Õ¶Õ»Õ¥Ö‚ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ¨. bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = ÕÕ¥Ö€ Flash Player plugin ({0}) Õ°Õ¶Õ¡ÖÕ¡Õ® Õ§; Ô½Õ¸Ö€Õ°Õ¸Ö‚Ö€Õ¤ Õ¥Õ¶ Õ¿Õ¡Õ¬Õ«Õ½ Õ©Õ¡Ö€Õ´Õ¡ÖÕ¶Õ¥Õ¬Õ¸Ö‚ Õ¡ÕµÕ¶ Õ´Õ«Õ¶Õ»Õ¥Ö‚ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ¨. bbb.clientstatus.webrtc.title = ÕÕ¡ÕµÕ¶ -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Ô½Õ¸Ö€Õ°Õ¸Ö‚Ö€Õ¤ Õ¥Õ¶ Õ¿Õ¡Õ¬Õ«Õ½ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¥Õ¬ Õ¯Õ¡Õ´ Firefox Õ¯Õ¡Õ´ Chrome Õ¡Õ¾Õ¥Õ¬Õ« Õ¬Õ¡Õ¾ Õ¡Õ¸Ö‚Õ¤Õ«Õ¸Õ« Õ°Õ¡Õ´Õ¡Ö€. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Õ“Õ¸Ö„Ö€Õ¡ÖÕ¶Õ¥Õ¬ bbb.window.maximizeRestoreBtn.toolTip = Õ„Õ¥Õ®Õ¡ÖÕ¶Õ¥Õ¬ bbb.window.closeBtn.toolTip = Õ“Õ¡Õ¯Õ¥Õ¬ @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Ô»Ö€Õ¡Õ¾Õ«Õ³Õ¡Õ¯ bbb.users.usersGrid.statusItemRenderer.changePresenter = ÕÕÕ´Õ¥Ö„, Õ¶Õ¥Ö€Õ¯Õ¡ÕµÕ¡ÖÕ¶Õ¸Õ² Õ¤Õ¡Ö€Õ±Õ¶Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€ bbb.users.usersGrid.statusItemRenderer.presenter = Õ†Õ¥Ö€Õ¯Õ¡ÕµÕ¡ÖÕ¶Õ¸Õ² bbb.users.usersGrid.statusItemRenderer.moderator = Ô¿Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ«Õ¹ -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Õ´Õ¡Ö„Ö€Õ¥Õ¬ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ¨ bbb.users.usersGrid.statusItemRenderer.viewer = Õ„Õ¡Õ½Õ¶Õ¡Õ¯Õ«Ö bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Ö‚Õ´ Õ§ Õ¾Õ¥Õ¢ Õ¿Õ¥Õ½Õ¡ÕÖÕ«Õ¯ @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¨ Õ´Õ«Õ¡ÖÖ€Õ¡ bbb.users.usersGrid.mediaItemRenderer.pushToMute = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¡Õ® Õ§ {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¥Õ¬ {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¸Ö‚Õ´Õ«Ö Õ°Õ¡Õ¶Õ¥Õ¬ {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Ô´Õ¸Ö‚Ö€Õ½ Õ°Õ¡Õ¶Õ¥Õ¬ {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = ÕŽÕ¥Õ¢ ÕÖÕ«Õ¯Õ« Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´ bbb.users.usersGrid.mediaItemRenderer.micOff = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ bbb.users.usersGrid.mediaItemRenderer.micOn = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¨ Õ´Õ«Õ¡ÖÕ¶Õ¥Õ¬ bbb.users.usersGrid.mediaItemRenderer.noAudio = ÕÕ¡ÕµÕ¶Õ¡ Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ« Õ´Õ¥Õ» Õ¹Õ¥Ö„ -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Õ´Õ¡Ö„Ö€Õ¥Õ¬ -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Õ‡Õ¶Õ¸Õ¥Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½ bbb.presentation.titleWithPres = Õ‡Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½: {0} bbb.presentation.quickLink.label = Õ‡Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶ bbb.presentation.fitToWidth.toolTip = ÕÕ¥Õ²Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ¨, Õ¨Õ½Õ¿ Õ¬Õ¡ÕµÕ¶Õ¸Ö‚Õ©ÕµÕ¡Õ¶ bbb.presentation.fitToPage.toolTip = ÕÕ¥Õ²Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ¨ Õ¨Õ½Õ¿ Õ§Õ»Õ« Õ¹Õ¡ÖƒÕ« bbb.presentation.uploadPresBtn.toolTip = Ô²Õ¥Õ¼Õ¶Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½ -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Õ¶Õ¡ÕÕ¸Ö€Õ¤ Õ½Õ¬Õ¡ÕµÕ¤Õ¨ bbb.presentation.btnSlideNum.accessibilityName = {0} Õ½Õ¬Õ¡ÕµÕ¤ {1}-Õ«Ö bbb.presentation.btnSlideNum.toolTip = Ô¸Õ¶Õ¿Ö€Õ¥Õ¬ Õ½Õ¬Õ¡ÕµÕ¤Õ¨ @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Ô²Õ¥Õ¼Õ¶Õ¸Ö‚Õ´Õ¨ Õ¡Õ¾Õ¡Ö€Õ¿Õ¾Õ¡Õ® Õ§Ö‰ Ô½Õ¶Õ¤ bbb.presentation.uploaded = Õ¢Õ¥Õ¼Õ¶Õ¾Õ¡Õ® Õ§ bbb.presentation.document.supported = Ô²Õ¥Õ¼Õ¶Õ¾Õ¡Õ® ÖƒÕ¡Õ½Õ¿Õ¡Õ©Õ¸Ö‚Õ²Õ©Õ¨ Õ°Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½ÕÕ¡Õ¶Õ¸Ö‚Õ´ Õ§Ö‰ ÕÖ‡Õ¡ÖƒÕ¸ÕÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ Õ½Õ¯Õ½Õ¾Õ¡Õ® Õ§... bbb.presentation.document.converted = Õ“Õ¡Õ½Õ¿Õ¡Õ©Õ¸Ö‚Õ²Õ©Õ¨ Õ°Õ¡Õ»Õ¸Õ²Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢ Õ±Ö‡Õ¡ÖƒÕ¸ÕÕ¾Õ¡Õ® Õ§ -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Õ„Ôµ Õ½ÕÕ¡Õ¬Ö‰ Ô¿Õ¡Õº Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Ö„ Õ¡Õ¤Õ´Õ«Õ¶Õ«Õ½Õ¿Ö€Õ¡Õ¿Õ¸Ö€Õ« Õ°Õ¥Õ¿Ö‰ bbb.presentation.error.security = Ô±Õ¶Õ¾Õ¿Õ¡Õ¶Õ£Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ½ÕÕ¡Õ¬Ö‰ Ô¿Õ¡Õº Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Ö„ Õ¡Õ¤Õ´Õ«Õ¶Õ«Õ½Õ¿Ö€Õ¡Õ¿Õ¸Ö€Õ« Õ°Õ¥Õ¿Ö‰ bbb.presentation.error.convert.notsupported = ÕÕÕ¡Õ¬Ö‰ Ô²Õ¥Õ¼Õ¶Õ¾Õ¡Õ® ÖƒÕ¡Õ½Õ¿Õ¡Õ©Õ¸Ö‚Õ²Õ©Õ¨ Õ¹Õ« Õ°Õ¡Õ´Õ¡ÕºÕ¡Õ¿Õ¡Õ½ÕÕ¡Õ¶Õ¸Ö‚Õ´, Õ¨Õ¶Õ¿Ö€Õ¥Ö„ Õ³Õ«Õ·Õ¿ Õ±Ö‡Õ¡Õ¹Õ¡ÖƒÕ« ÖƒÕ¡Õ½Õ¿Õ¡Õ©Õ¸Ö‚Õ²Õ©Ö‰ @@ -283,62 +285,63 @@ bbb.fileupload.uploadBtn = ÕŽÕ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬ bbb.fileupload.uploadBtn.toolTip = ÕŽÕ¥Ö€Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Ö†Õ¡ÕµÕ¬Õ¨ bbb.fileupload.deleteBtn.toolTip = Õ‹Õ¶Õ»Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ¨ bbb.fileupload.showBtn = Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Õ‘Õ¸Ö‚ÖÕ¡Õ¤Ö€Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ¨ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Õ„Õ¡Õ¿Õ¶Õ¡ÕºÕ¡Õ¿Õ¯Õ¥Ö€Õ¶Õ¥Ö€Õ« Õ½Õ¿Õ¥Õ²Õ®Õ¸Ö‚Õ´ bbb.fileupload.progBarLbl = Ô¸Õ¶Õ©Õ¡ÖÖ„ -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶ bbb.chat.quickLink.label = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶ bbb.chat.cmpColorPicker.toolTip = ÕÕ¥Ö„Õ½Õ¿Õ« Õ£Õ¸Ö‚ÕµÕ¶Õ¨ bbb.chat.input.accessibilityName = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¸Ö‚Õ²Õ²Õ´Õ¡Õ¶ Õ¤Õ¡Õ·Õ¿ bbb.chat.sendBtn.toolTip = ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ bbb.chat.sendBtn.accessibilityName = ÕˆÖ‚Õ²Õ¡Ö€Õ¯Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = ÕŠÕ¡Õ¿Õ³Õ¥Õ¶Õ¥Õ¬ Õ¡Õ´Õ¢Õ¸Õ²Õ» Õ¿Õ¥Ö„Õ½Õ¿Õ¨ bbb.chat.publicChatUsername = Ô¸Õ¶Õ¤Õ°Õ¡Õ¶Õ¸Ö‚Ö€ bbb.chat.optionsTabName = Ô¿Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.chat.privateChatSelect = Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ«Õ¶ Õ¡Õ¶Õ°Õ¡Õ¿Õ¡Õ¯Õ¡Õ¶ Õ¦Ö€Õ¸Ö‚ÕµÖÕ« Õ°Õ¡Õ´Õ¡Ö€ bbb.chat.private.userLeft = Õ„Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¨ Õ°Õ¥Õ¼Õ¡ÖÕ¡Õ¾ bbb.chat.private.userJoined = Õ•Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¨ Õ´Õ«Õ¡ÖÕ¡Õ¾ -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ´Õ¡Õ½Õ¶Õ¡Õ¯ÖÕ«Õ¶ Õ¡Õ¶Õ°Õ¡Õ¿Õ¡Õ¯Õ¡Õ¶ Õ¦Ö€Õ¸Ö‚ÕµÖÕ« Õ°Õ¡Õ´Õ¡Ö€ -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.chat.fontSize = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¿Õ¡Õ¼Õ¡Õ·Õ¡Ö€Õ« Õ¹Õ¡ÖƒÕ« Õ¨Õ¶Õ¿Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ bbb.chat.cmbFontSize.toolTip = Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¿Õ¡Õ¼Õ¡Õ·Õ¡Ö€Õ« Õ¹Õ¡ÖƒÕ¨ -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Õ“Õ¸Ö„Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.chat.maximizeRestoreBtn.accessibilityName = Õ„Õ¥Õ®Õ¡ÖÕ¶Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.chat.closeBtn.accessibilityName = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.chat.chatTabs.accessibleNotice = Õ†Õ¸Ö€ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¡ÕµÕ½ Õ§Õ»Õ¡Õ¶Õ·Õ¡Õ¶Õ« Õ¾Ö€Õ¡ bbb.chat.chatMessage.systemMessage = Õ°Õ¡Õ´Õ¡Õ¯Õ¡Ö€Õ£ -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Õ“Õ¸ÕÕ¥Ö„ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ¨ bbb.publishVideo.changeCameraBtn.toolTip = Ô²Õ¡ÖÕ¥Ö„ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« ÖƒÕ¸ÕÕ¥Õ¬Õ¸Ö‚ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.publishVideo.cmbResolution.tooltip = Ô¸Õ¶Õ¿Ö€Õ¥Ö„ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« Õ¬Õ¸Ö‚Õ®Õ¸Ö‚Õ´Õ¬Õ¸Ö‚Õ®Õ¸Ö‚ÕµÕ©Õ¨ @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = ÕÕ¯Õ½Õ¥Õ¬ Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ bbb.publishVideo.startPublishBtn.toolTip = ÕÕ¯Õ½Õ¥Õ¬ ÕÕ¥Ö€ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ bbb.publishVideo.startPublishBtn.errorName = Õ¹Õ« Õ¯Õ¡Ö€Õ¸Õ² Õ¯Õ«Õ½Õ¥Õ¬ Õ¿Õ¥Õ½Õ¡ÕÖÕ«Õ¯Õ¨. ÕŠÕ¡Õ¿Õ³Õ¡Õ¼Õ¶: {0} bbb.webcamPermissions.chrome.title = ÕŽÕ¥Õ¢-ÕÖÕ«Õ¯Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ Chrome Õ¦Õ¶Õ¶Õ¡Ö€Õ¯Õ¹Õ¸Ö‚Õ´ -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = ÕÕ¥Õ½Õ¡ÕÖÕ«Õ¯Õ¶Õ¥Ö€ bbb.videodock.quickLink.label = ÕŽÕ¥Õ¢ÕÖÕ«Õ¯Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶ bbb.video.minimizeBtn.accessibilityName = Õ“Õ¸Ö„Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ @@ -361,95 +364,97 @@ bbb.video.publish.hint.waitingApproval = ÕÕºÕ¡Õ½Õ¥Õ¬ Õ°Õ¡Õ½Õ¿Õ¡Õ¿Õ´Õ¡Õ¶Õ¨ bbb.video.publish.hint.videoPreview = ÕŽÕ¥Õ¢ ÕÖÕ«Õ¯Õ« Õ¶Õ¡ÕÕ¡Õ¤Õ«Õ¿Õ¸Ö‚Õ´ bbb.video.publish.hint.openingCamera = Ô²Õ¡ÖÕ¸Ö‚Õ´ Õ¥Õ¶Ö„ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ¨... bbb.video.publish.hint.cameraDenied = ÕŽÕ¥Õ¢ ÕÖÕ«Õ¯Õ« Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Ö‚Õ´Õ¨ Õ¡Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¾Õ¡Õ® Õ§ -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Õ€Ö€Õ¡Õ¿Õ¡Ö€Õ¡Õ¯Õ¸Ö‚Õ´ Õ¥Õ¶Ö„... bbb.video.publish.closeBtn.accessName = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.video.publish.closeBtn.label = Õ‰Õ¥Õ²Õ¡Ö€Õ¯Õ¥Õ¬ bbb.video.publish.titleBar = Õ€Ö€Õ¡Õ¿Õ¡Ö€Õ¡Õ¯Õ¥Õ¬ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.video.streamClose.toolTip = Õ“Õ¡Õ¯Õ¥Õ¬ Õ°Õ¸Õ½Ö„Õ¨ {0} -Õ« Õ°Õ¡Õ´Õ¡Ö€: -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Ô´Õ¡Õ¤Õ¡Ö€Õ¥ÖÕ¶Õ¥Õ¬ Õ¬Õ½Õ¥Õ¬ Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ¨ bbb.toolbar.phone.toolTip.unmute = ÕÕ¯Õ½Õ¥Õ¬ Õ¬Õ½Õ¥Õ¬ Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ¨ bbb.toolbar.phone.toolTip.nomic = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ² Õ¹Õ« Õ°Õ¡Õ¿Õ¶Õ¡Õ¢Õ¥Ö€Õ¾Õ¥Õ¬ -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Ô²Õ¡Õ·ÕÕ¥Õ¬ Õ«Õ´ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ¨ bbb.toolbar.video.toolTip.stop = Ô´Õ¡Õ¤Õ¡Ö€Õ¥ÖÕ¶Õ¥Õ¬ Õ«Õ´ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ¨ Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Ô±Õ¾Õ¥Õ¬Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¸Ö€ Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ® ÖÕ¡Õ¶Õ¯Õ« Õ´Õ¥Õ» -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Õ“Õ¸ÕÕ¥Õ¬ Õ¶Õ¥Ö€Õ¯Õ¡ Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ®Õ¨ bbb.layout.loadButton.toolTip = Ô²Õ¥Õ¼Õ¶Õ¥Õ¬ Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ® Ö†Õ¡ÕµÕ¬Õ«Ö bbb.layout.saveButton.toolTip = Õ€Õ«Õ·Õ¥Õ¬ Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ®Õ¨ Ö†Õ¡ÕµÕ¬Õ« Õ´Õ¥Õ» @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Ô¿Õ«Ö€Õ¡Õ¼Õ¥Õ¬ Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ®Õ¨ bbb.layout.combo.custom = * Õ•Õ£Õ¿Õ¾Õ¸Õ²Õ« Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ® bbb.layout.combo.customName = Õ•Õ£Õ¿Õ¾Õ¸Õ²Õ« Õ¿Õ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ® bbb.layout.combo.remote = Õ€Õ¥Õ¼Õ¡Õ¯Õ¡ -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = ÕÕ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ®Õ¨ Õ£Ö€Õ¡Õ¶ÖÕ¾Õ¡Õ® Õ§ +bbb.layout.save.ioerror = bbb.layout.load.complete = ÕÕ¥Õ½Ö„Õ« Õ¶Õ¡ÕÕ¡Õ£Õ«Õ®Õ¨ Õ¢Õ¥Õ¼Õ¶Õ¾Õ¡Õ® Õ§ bbb.layout.load.failed = Õ¡Õ¶Õ°Õ¶Õ¡Ö€ Õ§ Õ¢Õ¥Õ¼Õ¶Õ¥Õ¬ Õ¤Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Ô¼Õ¼Õ¸Ö‚Õ©ÕµÕ¡Õ´Õ¢ Õ¨Õ¶Õ¤Õ¸Ö‚Õ¶Õ¾Õ¸Õ² Õ¤Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = ÕŽÕ«Õ¤Õ¥Õ¸ Õ¦Ö€Õ¸Ö‚ÕµÖ bbb.layout.name.webcamsfocus = Webcam Õ°Õ¡Õ¶Õ¤Õ«ÕºÕ¸Ö‚Õ´ bbb.layout.name.presentfocus = Õ‡Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ¡ÕµÕ«Õ¶ Õ°Õ¡Õ¶Õ¤Õ«ÕºÕ¸Ö‚Õ´ -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Ô´Õ¡Õ½Õ¡ÕÕ¸Õ½Õ¸Ö‚Õ©ÕµÕ¸Õ¡Õ¶ Ö…Õ£Õ¶Õ¡Õ¯Õ¡Õ¶ bbb.layout.name.lecture = Ô´Õ¡Õ½Õ¡ÕÕ¸Õ½Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Õ„Õ¡Õ¿Õ«Õ¿ bbb.highlighter.toolbar.pencil.accessibilityName = Õ“Õ¸ÕÕ¥Õ¬ Õ£Ö€Õ¡Õ¿Õ¡ÕÕ¿Õ¡Õ¯Õ« Õ¯Õ¸Ö‚Ö€Õ½Õ¸Ö€Õ¨ Õ´Õ¡Õ¿Õ«Õ¿Õ« bbb.highlighter.toolbar.ellipse = Õ‡Ö€Õ»Õ¡Õ¶ @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Ô¸Õ¶Õ¿Ö€Õ¥Õ¬ Õ£Õ¸Ö‚ÕµÕ¶ bbb.highlighter.toolbar.color.accessibilityName = Ô³Ö€Õ¡Õ¿Õ¡ÕÕ¿Õ¡Õ¯Õ« Õ´Õ¡Ö€Õ¯Õ¥Ö€Õ« Õ£Õ¸Ö‚ÕµÕ¶Õ¨ bbb.highlighter.toolbar.thickness = Õ“Õ¸ÕÕ¥Õ¬ Õ°Õ¡Õ½Õ¿Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ bbb.highlighter.toolbar.thickness.accessibilityName = Ô³Ö€Õ¡Õ¿Õ¡ÕÕ¿Õ¡Õ¯Õ« Õ¾Ö€Õ¡ Õ¶Õ¯Õ¡Ö€Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ½Õ¿Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = ÔµÕ¬Ö„ +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Õ€Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬ bbb.logout.appshutdown = ÕÕ¥Ö€Õ¾Õ¥Ö€Õ¡ÕµÕ«Õ¶ Õ®Ö€Õ¡Õ£Õ«Ö€Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¾Õ¥Õ¬ Õ§ bbb.logout.asyncerror = ÕÕ«Õ¶Ö„Ö€Õ¸Õ¶Õ¡ÖÕ´Õ¡Õ¶ Õ½ÕÕ¡Õ¬ @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Õ„Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Õ¶ Õ¡Õ¾Õ¡Ö€Õ¿Õ¾Õ¥Õ¬ bbb.logout.rejected = Õ„Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Õ¶ Õ´Õ¥Ö€ÕªÕ¾Õ¥Ö bbb.logout.invalidapp = RED5 Õ®Ö€Õ¡Õ£Õ«Ö€Õ¨ Õ£Õ¸ÕµÕ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ Õ¹Õ¸Ö‚Õ¶Õ« bbb.logout.unknown = Ô´Õ¸Ö‚Ö„ Õ¯Õ¸Ö€ÖÖ€Õ¥ÖÕ«Ö„ Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ½Õ¥Ö€Õ¾Õ¥Ö€Õ«Õ¶ -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Ô´Õ¸Ö‚Ö„ Õ¬Ö„Õ¥ÖÕ«Ö„ Õ¯Õ¸Õ¶Ö†Õ¥Ö€Õ¡Õ¶Õ½Õ¨ -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Õ´Õ¸Õ¤Õ¥Ö€Õ¡Õ¿Õ¸Ö€ Õ±Õ¥Õ¦ Õ¤Õ¸Ö‚Ö€Õ½ Õ§ Õ°Õ¡Õ¶Õ¥Õ¬. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = ÔµÕ©Õ¥ Õ¡Õ¶Õ»Õ¡Õ¿Õ¸Ö‚Õ´Õ¨ Õ¯Õ¡Õ¿Õ¡Ö€Õ¾Õ¥Õ¬ Õ§ Õ±Õ¥Õ¦Õ¶Õ«Ö Õ¡Õ¶Õ¯Õ¡Õ, Õ½ÕÕ´Õ¥Ö„ Õ¶Õ¥Ö€Ö„Ö‡Õ¸Ö‚Õ´ Õ£Õ¿Õ¶Õ¾Õ¸Õ² Õ¯Õ¸Õ³Õ¡Õ¯Õ¨, Õ¯Õ¡ÕºÕ¨ Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€ bbb.logout.refresh.label = ÕŽÕ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¥Õ¬ Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Õ€Õ¡Õ½Õ¿Õ¡Õ¿Õ¥Õ¬ Õ¥Õ¬Ö„Õ¨ bbb.logout.confirm.message = Ô´Õ¸Ö‚Ö„ Õ°Õ¡Õ´Õ¸Õ¦Õ¾Õ¡Õ® Õ¥Ö„, Õ¸Ö€ Õ¸Ö‚Õ¦Õ¸Ö‚Õ´ Õ¥Ö„ Õ¤Õ¸Ö‚Ö€Õ½ Õ£Õ¡Õ¬ Õ°Õ¡Õ´Õ¡Õ¯Õ¡Ö€Õ£Õ«Ö -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ô±ÕµÕ¸ bbb.logout.confirm.no = ÕˆÕ¹ -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Õ€Õ¡ÕµÕ¿Õ¶Õ¡Õ¢Õ¥Ö€Õ¥Õ¬ Ô»Õ¶Õ¿Õ¥Ö€Õ¶Õ¥Õ¿ Õ¯Õ¡ÕºÕ« ÕÕ¶Õ¤Õ«Ö€Õ¶Õ¥Ö€ bbb.connection.reconnecting=Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¾Õ¸Ö‚Õ´ Õ§ bbb.connection.reestablished=Õ´Õ«Õ¡ÖÕ¸Ö‚Õ´Õ¨ Õ¾Õ¥Ö€Õ¡Õ¯Õ¡Õ¶Õ£Õ¶Õ¾Õ¥Õ¬ Õ§ @@ -530,59 +539,60 @@ bbb.notes.title = Õ†Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.notes.cmpColorPicker.toolTip = ÕÕ¥Ö„Õ½Õ¿Õ« Õ£Õ¸Ö‚ÕµÕ¶Õ¨ bbb.notes.saveBtn = ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¥Õ¬ bbb.notes.saveBtn.toolTip = ÕŠÕ¡Õ°ÕºÕ¡Õ¶Õ¥Õ¬ Õ¶Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ¨ -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = ÕÕ¥Õ²Õ´Õ¥Ö„ Õ©Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬ Õ¯Õ¸Õ³Õ¡Õ¯Õ¨ Õ°Õ¡ÕµÕ¿Õ¶Õ¾Õ¸Õ² ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ« Õ¾Ö€Õ¡, Õ¸Ö€ÕºÕ¥Õ½Õ¦Õ« Õ°Õ¡Õ´Õ¸Õ¦Õ¾Õ¥Ö„, Õ¸Ö€ Õ§Õ¯Ö€Õ¡Õ¶Õ« Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ Õ¨Õ¶Õ©Õ¡Õ¶Õ¸Ö‚Õ´ Õ§ Õ³Õ«Õ·Õ¿ bbb.settings.deskshare.start = Ô¸Õ¶Õ¿Ö€Õ¥Õ¬ Ô·Õ¯Ö€Õ¡Õ¶Õ« Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ bbb.settings.voice.volume = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ« Õ¡Õ¯Õ¿Õ«Õ¾Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash -Õ« Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ« Õ½ÕÕ¡Õ¬ bbb.settings.flash.text = ÕÕ¥Ö€ Õ´Õ¸Õ¿ Õ¿Õ¥Õ²Õ¡Õ¤Ö€Õ¾Õ¡Õ® Õ§ Flash {0}, Õ¢Õ¡ÕµÖ ÕÕ¥Õ¦ Õ¡Õ¶Õ°Ö€Õ¡ÕªÕ¥Õ·Õ¿ Õ§ Õ¡Õ¼Õ¶Õ¾Õ¡Õ¦Õ¶ Flash {1} Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ´Õ¡Õ¶ Õ°Õ¡Õ´Õ¡Ö€Ö‰ ÕÕ¿Õ¸Ö€Õ«Õ¶ Õ¯Õ¸Õ³Õ¡Õ¯Õ¨ Õ½Õ¥Õ²Õ´Õ¥Õ¬Õ¸Õ¾ Ô´Õ¸Ö‚Ö„ Õ¯Õ¿Õ¥Õ²Õ¡Õ¤Ö€Õ¥Ö„ Õ¶Õ¸Ö€Õ¡Õ£Õ¸Ö‚ÕµÕ¶ Adobe Flash Õ¿Õ¡Ö€Õ¢Õ¥Ö€Õ¡Õ¯Õ¨Ö‰ bbb.settings.flash.command = ÕÕ¥Õ²Õ¡Õ¤Ö€Õ¥Õ¬ Õ¶Õ¸Ö€Õ¡Õ£Õ¸Ö‚ÕµÕ¶ Adobe Flash bbb.settings.isight.label = iSight Õ¿Õ¥Õ½Õ¡ÕÖÕ«Õ¯Õ« Õ½ÕÕ¡Õ¬ -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = ÕÕ¥Õ²Õ¡Õ¤Ö€Õ¥Õ¬ Flash 10.2 RC2 bbb.settings.warning.label = Ô¶Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´ bbb.settings.warning.close = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¦Õ£Õ¸Ö‚Õ·Õ¡ÖÕ¸Ö‚Õ´Õ¨ bbb.settings.noissues = ÕÕÕ¡Õ¬ Õ¹Õ« Õ°Õ¡ÕµÕ¿Õ¶Õ¡Õ¢Õ¥Ö€Õ¾Õ¥Õ¬ bbb.settings.instructions = Ô¹Õ¸Ö‚ÕµÕ¬Õ¡Õ¿Ö€Õ¥Õ¬ Flash -Õ«Õ¶ Õ¤Õ«Õ´Õ¥Õ¬ Õ¿Õ¥Õ½Õ¡ÕÖÕ«Õ¯Õ«Õ¶Ö‰ ÔµÕ©Õ¥ Ô´Õ¸Ö‚Ö„ Õ¿Õ¥Õ½Õ¶Õ¸Ö‚Õ´ Ö‡ Õ¬Õ½Õ¸Ö‚Õ´ Õ¥Ö„ ÕÕ¥Õ¦, Õ¡ÕºÕ¡ ÕÕ¥Ö€ Õ¦Õ¶Õ¶Õ«Õ¹Õ¨ Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ¸Ö€Õ¾Õ¡Õ® Õ§ Õ³Õ«Õ·Õ¿Ö‰ Õ„Õ¶Õ¡ÖÕ¡Õ® Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ½ÕÕ¡Õ¬Õ¶Õ¥Ö€Õ¨ Õ¢Õ¥Ö€Õ¾Õ¡Õ® Õ¥Õ¶ Õ½Õ¿Õ¸Ö€Ö‡Ö‰ Õ“Õ¶Õ¿Ö€Õ¥Ö„ Õ¡ÕµÕ¶Õ¿Õ¥Õ² Õ°Õ¶Õ¡Ö€Õ¡Õ¾Õ¸Ö€ Õ½ÕÕ¡Õ¬Õ¶Õ¥Ö€Õ¨Ö‰ -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = ÔµÕ¼Õ¡Õ¶Õ¯ÕµÕ¸Ö‚Õ¶Õ« ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Õ“Õ¸ÕÕ¥Õ¬ Õ£Ö€Õ¡Õ¿Õ¡ÕÕ¿Õ¡Õ¯Õ« Õ¯Õ¸Ö‚Ö€Õ½Õ¸Ö€Õ¨ Õ¥Õ¼Õ¡Õ¶Õ¯ÕµÕ¸Ö‚Õ¶Õ¸Ö‚ ltbcustom.bbb.highlighter.toolbar.line = Ô³Õ«Õ® @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = ÕÕ¥Ö„Õ½Õ¿ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Õ“Õ¸ÕÕ¥Õ¬ Õ£Ö€Õ¡Õ¿Õ¡ÕÕ¿Õ¡Õ¯Õ« Õ¯Õ¸Ö‚Ö€Õ½Õ¸Ö€Õ¨ Õ¿Õ¥Ö„Õ½Õ¿Õ« ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = ÕÕ¥Ö„Õ½Õ¿Õ« Õ£Õ¸Ö‚ÕµÕ¶Õ¨ ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = ÕÕ¡Õ¼Õ¡Õ·Õ¡Ö€Õ« Õ¹Õ¡ÖƒÕ¨ -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = ÕŠÕ¡Õ¿Ö€Õ¡Õ½Õ¿ @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Ô´Õ¸Ö‚Ö„ Õ¿Õ¥Õ²Õ¡Õ·Õ¡Ö€ÕªÕ¾Õ¸Ö‚ bbb.accessibility.chat.chatBox.navigatedLatestRead = Ô´Õ¸Ö‚Ö„ Õ¿Õ¥Õ²Õ¡Õ·Õ¡Ö€ÕªÕ¾Õ¸Ö‚Õ´ Õ¥Ö„ Õ¤Õ¥ÕºÕ« Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨, Õ¸Ö€Õ¨ Õ¤Õ¸Ö‚Ö„ Õ¯Õ¡Ö€Õ¤Õ¡ÖÕ¥Õ¬ Õ¥Ö„ bbb.accessibility.chat.chatwindow.input = Õ€Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ´Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¸Ö‚Õ´ bbb.accessibility.chat.chatwindow.audibleChatNotification = Õ¹Õ¡Õ¿Õ« Õ±Õ¡ÕµÕ¶Õ¡ÕµÕ«Õ¶ Õ¡Õ¦Õ¤Õ¡Õ¶Õ·Õ¡Õ¶ -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Ô½Õ¶Õ¤Ö€Õ¸Ö‚Õ´ Õ¥Õ¶Ö„ Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¥Õ¬ Õ½Õ¿Õ¥Õ²Õ¶Õ¡Õ·Õ¡Ö€Õ« Õ¾Ö€Õ¡ÕµÕ« Õ½Õ¬Õ¡Ö„Õ¶Õ¥Ö€Õ« Õ¯Õ¸Õ³Õ¡Õ¯Õ¶Õ¥Ö€Õ¨ Õ°Õ¡Õ²Õ¸Ö€Õ¤Õ¡Õ£Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¶Õ¥Ö€Õ¸Õ¾ Õ¿Õ¥Õ²Õ¡Õ·Õ¡Ö€ÕªÕ¾Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€Ö‰ bbb.accessibility.notes.notesview.input = Õ†Õ·Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« Õ´Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¸Ö‚Õ´ bbb.shortcuthelp.title = Ô´ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ´Õ¡Õ¶ Õ½Õ¿Õ¥Õ²Õ¶Õ¥Ö€ -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Õ“Õ¸Ö„Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ´Õ¡Õ¶ Ö…Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Õ„Õ¥Õ®Õ¡ÖÕ¶Õ¥Õ¬ Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ´Õ¡Õ¶ Ö…Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.shortcuthelp.closeBtn.accessibilityName = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ´Õ¡Õ¶ Ö…Õ£Õ¶Õ¸Ö‚Õ©ÕµÕ¡Õ¶ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Ô¸Õ¶Õ¤Õ°Õ¡Õ¶Õ¸Ö‚Ö€ Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.shortcuthelp.dropdown.presentation = Õ‡Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ« Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.shortcuthelp.dropdown.chat = Ô¶Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.shortcuthelp.dropdown.users = Õ•Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ²Õ¶Õ¥Ö€Õ« Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´Õ¶Õ¥Ö€ -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Ô´ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ¸Ö‚Õ´ bbb.shortcuthelp.headers.function = Õ–Õ¸Ö‚Õ¶Õ¯ÖÕ«Õ¡ @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Õ“Õ¸Ö„Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¥Ö€Õ¯Õ¡ ÕºÕ¡Õ¿ bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Õ„Õ¥Õ®Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ¥Ö€Õ¯Õ¡ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Ô¼Ö„Õ¥Õ¬ Flash -Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Õ„Õ«Õ¡ÖÕ¶Õ¥Õ¬ Õ¯Õ¡Õ´ Õ¡Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ ÕÕ¥Ö€ ÕÕ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¨ @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ«Õ¶ bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ«Õ¶ -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Ô²Õ¡ÖÕ¥Õ¬ Õ§Õ¯Ö€Õ¡Õ¶Õ« Õ¢Õ¡Õ·ÕÕ´Õ¡Õ¶ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ«Õ¶ @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Ô¼Ö„Õ¥Õ¬ Õ¡ÕµÕ½ Õ°Õ¡Õ¶Õ¤Õ«ÕºÕ¸Ö‚Õ´Õ¨ bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Ô²Õ¡Ö€Õ±Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ±Õ¥Ö€ Õ±Õ¥Õ¼Ö„Õ¨ -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Ô²Õ¥Õ¼Õ¶Õ¥Õ¬ Õ·Õ¶Õ¸Ö€Õ°Õ¡Õ¶Õ¤Õ¥Õ½ bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ°Õ¡Õ»Õ¸Ö€Õ¤ Õ½Õ¬Õ¡Õ¤Õ«Õ¶ @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ°Õ¡Õ»Õ¸Ö€Õ¤ Õ½Õ¬Õ¡ÕµÕ¤Õ«Õ¶ bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = ÕÕ¥Õ²Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ½Õ¬Õ¡ÕµÕ¤Õ¨ Õ¬Õ¡ÕµÕ¶Ö„Õ¸Õ¾ -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = ÕÕ¥Õ²Õ¡Õ¾Õ¸Ö€Õ¥Õ¬ Õ½Õ¬Õ¡ÕµÕ¤Õ¨ Õ§Õ»Õ¸Õ¾ Õ´Õ¥Õ¯ -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Ô´Õ¡Ö€Õ±Õ¶Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ«Õ¶ Õ¶Õ¥Ö€Õ¯Õ¡ÕµÕ¡ÖÕ¶Õ¸Õ² -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Õ€Õ¥Õ¼Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ«Õ¶ Õ°Õ¡Õ¶Õ¤Õ«ÕºÕ¸Ö‚Õ´Õ«Ö +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 8383 bbb.shortcutkey.users.mute.function = ÕÕ¡ÕµÕ¶Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ Õ¯Õ¡Õ´ Õ´Õ«Õ¡ÖÕ¶Õ¥Õ¬ Õ¶Õ·Õ¾Õ¡Õ® Õ¡Õ¶Õ±Õ« Õ°Õ¡Õ´Õ¡Ö€ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Ô±Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ Õ¯Õ¡Õ´ Õ´Õ«Õ¡ÖÕ¶Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ« ÕÕ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¶Õ¥Ö€Õ¨ bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Ô±Õ¶Õ»Õ¡Õ¿Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€Õ« ÕÕ¡Õ½Õ¡ÖƒÕ¸Õ²Õ¶Õ¥Ö€Õ¨, Õ¢Õ¡ÖÕ« Õ¶Õ¥Ö€Õ¯Õ¡ÕµÕ¡ÖÕ¶Õ¸Õ²Õ«Ö -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶Õ« Õ§Õ»Õ¡Õ¶Õ·Õ¡Õ¶Õ¶Õ¥Ö€Õ«Õ¶ -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ¿Õ¡Õ¼Õ¡Õ·Õ¡Ö€Õ« Õ£Õ¸Ö‚ÕµÕ¶Õ« Õ¨Õ¶Õ¿Ö€Õ¸Ö‚Õ©ÕµÕ¡Õ¶Õ¨ bbb.shortcutkey.chat.sendMessage = 8383 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Ô±Õ¶ÖÕ¶Õ¥Õ¬ Õ¾Õ¥Ö€Õ»Õ«Õ¶ Õ¯Õ¡Ö€ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = ÔºÕ¡Õ´Õ¡Õ¶Õ¡Õ¯Õ¡Õ¾Õ¸Ö€ Õ¤ÕµÕ¸Ö‚Ö€Õ¡Õ¶ÖÕ´Õ¶Õ¥Ö€ Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¥Õ¬Õ¸Ö‚ Õ°Õ¡Õ´Õ¡Ö€ -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = ÕÕ¯Õ½Õ¥Õ¬ Ö„Õ¾Õ¥Õ¡Ö€Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ bbb.polling.startButton.label = ÕÕ¯Õ½Õ¥Õ¬ Ö„Õ¾Õ¥Õ¡Ö€Õ¯Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ bbb.polling.publishButton.label = Õ€Ö€Õ¡ÕºÕ¡Ö€Õ¡Õ¯Õ¥Õ¬ bbb.polling.closeButton.label = Õ“Õ¡Õ¯Õ¥Õ¬ -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Ö„Õ¾Õ¥Õ¡Ö€Õ¯Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¡Ö€Õ¤ÕµÕ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Õ´Õ¸Ö‚Õ¿Ö„Õ¡Õ£Ö€Õ¥Ö„ Ö„Õ¾Õ¥Õ¡Ö€Õ¯Õ¥Õ¬Õ¸Ö‚ Õ¨Õ¶Õ¿Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶Õ¨ bbb.polling.respondersLabel.novotes = ÕÕºÕ¡Õ½Õ¥Õ¬ ÕºÕ¡Õ¿Õ¡Õ½ÕÕ¡Õ¶Õ«Õ¶ bbb.polling.respondersLabel.text = {0} Ö…Õ£Õ¿Õ¡Õ£Õ¸Ö€Õ®Õ¸Õ² Õ§ ÕºÕ¡Õ¿Õ¡Õ½ÕÕ¡Õ¶Õ¥Õ¬ @@ -771,7 +782,7 @@ bbb.polling.answer.E = Ôµ bbb.polling.answer.F = Ô¶ bbb.polling.answer.G = Ô· bbb.polling.results.accessible.header = Ö„Õ¾Õ¥Õ¡Ö€Õ¯Õ¸Ö‚Õ©ÕµÕ¡Õ¶ Õ¡Ö€Õ¤ÕµÕ¸Ö‚Õ¶Ö„Õ¶Õ¥Ö€Õ¨ -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = ÕÕ¯Õ½Õ¥Õ¬ Õ¢Õ¡Õ·ÕÕ¸Ö‚Õ´Õ¨ bbb.publishVideo.changeCameraBtn.labelText = Õ“Õ¸ÕÕ¥Ö„ Õ¾Õ¥Õ¢ ÕÖÕ«Õ¯Õ¨ @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ ÕºÕ¡Õ¿Õ¸Ö‚ bbb.users.settings.lockAll = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥Ö€Õ«Õ¶ bbb.users.settings.lockAllExcept = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¥Õ¬ Õ¢Õ¸Õ¬Õ¸Ö€ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥Ö€Õ«Õ¶, Õ¢Õ¡ÖÕ« Õ¶Õ¥Ö€Õ¯Õ¡ÕµÕ¡ÖÕ¶Õ¸Õ²Õ«Ö bbb.users.settings.lockSettings = Ô±Õ´Ö€Õ¡ÖÕ¶Õ¥Õ¬ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥Ö€Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ¨ -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Õ€Õ¡Õ¶Õ¥Õ¬ Õ¡Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¸Ö‚Õ´Õ¨ Õ¢Õ¸Õ¬Õ¸Ö€ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥Ö€Õ«Ö bbb.users.settings.roomIsLocked = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¾Õ¡Õ® Õ¨Õ½Õ¿ Õ¶Õ¡ÕÕ¶Õ¡Õ¯Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« bbb.users.settings.roomIsMuted = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ²Õ¶Õ¥Ö€Õ¨ Õ¡Õ¶Õ»Õ¡Õ¿Õ¡Õ® Õ¥Õ¶, Õ¨Õ½Õ¿ Õ¶Õ¡ÕÕ¶Õ¡Õ¯Õ¡Õ¶ Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€Õ« @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Ô¿Õ«Ö€Õ¡Õ¼Õ¥Õ¬ Õ¡Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ´Õ¡Õ¶ Õ¯Õ¡Ö€Õ£ bbb.lockSettings.cancel = Õ‰Õ¥Õ²Õ¡Ö€Õ¯Õ¥Õ¬ bbb.lockSettings.cancel.toolTip = Õ“Õ¡Õ¯Õ¥Õ¬ Õ¡ÕµÕ½ ÕºÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¨ Õ¡Õ¼Õ¡Õ¶Ö Õ°Õ«Õ·Õ¥Õ¬Õ¸Ö‚ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Ô±Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¾Õ¡Õ® Õ§ Õ´Õ¸Õ¤Õ¥Ö€Õ¡Õ¿Õ¸Ö€Õ« Õ¯Õ¸Õ²Õ´Õ«Ö bbb.lockSettings.privateChat = Ô±Õ¶Õ±Õ¶Õ¡Õ¯Õ¡Õ¶ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶ bbb.lockSettings.publicChat = Ô¸Õ¶Õ¤Õ°Õ¡Õ¶Õ¸Ö‚Ö€ Õ¦Ö€Õ¸Ö‚ÖÕ¡Ö€Õ¡Õ¶ bbb.lockSettings.webcam = ÕÕ¥Õ½Õ¡ÕÖÕ«Õ¯ +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Ô½Õ¸Õ½Õ¡ÖƒÕ¸Õ² bbb.lockSettings.layout = ÕŠÕ¡Õ¿Õ¸Ö‚Õ°Õ¡Õ¶Õ¶Õ¥Ö€Õ« Õ¤Õ¡Õ½Õ¡Õ¾Õ¸Ö€Õ¸Ö‚Õ©ÕµÕ¸Ö‚Õ¶ bbb.lockSettings.title=Ô±Õ´Ö€Õ¡Õ£Ö€Õ¥Õ¬ Õ´Õ¡Õ½Õ¶Õ¡Õ¯Õ«ÖÕ¶Õ¥Ö€Õ« Õ¯Õ¡Ö€Õ£Õ¡Õ¾Õ«Õ³Õ¡Õ¯Õ¨ @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Õ€Õ¡Õ¾Õ¥Õ¬ÕµÕ¡Õ¬ Õ¯Õ¡Ö€Õ£Õ¡Õ¢Õ¥Ö€Õ¸Ö‚Õ´Õ¶Õ¥Ö€ bbb.lockSettings.locked=Ô±Õ´Ö€Õ¡Õ£Ö€Õ¾Õ¡Õ® Õ§ bbb.lockSettings.lockOnJoin=Õ„Õ«Õ¡Õ¶Õ¡Õ¬Õ¸Ö‚Ö Õ¡Ö€Õ£Õ¥Õ¬Õ¡ÖƒÕ¡Õ¯Õ¥Õ¬ -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/id_ID/bbbResources.properties b/bigbluebutton-client/locale/id_ID/bbbResources.properties index 97c6ebeb0dbfb75c027a848e12662280593bc822..b802c5ba4a88035b63a2f221924c3126c95c495b 100644 --- a/bigbluebutton-client/locale/id_ID/bbbResources.properties +++ b/bigbluebutton-client/locale/id_ID/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Sedang menghubungi server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Maaf, tidak dapat terhubung ke server. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Buka Jendela Log @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = Token Otentikasi Tidak Valid bbb.mainshell.resetLayoutBtn.toolTip = Atur Ulang Tampilan bbb.mainshell.notification.tunnelling = Tunneling bbb.mainshell.notification.webrtc = Audio WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Penerjamah bahasa dari BigBlueButton anda mungkin sudah lawas bbb.oldlocalewindow.reminder2 = Harap bersihkan cache browser anda kemudian coba lagi. bbb.oldlocalewindow.windowTitle = Peringatan: Penerjemahan bahasa lawas @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Menghubungi bbb.micSettings.webrtc.transferring = Memindahkan bbb.micSettings.webrtc.endingecho = Bergabung audio bbb.micSettings.webrtc.endedecho = Pengujian echo diakhiri. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Hak Akses Mikrofon Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Hak Akses Mikrofon Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Peringatan Audio bbb.micWarning.joinBtn.label = Tetap bergabung bbb.micWarning.testAgain.label = Coba lagi @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = tes echo webrtc berakhir tanpa bbb.webrtcWarning.connection.dropped = Koneksi WebRTC gagal bbb.webrtcWarning.connection.reconnecting = Berusaha mengkoneksikan ulang bbb.webrtcWarning.connection.reestablished = Koneksi WebRTC dihubungkan ulang -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Bantuan bbb.mainToolbar.logoutBtn = Keluar bbb.mainToolbar.logoutBtn.toolTip = Keluar -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Pilih bahasa bbb.mainToolbar.settingsBtn = Pengaturan bbb.mainToolbar.settingsBtn.toolTip = Buka Pengaturan @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Mulai rekaman bbb.mainToolbar.recordBtn.toolTip.stop = Akhiri rekaman bbb.mainToolbar.recordBtn.toolTip.recording = Sesi ini sedang direkam bbb.mainToolbar.recordBtn.toolTip.notRecording = Sesi ini tidak direkam -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Konfirmasi rekaman bbb.mainToolbar.recordBtn.confirm.message.start = Apakah Anda yakin ingin mulai merekam sesi ini? bbb.mainToolbar.recordBtn.confirm.message.stop = Apakah Anda yakin ingin mengakhiri rekaman sesi ini? -bbb.mainToolbar.recordBtn..notification.title = Notifikasi Rekaman -bbb.mainToolbar.recordBtn..notification.message1 = Anda dapat merekam pertemuan ini. -bbb.mainToolbar.recordBtn..notification.message2 = Anda harus mengklik tombol Mulai/Akhiri Rekaman di batang judul untuk memulai/mengakhiri rekaman. +bbb.mainToolbar.recordBtn.notification.title = Notifikasi Rekaman +bbb.mainToolbar.recordBtn.notification.message1 = Anda dapat merekam pertemuan ini. +bbb.mainToolbar.recordBtn.notification.message2 = Anda harus mengklik tombol Mulai/Akhiri Rekaman di batang judul untuk memulai/mengakhiri rekaman. bbb.mainToolbar.recordingLabel.recording = (Merekam) bbb.mainToolbar.recordingLabel.notRecording = Tidak Merekam -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Konfigurasi Notifikasi bbb.clientstatus.notification = Notifikasi Belum Dibaca bbb.clientstatus.close = Tutup @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = Koneksi WebRTC audio anda normal. bbb.clientstatus.webrtc.almostWeakStatus = Koneksi audio WebRTC anda tidak sempurna. bbb.clientstatus.webrtc.weakStatus = Mungkin terjadi masalah dengan koneksi WebRTC anda. bbb.clientstatus.webrtc.message = Disarankan menggunakan Firefox atau Chrome agar kualitas suara lebih baik. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimalkan bbb.window.maximizeRestoreBtn.toolTip = Maksimalkan bbb.window.closeBtn.toolTip = Tutup @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Klik untuk menjadikan Presenter bbb.users.usersGrid.statusItemRenderer.presenter = Presenter bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Hapus status bbb.users.usersGrid.statusItemRenderer.viewer = Pemirsa bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Berbagi kamera. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Bunyikan {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Bungkam {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Kunci {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Tak terkunci {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Tendang {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Berbagi Kamera bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon off bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon on bbb.users.usersGrid.mediaItemRenderer.noAudio = Tidak berada di konferensi audio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Hapus -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentasi bbb.presentation.titleWithPres = Presentasi: {0} bbb.presentation.quickLink.label = Jendela Presentasi bbb.presentation.fitToWidth.toolTip = Atur Presentasi Berdasarkan Lebar Layar bbb.presentation.fitToPage.toolTip = Atur Presentasi Berdasarkan Ukuran Layar bbb.presentation.uploadPresBtn.toolTip = Unggah Presentasi -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Slide Sebelumnya bbb.presentation.btnSlideNum.accessibilityName = Slide {0} dari {1} bbb.presentation.btnSlideNum.toolTip = Pilih slide @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Pengunggahan selesai. Harap menunggu sambil ka bbb.presentation.uploaded = Telah terunggah bbb.presentation.document.supported = Dokumen yang diunggah didukung. Sedang memulai konversi... bbb.presentation.document.converted = Berhasil Mengkonversi Dokumen Office. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = Silakan konversikan dokumen ini menjadi PDF terlebih dahulu. bbb.presentation.error.io = IO Error: Silahkan Hubungi Administrator. bbb.presentation.error.security = Sekuritas bermasalah: Silahkan hubungi Administrator. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Unggah bbb.fileupload.uploadBtn.toolTip = Unggah berkas terpilih bbb.fileupload.deleteBtn.toolTip = Hapus Presentasi bbb.fileupload.showBtn = Tampilkan -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Tampilkan Presentasi -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Sedang membangun thumbnails bbb.fileupload.progBarLbl = Hasil: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Obrolan bbb.chat.quickLink.label = Jendela Obrolan bbb.chat.cmpColorPicker.toolTip = Warna Teks bbb.chat.input.accessibilityName = Kolom Penyuntingan Obrolan bbb.chat.sendBtn.toolTip = Kirim Pesan bbb.chat.sendBtn.accessibilityName = Kirim pesan obrolan -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Salin Semua Teks bbb.chat.publicChatUsername = Publik bbb.chat.optionsTabName = Opsi @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Mulai Berbagi bbb.publishVideo.startPublishBtn.toolTip = Mulai membagikan kamera Anda bbb.publishVideo.startPublishBtn.errorName = Tidak dapat membagikan kamera. Alasan: {0} bbb.webcamPermissions.chrome.title = Hak Akses Kamera Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Kamera bbb.videodock.quickLink.label = Jendela Kamera bbb.video.minimizeBtn.accessibilityName = Kecilkan Jendela Kamera @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Tutup kotak dialog pengaturan kamera bbb.video.publish.closeBtn.label = Batal bbb.video.publish.titleBar = Siarkan Jendela Kamera bbb.video.streamClose.toolTip = Menutup kiriman untuk: {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = Berbagi Layar: Preview Pemateri bbb.screensharePublish.pause.tooltip = Hentikan sejenak Berbagi Layar bbb.screensharePublish.pause.label = Hentikan sejenak @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Gagal mendeteksi ekst bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Anda terpantau menggunakan mode peramban privat/incognito. Pastikan pada setting ekstensi peramban anda mengizinkan penggunaan peramban privat/incognito. bbb.screensharePublish.WebRTCExtensionInstallButton.label = Klik disini untuk Menginstal bbb.screensharePublish.WebRTCUseJavaButton.label = Gunakan Berbagi Layar dengan Java -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Berbagi Layar bbb.screenshareView.fitToWindow = Sesuaikan dengan Ukuran Jendela bbb.screenshareView.actualSize = Tampilkan ukuran sebenarnya bbb.screenshareView.minimizeBtn.accessibilityName = Minimalkan Tampilan Jendela Berbagi Layar bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maksimalkan Tampilan Jendela Berbagi Layar bbb.screenshareView.closeBtn.accessibilityName = Menutup Tampilan Jendela Berbagi Layar -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Berhenti mendengarkan konferensi bbb.toolbar.phone.toolTip.unmute = Mulai mendengarkan konferensi bbb.toolbar.phone.toolTip.nomic = Tidak ada mikrofon yang terdeteksi bbb.toolbar.deskshare.toolTip.start = Buka Jendela yang dimunculkan pada berbagi layar bbb.toolbar.deskshare.toolTip.stop = Berhenti Membagikan Layar Anda -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Bagikan Kamera Anda bbb.toolbar.video.toolTip.stop = Berhenti Membagikan Kamera Anda +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Tambahkan tata letak kastem ke dalam daftar -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Ubah Tata Letak Anda bbb.layout.loadButton.toolTip = Muat tata letak dari berkas bbb.layout.saveButton.toolTip = Simpan tata letak ke berkas @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Terapkan tata letak bbb.layout.combo.custom = * Tata letak kastem bbb.layout.combo.customName = Tata letak kastem bbb.layout.combo.remote = Jarak Jauh -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Tata letak berhasil disimpan +bbb.layout.save.ioerror = bbb.layout.load.complete = Tata letak berhasil dimuat bbb.layout.load.failed = Tidak dapat memuat tata letak -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Tata letak default bbb.layout.name.closedcaption = Subtitle bbb.layout.name.videochat = Obrolan Video bbb.layout.name.webcamsfocus = Pertemuan Menggunakan Kamera bbb.layout.name.presentfocus = Pertemuan Presentasi -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asisten Pengajar bbb.layout.name.lecture = Pengajar -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Penyorot bbb.highlighter.toolbar.pencil.accessibilityName = Ganti kursor papan tulis ke pensil bbb.highlighter.toolbar.ellipse = Lingkaran @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Pilih warna bbb.highlighter.toolbar.color.accessibilityName = Warna gambar tanda papan tulis bbb.highlighter.toolbar.thickness = Ubah ketebalan bbb.highlighter.toolbar.thickness.accessibilityName = Ketebalan gambar papan tulis -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Keluar +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Server aplikasi telah dimatikan bbb.logout.asyncerror = Terjadi Masalah sinkronisasi @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Hubungan ke server telah berakhir. bbb.logout.rejected = Hubungan ke server ditolak bbb.logout.invalidapp = Aplikasi red5 belum terpasang bbb.logout.unknown = Klien anda telah kehilangan hubungan ke server. -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Anda telah keluar dari konferensi bbb.logour.breakoutRoomClose = Jendela peramban Anda akan ditutup -bbb.logout.ejectedFromMeeting = Moderator telah mengeluarkan Anda dari pertemuan. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Jika Anda Keluar tanpa disengaja, silakan tekan tombol dibawah untuk menghubungkan ulang bbb.logout.refresh.label = Menghubungkan ulang -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Konfirmasi Keluar bbb.logout.confirm.message = Apakah Anda yakin ingin keluar? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ya bbb.logout.confirm.no = Tidak -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Terdeteksi Masalah Konektivitas bbb.connection.reconnecting=Menghubungi kembali bbb.connection.reestablished=koneksi dihubungkan ulang @@ -530,59 +539,60 @@ bbb.notes.title = Catatan bbb.notes.cmpColorPicker.toolTip = Warna Teks bbb.notes.saveBtn = Simpan bbb.notes.saveBtn.toolTip = Simpan Catatan -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klik Ijinkan pada jendela pop up untuk memeriksa jika berbagi desktop berjalan sebagaimana mestinya. bbb.settings.deskshare.start = Periksa fitur Berbagi Desktop. bbb.settings.voice.volume = Aktifitas Mikrofon -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Kesalahan pada versi Flash bbb.settings.flash.text = Anda sudah memiliki Flash {0} yang terpasang, tapi anda membutuhkan paling tidak versi {1} untuk dapat menjalankan BigBlueButton dengan baik. Klik tombol di bawah untuk memasang versi Adobe Flash terbaru. bbb.settings.flash.command = Pasang Flash yang terbaru bbb.settings.isight.label = Terjadi kesalahan pada kamera iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Pasang Flash 10.2.RC2 bbb.settings.warning.label = Peringatan bbb.settings.warning.close = Tutup peringatan ini bbb.settings.noissues = Tidak ada masalah mencolok yang terdeteksi. bbb.settings.instructions = Terima konfirmasi Flash yang meminta izin atas kamera anda. Jika anda bisa melihat dan mendengar diri anda sendiri berarti peramban anda sudah diatur dengan benar. Masalah yang potensial lainnya ditampilkan di bawah. Klik untuk menemukan kemungkinan solusi dari masing-masing masalah. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Segitiga ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Ganti kursor papan tulis ke segitiga ltbcustom.bbb.highlighter.toolbar.line = Garis @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Anda telah berpindah ke pesan t bbb.accessibility.chat.chatBox.navigatedLatestRead = Anda telah berpindah ke pesan terbaru yang telah dibaca. bbb.accessibility.chat.chatwindow.input = Masukan obrolan bbb.accessibility.chat.chatwindow.audibleChatNotification = Notifikasi percakapan berbasis audio -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Gunakan tombol panah untuk bernavigasi dalam pesan obrolan. bbb.accessibility.notes.notesview.input = Masukan catatan @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Atur slide berdasarkan ukuran halaman bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Jadikan orang terpilih sebagai presenter bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Keluarkan orang terpilih dari pertemuan +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Bungkam atau bunyikan orang terpilih bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Siarkan bbb.polling.closeButton.label = Tutup bbb.polling.customPollOption.label = Polling terkustomisasi bbb.polling.pollModal.title = Hasil Jajak Pendapat +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Masukkan Pilihan Jajak Pendapat bbb.polling.respondersLabel.novotes = Menunggu respon bbb.polling.respondersLabel.text = {0} Pengguna Telah Merespon @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Terapkan aturan penguncian bbb.lockSettings.cancel = Batal bbb.lockSettings.cancel.toolTip = Tutup jendela ini tanpa menyimpan +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderator mengunci bbb.lockSettings.privateChat = Obrolan Pribadi bbb.lockSettings.publicChat = Obrolan Publik bbb.lockSettings.webcam = Kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Tata Letak bbb.lockSettings.title=Kunci Pemirsa @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Kunci Saat Bergabung bbb.users.breakout.breakoutRooms = Ruang Diskusi Kelompok bbb.users.breakout.updateBreakoutRooms = Perbaharui Ruang Diskusi Kelompok +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = Waktu tersisa untuk Ruang Diskusi Kelompok bbb.users.breakout.calculatingRemainingTime = Menghitung waktu tersisa... bbb.users.breakout.closing = Sedang Menutup +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Ruang bbb.users.breakout.roomsCombo.accessibilityName = Jumlah ruangan yang dibuat bbb.users.breakout.room = Ruang -bbb.users.breakout.randomAssign = Mendaftarkan pengguna secara acak bbb.users.breakout.timeLimit = Batas waktu bbb.users.breakout.durationStepper.accessibilityName = Batas waktu dalam menit bbb.users.breakout.minutes = Menit @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Undang bbb.users.breakout.close = Menutup bbb.users.breakout.closeAllRooms = Tutup Semua Ruang Diskusi Kelompok bbb.users.breakout.insufficientUsers = Jumlah pengguna tidak cukup. Anda harus menempatkan minimal satu orang pengguna pada Ruang Diskusi Kelompok. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Ruang bbb.users.roomsGrid.users = Pengguna bbb.users.roomsGrid.action = Aksi @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Mengirimkan audio bbb.users.roomsGrid.join = Bergabung bbb.users.roomsGrid.noUsers = TIdak ada Pengguna di ruangan ini -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/it_IT/bbbResources.properties b/bigbluebutton-client/locale/it_IT/bbbResources.properties index 254522fa05fe0d42b34c86f821732c573f051f43..6442584db7611973c4336da7098842edcb49c5c3 100644 --- a/bigbluebutton-client/locale/it_IT/bbbResources.properties +++ b/bigbluebutton-client/locale/it_IT/bbbResources.properties @@ -1,24 +1,24 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Connessione alla conferenza in corso... -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = Caricamento in corso bbb.mainshell.statusProgress.cannotConnectServer = Errore di connessione. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Apri finestra di Log bbb.mainshell.meetingNotFound = Conferenza non trovata -bbb.mainshell.invalidAuthToken = Codice di autenticazione non valido. +bbb.mainshell.invalidAuthToken = Codice di autenticazione non valido bbb.mainshell.resetLayoutBtn.toolTip = Reimposta Layout -bbb.mainshell.notification.tunnelling = Tunnelling +bbb.mainshell.notification.tunnelling = In connessione bbb.mainshell.notification.webrtc = Audio WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.fullscreenBtn.toolTip = Passare a schermo intero +bbb.mainshell.quote.sentence.1 = Non ci sono segreti per il successo. È il risultato della preparazione, del duro lavoro e dell'imparare dagli errori. bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Dimmi e dimentico. Insegnami e ricordo. Coinvolgimi e imparo. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = Ho imparato il valore del lavoro duro lavorando duramente. bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = Sviluppare una passione per la conoscenza. Se lo fai, non cederai mai a invecchiare. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = La ricerca sta creando nuove conoscenze. bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = Potresti avere una localizzazione obsoleta di BigBlueButton. bbb.oldlocalewindow.reminder2 = Svuota la cache del tuo browser e riprova. @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Connesso bbb.micSettings.webrtc.transferring = Transferimento bbb.micSettings.webrtc.endingecho = Partecipazione in audio bbb.micSettings.webrtc.endedecho = Test dell'eco terminato. +bbb.micPermissions.message.browserhttp = Questo server non è configurato con SSL. Di conseguenza, {0} disattiva la condivisione del tuo microfono. bbb.micPermissions.firefox.title = Configurazione del microfono in Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = Fare clic su Consenti per autorizzare Firefox ad utilizzare il microfono. bbb.micPermissions.chrome.title = Configurazione del microfono su Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = Fare clic su Consenti per autorizzare Chrome ad utilizzare il microfono. bbb.micWarning.title = Avviso per il microfono bbb.micWarning.joinBtn.label = Partecipa comunque bbb.micWarning.testAgain.label = Avvia di nuovo il test del microfono @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Il test audio WebRTC è termin bbb.webrtcWarning.connection.dropped = Collegamento WebRTC interrotto bbb.webrtcWarning.connection.reconnecting = Nuovo collegamento in corso bbb.webrtcWarning.connection.reestablished = Collegamento WebRTC ristabilito -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = Nessuna attività rilevata +bbb.inactivityWarning.message = Questa conferenza sembra inattiva. Spegni automaticamente ... +bbb.shuttingDown.message = Questa conferenza è stata chiusa perchè inattiva +bbb.inactivityWarning.cancel = Annulla bbb.mainToolbar.helpBtn = Aiuto generale bbb.mainToolbar.logoutBtn = Esci dalla conferenza bbb.mainToolbar.logoutBtn.toolTip = Clicca per uscire dalla conferenza. -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | Azzera il timeout di logout bbb.mainToolbar.langSelector = Seleziona la lingua bbb.mainToolbar.settingsBtn = Parametri di configurazione bbb.mainToolbar.settingsBtn.toolTip = Apri i parametri di configurazione @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Avvia la registrazione bbb.mainToolbar.recordBtn.toolTip.stop = Arresta la registrazione bbb.mainToolbar.recordBtn.toolTip.recording = La sessione viene registrata bbb.mainToolbar.recordBtn.toolTip.notRecording = La sessione non viene registrata -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Solo i moderatori possono avviare e bloccare le registrazioni +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = Questa registrazione non può essere interrotta +bbb.mainToolbar.recordBtn.toolTip.wontRecord = Questa sessione non può essere registrata bbb.mainToolbar.recordBtn.confirm.title = Conferma l'avvio della registrazione bbb.mainToolbar.recordBtn.confirm.message.start = Sei sicuro di voler avviare la registrazione della sessione? bbb.mainToolbar.recordBtn.confirm.message.stop = Sei sicuro di voler arrestare la registrazione della sessione? -bbb.mainToolbar.recordBtn..notification.title = Notifica di registrazione -bbb.mainToolbar.recordBtn..notification.message1 = Stai registrando questa conferenza -bbb.mainToolbar.recordBtn..notification.message2 = Premi il tasto Start/Stop nella barra principale per avviare o fermare la registrazione. +bbb.mainToolbar.recordBtn.notification.title = Notifica di registrazione +bbb.mainToolbar.recordBtn.notification.message1 = Stai registrando questa conferenza +bbb.mainToolbar.recordBtn.notification.message2 = Premi il tasto Start/Stop nella barra principale per avviare o fermare la registrazione. bbb.mainToolbar.recordingLabel.recording = (Registrazione in corso) bbb.mainToolbar.recordingLabel.notRecording = Registrazione non in esecuzione. -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = Per poter partecipare alla conferenza, devi attendere l'approvazione del moderatore. +bbb.waitWindow.waitMessage.title = In attesa +bbb.guests.title = Ospiti +bbb.guests.message.singular = {0} utente che desidera partecipare a questa conferenza +bbb.guests.message.plural = {0} utenti che desiderano partecipare a questa conferenza +bbb.guests.allowBtn.toolTip = Permetti +bbb.guests.allowEveryoneBtn.text = Permetti a tutti +bbb.guests.denyBtn.toolTip = Nega +bbb.guests.denyEveryoneBtn.text = Nega a tutti +bbb.guests.rememberAction.text = Ricorda la scelta +bbb.guests.alwaysAccept = Permetti sempre +bbb.guests.alwaysDeny = Nega sempre +bbb.guests.askModerator = Chiedere al moderatore +bbb.guests.Management = Gestione ospiti bbb.clientstatus.title = Configurazione notifiche bbb.clientstatus.notification = Notifiche non lette bbb.clientstatus.close = Chiudi @@ -151,9 +152,9 @@ bbb.clientstatus.webrtc.almostWeakStatus = Il tuo collegamento audio WebRTC è c bbb.clientstatus.webrtc.weakStatus = Forse c'è un problema con la tua connessione audio WebRTC. bbb.clientstatus.webrtc.message = Per migliori prestazioni audio, si consiglia l'uso di Firefox o Chrome come browser. bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.notdetected = Versione Java non rilevata. +bbb.clientstatus.java.notinstalled = Non hai installato Java, per favore clicca qui <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.oldversion = Hai installato una versione obsoleta di Java, per favore clicca qui <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. bbb.window.minimizeBtn.toolTip = Minimizza bbb.window.maximizeRestoreBtn.toolTip = Massimizza bbb.window.closeBtn.toolTip = Chiudi @@ -183,25 +184,25 @@ bbb.users.muteMeBtnTxt.muted = Muto bbb.users.usersGrid.contextmenu.exportusers = Copia nome partecipante bbb.users.usersGrid.accessibilityName = Lista dei partecipanti: utilizza i tasti freccia per navigare. bbb.users.usersGrid.nameItemRenderer = Nome -bbb.users.usersGrid.nameItemRenderer.youIdentifier = tu +bbb.users.usersGrid.nameItemRenderer.youIdentifier = Tu bbb.users.usersGrid.statusItemRenderer = Stato bbb.users.usersGrid.statusItemRenderer.changePresenter = Clicca per attivare un Conduttore bbb.users.usersGrid.statusItemRenderer.presenter = Conduttore bbb.users.usersGrid.statusItemRenderer.moderator = Moderatore -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Solo voce +bbb.users.usersGrid.statusItemRenderer.raiseHand = Mano alzata +bbb.users.usersGrid.statusItemRenderer.applause = Applauso +bbb.users.usersGrid.statusItemRenderer.thumbsUp = Pollice su +bbb.users.usersGrid.statusItemRenderer.thumbsDown = Pollice giù +bbb.users.usersGrid.statusItemRenderer.speakLouder = Parla più forte +bbb.users.usersGrid.statusItemRenderer.speakSofter = Parla più piano +bbb.users.usersGrid.statusItemRenderer.speakFaster = Parla più velocemente +bbb.users.usersGrid.statusItemRenderer.speakSlower = Parla più lentamente +bbb.users.usersGrid.statusItemRenderer.away = Distratto +bbb.users.usersGrid.statusItemRenderer.confused = Confuso +bbb.users.usersGrid.statusItemRenderer.neutral = Indifferente +bbb.users.usersGrid.statusItemRenderer.happy = Felice +bbb.users.usersGrid.statusItemRenderer.sad = Triste bbb.users.usersGrid.statusItemRenderer.clearStatus = Cancella stato bbb.users.usersGrid.statusItemRenderer.viewer = Partecipante bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Condividi la webcam. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Parla {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Muta {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Blocca{0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Sblocca {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Espelli {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = Rimuovi {0} bbb.users.usersGrid.mediaItemRenderer.webcam = Condividi videocamera bbb.users.usersGrid.mediaItemRenderer.micOff = Microfono off bbb.users.usersGrid.mediaItemRenderer.micOn = Microfono on bbb.users.usersGrid.mediaItemRenderer.noAudio = Conferenza senza segnale audio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promuovi {0} a moderatore +bbb.users.usersGrid.mediaItemRenderer.demoteUser = Rimuovi {0} da moderatore bbb.users.emojiStatus.clear = Cancella -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = Alzare la mano +bbb.users.emojiStatus.happy = Felice +bbb.users.emojiStatus.neutral = Indifferente +bbb.users.emojiStatus.sad = Triste +bbb.users.emojiStatus.confused = Confuso +bbb.users.emojiStatus.away = Distratto +bbb.users.emojiStatus.thumbsUp = Pollice su +bbb.users.emojiStatus.thumbsDown = Pollice giù +bbb.users.emojiStatus.applause = Applauso +bbb.users.emojiStatus.agree = sono d'accordo +bbb.users.emojiStatus.disagree = Non sono d'accordo +bbb.users.emojiStatus.none = Cancella +bbb.users.emojiStatus.speakLouder = Puoi parlare più forte? +bbb.users.emojiStatus.speakSofter = Puoi parlare più piano? +bbb.users.emojiStatus.speakFaster = Puoi parlare più velocemente? +bbb.users.emojiStatus.speakSlower = Puoi parlare più lentamente? +bbb.users.emojiStatus.beRightBack = Torno subito bbb.presentation.title = Presentazione bbb.presentation.titleWithPres = Presentazione: {0} bbb.presentation.quickLink.label = Finestra Presentazione bbb.presentation.fitToWidth.toolTip = Adatta la presentazione alla larghezza bbb.presentation.fitToPage.toolTip = Adatta la presentazione alla pagina bbb.presentation.uploadPresBtn.toolTip = Carica un documento -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = Scarica la presentazione +bbb.presentation.poll.response = Rispondi al sondaggio bbb.presentation.backBtn.toolTip = Diapositiva precedente bbb.presentation.btnSlideNum.accessibilityName = Diapositiva {0} di {1} bbb.presentation.btnSlideNum.toolTip = Seleziona una diapositiva @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Caricamento completato. Attendere la conversio bbb.presentation.uploaded = Caricato. bbb.presentation.document.supported = Il documento caricato è compatibile. bbb.presentation.document.converted = Documento è stato convertito con successo. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Prova a convertire il documento in formato PDF e a ricaricarlo di nuovo. bbb.presentation.error.document.convert.invalid = Il documento deve essere prima convertito in PDF. bbb.presentation.error.io = Errore I/O: contattare l'amministratore del sistema. bbb.presentation.error.security = Errore di sicurezza : contattare l'amministratore del sistema. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Carica bbb.fileupload.uploadBtn.toolTip = Avvia il caricamento del file selezionato bbb.fileupload.deleteBtn.toolTip = Elimina presentazione bbb.fileupload.showBtn = Mostra -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Prova un altro file bbb.fileupload.showBtn.toolTip = Mostra presentazione -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Chiudi +bbb.fileupload.close.accessibilityName = Chiudi la finestra Caricamento file bbb.fileupload.genThumbText = Generazione anteprime... bbb.fileupload.progBarLbl = Completamento... -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = È possibile caricare qualsiasi documento di Office o Portable Document Format (PDF). Per un miglior risultato si consiglia di caricare un PDF. +bbb.fileupload.letUserDownload = Abilita lo scaricamento della presentazione +bbb.fileupload.letUserDownload.tooltip = Controlla qui se vuoi che gli altri utenti scaricano la tua presentazione +bbb.filedownload.title = Scaricamento della presentazione +bbb.filedownload.close.tooltip = Chiudi +bbb.filedownload.close.accessibilityName = Chiudi la finestra di Scaricamento del file +bbb.filedownload.fileLbl = Interrompi lo scaricamento del file: +bbb.filedownload.downloadBtn = Scaricamento +bbb.filedownload.downloadBtn.toolTip = Scaricamento presentazione +bbb.filedownload.thisFileIsDownloadable = Il file è scaricabile bbb.chat.title = Chat bbb.chat.quickLink.label = Finestra chat bbb.chat.cmpColorPicker.toolTip = Colore del testo bbb.chat.input.accessibilityName = Area di creazione del messaggio bbb.chat.sendBtn.toolTip = Invia messaggio bbb.chat.sendBtn.accessibilityName = Invia messaggio nella chat -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = Salva la chat +bbb.chat.saveBtn.accessibilityName = Salva la chat in un file di testo +bbb.chat.saveBtn.label = Salva +bbb.chat.save.complete = La chat è stata salvata +bbb.chat.save.ioerror = La chat non è stata salvata. Riprova ancora. +bbb.chat.save.filename = Chat pubblica +bbb.chat.copyBtn.toolTip = Copia la chat +bbb.chat.copyBtn.accessibilityName = Copia chat nella clipboard +bbb.chat.copyBtn.label = Copia +bbb.chat.copy.complete = La chat è stata copiata nella clipboard +bbb.chat.clearBtn.toolTip = Cancella la chat pubblica +bbb.chat.clearBtn.accessibilityName = Cancella la storia della chat pubblica +bbb.chat.clearBtn.chatMessage = la storia della chat pubblica è stata cancellata dal moderatore +bbb.chat.clearBtn.alert.title = Attenzione +bbb.chat.clearBtn.alert.text = Stai eliminando la cronologia della chat pubblica e questa azione non può essere annullata. Vuoi procedere? bbb.chat.contextmenu.copyalltext = Copia tutto il testo bbb.chat.publicChatUsername = Tutti bbb.chat.optionsTabName = Opzioni @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Partecipa con la videocamera bbb.publishVideo.startPublishBtn.toolTip = Avvia la visualizzazione della videocamera nella conferenza bbb.publishVideo.startPublishBtn.errorName = Non è possibile condividere la webcam. Errore: {0} bbb.webcamPermissions.chrome.title = Autorizza Chrome ad utilizzare la webcam -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = Fai clic su Consenti per autorizzare Chrome ad utilizzare la tua webcam. bbb.videodock.title = Videocamere condivise bbb.videodock.quickLink.label = Videocamere condivise bbb.video.minimizeBtn.accessibilityName = Minimizza la finestra videocamera @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Chiudi la finestra di configurazione del bbb.video.publish.closeBtn.label = Annulla bbb.video.publish.titleBar = Condividi la finestra della videocamera bbb.video.streamClose.toolTip = Ferma il flusso video a : {0} +bbb.video.message.browserhttp = Questo server non è configurato in modalità SSL. Di conseguenza, {0} disattiva la condivisione della tua webcam. bbb.screensharePublish.title = Condivisione dello schermo: Anteprima del Conduttore bbb.screensharePublish.pause.tooltip = Metti in pausa la condivisione dello schermo bbb.screensharePublish.pause.label = Metti in pausa @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Non è stata rilevata bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Se stai utilizzando la navigazione in incognito (privata), assicurati che le impostazioni dell'estensione di condivisione dello schermo ti consentono di farlo. bbb.screensharePublish.WebRTCExtensionInstallButton.label = Clicca qui per istallare bbb.screensharePublish.WebRTCUseJavaButton.label = Usa la condivisione dello schermo Java -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = Caricamento video in corso... Si prega di attendere +bbb.screensharePublish.sharingMessage= Questo è il tuo schermo condiviso bbb.screenshareView.title = Condivisione dello schermo bbb.screenshareView.fitToWindow = Adatta alla finestra bbb.screenshareView.actualSize = Visualizza alla grandezza attuale bbb.screenshareView.minimizeBtn.accessibilityName = Minimizza la finestra di visualizzazione dello schermo bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Massimizza la finestra di visualizzazione dello schermo bbb.screenshareView.closeBtn.accessibilityName = Chiudi la finestra di visualizzazione dello schermo -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = Abilita Audio (microfono o solo ascolto) +bbb.toolbar.phone.toolTip.stop = Disabilita Audio bbb.toolbar.phone.toolTip.mute = Smetti di ascoltare la conferenza bbb.toolbar.phone.toolTip.unmute = Inizia ad ascoltare la conferenza bbb.toolbar.phone.toolTip.nomic = Nessun microfono individuato. bbb.toolbar.deskshare.toolTip.start = Finestra di pubblicazione della condivisione dello schermo bbb.toolbar.deskshare.toolTip.stop = Ferma la condivisione dello schermo -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = Apri le note condivise bbb.toolbar.video.toolTip.start = Attiva la condivisione della tua Webcam bbb.toolbar.video.toolTip.stop = Ferma la condivisione della tua Webcam +bbb.layout.addButton.label = Aggiungi bbb.layout.addButton.toolTip = Aggiungi il layout personalizzato alla lista -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = Sovrascrivi il layout +bbb.layout.overwriteLayoutName.text = Nome già in uso. Vuoi sovrascriverlo? +bbb.layout.broadcastButton.toolTip = Applica il layout corrente a tutti i partecipanti bbb.layout.combo.toolTip = Cambia il tuo Layaout bbb.layout.loadButton.toolTip = Apri il layout da un file bbb.layout.saveButton.toolTip = Salva il layout su un file @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Applica al layout bbb.layout.combo.custom = * layout modificato bbb.layout.combo.customName = Layout modificato bbb.layout.combo.remote = remoto -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layout correttamente salvato -bbb.layout.load.complete = Layout correttamente caricato +bbb.layout.window.name = nome del Layout +bbb.layout.window.close.tooltip = Chiudi +bbb.layout.window.close.accessibilityName = Chiudere la finestra Aggiungi layout +bbb.layout.save.complete = Il layout è stato correttamente salvato. +bbb.layout.save.ioerror = Il layout non è stato salvato. Riprova nuovamente. +bbb.layout.load.complete = Il layout è stato correttamente caricato bbb.layout.load.failed = Impossibile caricare il layout -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = Il tuo layout è stato inviato a tutti i partecipanti bbb.layout.name.defaultlayout = Layout base bbb.layout.name.closedcaption = Didascalie bbb.layout.name.videochat = Video Chat bbb.layout.name.webcamsfocus = Video Conferenza bbb.layout.name.presentfocus = Presentazione -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Presentazione + partecipanti bbb.layout.name.lectureassistant = Lezione assistita bbb.layout.name.lecture = Lezione -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = Note condivise +bbb.layout.addCurrentToFileWindow.title = Aggiungere il layout corrente al file +bbb.layout.addCurrentToFileWindow.text = Vuoi salvare il layout corrente nel file? +bbb.layout.denyAddToFile.toolTip = Negare l'aggiunta del layout corrente +bbb.layout.confirmAddToFile.toolTip = Confermare l'aggiunta del layout corrente bbb.highlighter.toolbar.pencil = Matita bbb.highlighter.toolbar.pencil.accessibilityName = Cambia il cursore in matita bbb.highlighter.toolbar.ellipse = Cerchio @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Seleziona colore bbb.highlighter.toolbar.color.accessibilityName = Colore utilizzato per il disegno bbb.highlighter.toolbar.thickness = Cambia spessore bbb.highlighter.toolbar.thickness.accessibilityName = Spessore della linea del disegno -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Uscita +bbb.highlighter.toolbar.multiuser = Disegno multiutente bbb.logout.button.label = OK bbb.logout.appshutdown = L'applicazione server è stata arrestata bbb.logout.asyncerror = Si è verificato un errore Async @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = La connessione al server è fallita bbb.logout.rejected = La connessione al server è stata respinta bbb.logout.invalidapp = L'applicazione red5 non esiste bbb.logout.unknown = Hai perso la connessione con il server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = Il moderatore non ti ha permesso di partecipare a questa conferenza bbb.logout.usercommand = Sei uscito dalla conferenza bbb.logour.breakoutRoomClose = La finestra del browser verrà chiusa -bbb.logout.ejectedFromMeeting = Un moderatore ti ha espulso dalla conferenza. -bbb.logout.refresh.message = Clicca su questo pulsante per riconnettersi alla conferenza. +bbb.logout.ejectedFromMeeting = Sei stato espulso dalla conferenza +bbb.logout.refresh.message = Clicca su questo pulsante per riconnettersi alla conferenza bbb.logout.refresh.label = Riconnetti -bbb.settings.title = Settings +bbb.logout.feedback.hint = Come possiamo rendere BigBlueButton migliore? +bbb.logout.feedback.label = Ci piacerebbe conoscere la tua esperienza con BigBlueButton (opzionale) +bbb.settings.title = Impostazioni bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.settings.cancel = Cancella +bbb.settings.btn.toolTip = Apri la finestra di configurazione bbb.logout.confirm.title = Conferma Uscita bbb.logout.confirm.message = Sei sicuro di voler uscire? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = Sì e chiudere la sessione bbb.logout.confirm.yes = Si bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = Attenzione +bbb.endSession.confirm.message = Se chiudi la sessione, tutti i partecipanti verranno disconnessi. Vuoi procedere? bbb.connection.failure=Rilevati problemi di connessione bbb.connection.reconnecting=Riconnessione bbb.connection.reestablished=Connessione ristabilita @@ -530,59 +539,60 @@ bbb.notes.title = Note bbb.notes.cmpColorPicker.toolTip = Colore del testo bbb.notes.saveBtn = Salva bbb.notes.saveBtn.toolTip = Salva Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = Note condivise +bbb.sharedNotes.quickLink.label = Finestra delle note condivise +bbb.sharedNotes.createNoteWindow.label = Nome delle note +bbb.sharedNotes.createNoteWindow.close.tooltip = Chiudi +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Chiudi Crea nuova finestra di note +bbb.sharedNotes.typing.single = {0} sta scrivendo... +bbb.sharedNotes.typing.double = {0} e {1} stanno digitando ... +bbb.sharedNotes.typing.multiple = Diverse persone stanno digitando ... +bbb.sharedNotes.save.toolTip = Salvare le note nel file +bbb.sharedNotes.save.complete = Le note sono state salvate correttamente +bbb.sharedNotes.save.ioerror = Le note non sono state salvate. Riprova di nuovo. +bbb.sharedNotes.save.htmlLabel = Testo formattato in formato(.html) +bbb.sharedNotes.save.txtLabel = Testo in formato normale (.txt) +bbb.sharedNotes.new.label = Crea +bbb.sharedNotes.new.toolTip = Crea note aggiuntive +bbb.sharedNotes.limit.label = Limite di grandezza note raggiunto +bbb.sharedNotes.clear.label = Cancella questa nota +bbb.sharedNotes.undo.toolTip = Annulla modifica +bbb.sharedNotes.redo.toolTip = Ripristina modifica +bbb.sharedNotes.toolbar.toolTip = Barra degli strumenti di formattazione del testo +bbb.sharedNotes.settings.toolTip = Impostazioni delle note condivise +bbb.sharedNotes.clearWarning.title = Cancella le note condivise +bbb.sharedNotes.clearWarning.message = Questa azione cancellerà le note di questa finestra per tutti e non c'è modo di annullare. Sei sicuro di voler cancellare queste note? +bbb.sharedNotes.additionalNotes.closeWarning.title = Chiusura delle note condivise +bbb.sharedNotes.additionalNotes.closeWarning.message = Questa azione distruggerà le note di questa finestra per tutti e non c'è modo di annullare. Sei sicuro di voler cancellare queste note? +bbb.sharedNotes.messageLengthWarning.title = E' stato superato il numero massimo dei caratteri +bbb.sharedNotes.messageLengthWarning.text = La modifica supera il limite di {0}. Prova a fare una modifica più piccola. +bbb.sharedNotes.remaining.tooltip = Spazio rimanente disponibile nelle note condivise +bbb.sharedNotes.full.tooltip = Capacità massima raggiunta (cerca di eliminare parte del testo) bbb.settings.deskshare.instructions = Clicca Permetti alla richiesta di controllo del corretto funzionamento della condivisione del desktop bbb.settings.deskshare.start = Effettua un test della condivisione del desktop bbb.settings.voice.volume = Attività del microfono -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = Versione Java errata +bbb.settings.java.text = Hai installato Java {0}, ma hai bisogno almeno della versione {1} per utilizzare la funzione di condivisione desktop BigBlueButton. Il pulsante sotto installerà la nuova versione Java JRE. +bbb.settings.java.command = Installare la nuova versione Java bbb.settings.flash.label = Errore di versione Flash bbb.settings.flash.text = Hai Flash {0} installato nel tuo pc, ma ti serve almeno la versione {1} affinché BigBlueButton possa funzionare correttamente. Clicca sul pulsante sottostante per installare la versione più recente di Adobe Flash. bbb.settings.flash.command = Installa una versione più recente di Flash bbb.settings.isight.label = Errore della webcam iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = Se hai problemi con la tua webcam iSight, può dipendere dal sistema OS X 10.6.5 che stai utilizzando, che è noto per avere un problema con la cattura di video Flash dalla webcam iSight. \ n Per correggere questo problema, il collegamento seguente installerà una versione più recente del lettore Flash o aggiorna il Mac nella versione più recente bbb.settings.isight.command = Installa Flash 10.2 RC2 bbb.settings.warning.label = Attenzione bbb.settings.warning.close = Chiudi questo avviso bbb.settings.noissues = Non è stato individuato alcun ulteriore problema bbb.settings.instructions = Accetta la richiesta quando Flash ti chiede il permesso di usare la webcam. Se puoi vederti e puoi sentirti, il tuo browser è configurato correttamente. Altri problemi potenziali sono elencati qui sotto. Clicca per trovare una possibile soluzione. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = Monitor di rete +bbb.bwmonitor.upload = Caricare +bbb.bwmonitor.upload.short = Sopra +bbb.bwmonitor.download = Scaricare +bbb.bwmonitor.download.short = Sotto +bbb.bwmonitor.total = Totale +bbb.bwmonitor.current = Corrente +bbb.bwmonitor.available = Disponibile +bbb.bwmonitor.latency = Latenza ltbcustom.bbb.highlighter.toolbar.triangle = Triangolo ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Cambia il cursore in Triangolo ltbcustom.bbb.highlighter.toolbar.line = Linea @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Sei arrivato all'ultimo messagg bbb.accessibility.chat.chatBox.navigatedLatestRead = Sei arrivato al messaggio più recente che hai letto. bbb.accessibility.chat.chatwindow.input = Immetti il testo bbb.accessibility.chat.chatwindow.audibleChatNotification = Notifica audio della chat -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = Opzioni della chat pubblica bbb.accessibility.chat.initialDescription = Si prega di utilizzare i tasti freccia per spostarsi tra i messaggi della chat. bbb.accessibility.notes.notesview.input = Immetti le note @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Adatta le diapositive alla pagina bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Rendi conduttore il partecipante selezionato bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Espelli dalla conferenza il partecipante selezionato +bbb.shortcutkey.users.kick.function = Espelli i partecipanti selezionati bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Muta/parla il partecipante selezionato bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Pubblica la valutazione bbb.polling.closeButton.label = Chiudi la valutazione bbb.polling.customPollOption.label = Impostazioni personalizzate della valutazione bbb.polling.pollModal.title = Risultati della valutazione in tempo reale +bbb.polling.pollModal.hint = Lasciare questa finestra aperta per consentire ai partecipanti di rispondere al sondaggio. La selezione del pulsante Pubblica o Chiudi chiude il sondaggio. bbb.polling.customChoices.title = Inserisci le valutazioni bbb.polling.respondersLabel.novotes = In attesa delle risposte bbb.polling.respondersLabel.text = {0} Risposte degli utenti @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Applica il blocco delle impostazioni. bbb.lockSettings.cancel = Cancella bbb.lockSettings.cancel.toolTip = Chiudi la finestra senza salvare +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderatore bloccato bbb.lockSettings.privateChat = Chat privata bbb.lockSettings.publicChat = Chat pubblica bbb.lockSettings.webcam = Videocamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microfono bbb.lockSettings.layout = Layout bbb.lockSettings.title=Blocca le impostazioni dei partecipanti @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Blocco collegamento bbb.users.breakout.breakoutRooms = Interrompere le sessioni bbb.users.breakout.updateBreakoutRooms = Aggiornamento delle sessioni in corso +bbb.users.breakout.timerForRoom.toolTip = Tempo rimasto per questa sessione di breakout bbb.users.breakout.timer.toolTip = Tempo rimanente della sessione ... bbb.users.breakout.calculatingRemainingTime = Calcolo tempo rimanente... bbb.users.breakout.closing = In chiusura +bbb.users.breakout.closewarning.text = Le sessioni di Breakout rooms si chiuderanno tra poco. bbb.users.breakout.rooms = Sessioni bbb.users.breakout.roomsCombo.accessibilityName = Numero di sessioni da creare bbb.users.breakout.room = Sessione -bbb.users.breakout.randomAssign = Assegna gli utenti in maniera casuale bbb.users.breakout.timeLimit = Limite di tempo bbb.users.breakout.durationStepper.accessibilityName = Tempo limite in minuti bbb.users.breakout.minutes = Minuti @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Invito bbb.users.breakout.close = Fine bbb.users.breakout.closeAllRooms = Chiudi tutte le sessioni bbb.users.breakout.insufficientUsers = Utenti insufficienti. Si dovrebbe mettere almeno un utente per ogni sessione. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = Partecipa a una stanza di Breakout +bbb.users.breakout.invited = Sei stato invitato a partecipare a <b> Breakout Room </ b> +bbb.users.breakout.accept = Accettando, lascerai automaticamente l'audio e le video conferenze. +bbb.users.breakout.joinSession = Iscriviti alla sessione +bbb.users.breakout.joinSession.accessibilityName = Iscriviti alla sessione di Breakout Room +bbb.users.breakout.joinSession.close.tooltip = Chiudi +bbb.users.breakout.joinSession.close.accessibilityName = Chiudi nella finestra di entrata Breakout Room +bbb.users.breakout.youareinroom = Sei in Breakout Room {0} bbb.users.roomsGrid.room = Sessione bbb.users.roomsGrid.users = Utenti bbb.users.roomsGrid.action = Azione @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Collegamento Audio bbb.users.roomsGrid.join = Collega bbb.users.roomsGrid.noUsers = Non ci sono utenti in questa sessione -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=Lingua predefinita + +bbb.alert.cancel = Annulla +bbb.alert.ok = OK +bbb.alert.no = No +bbb.alert.yes = Si diff --git a/bigbluebutton-client/locale/ja/bbbResources.properties b/bigbluebutton-client/locale/ja/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ja/bbbResources.properties +++ b/bigbluebutton-client/locale/ja/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ja_JP/bbbResources.properties b/bigbluebutton-client/locale/ja_JP/bbbResources.properties index 8f2817384428dea31ad273716d202d3479ffe0ba..f20361cc0f5b403cbf2c093e73e7004eff2194e3 100644 --- a/bigbluebutton-client/locale/ja_JP/bbbResources.properties +++ b/bigbluebutton-client/locale/ja_JP/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = サーãƒã¸ã®æŽ¥ç¶š -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = サーãƒãƒ¼ã«æŽ¥ç¶šã§ãã¾ã›ã‚“。 bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = ãƒã‚°ã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‹ã @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = 無効ãªèªè¨¼ãƒˆãƒ¼ã‚¯ãƒ³ bbb.mainshell.resetLayoutBtn.toolTip = レイアウトをリセット bbb.mainshell.notification.tunnelling = トンãƒãƒªãƒ³ã‚° bbb.mainshell.notification.webrtc = WebRTC 音声 -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = BigBlueButton ã®å¤ã„翻訳ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。 bbb.oldlocalewindow.reminder2 = ブラウザーã®ã‚ャッシュをクリアã—ã¦ã€ã‚‚ã†ä¸€åº¦ã‚„ã‚Šç›´ã—ã¦ãã ã•ã„。 bbb.oldlocalewindow.windowTitle = è¦å‘Šï¼šå¤ã„翻訳 @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = æŽ¥ç¶šä¸ bbb.micSettings.webrtc.transferring = 転é€ä¸ bbb.micSettings.webrtc.endingecho = 音声ã§å‚åŠ ä¸ bbb.micSettings.webrtc.endedecho = エコーテスト終了。 +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox マイクãƒãƒ•ã‚©ãƒ³è¨±å¯ -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Corome マイクãƒãƒ•ã‚©ãƒ³è¨±å¯ -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = 音声è¦å‘Š bbb.micWarning.joinBtn.label = ã¾ãšå‚åŠ ã™ã‚‹ bbb.micWarning.testAgain.label = ã‚‚ã†ä¸€åº¦ãƒ†ã‚¹ãƒˆã‚’ @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC エコーテスト ㌠bbb.webrtcWarning.connection.dropped = WebRTCã¯æœªæŽ¥ç¶š bbb.webrtcWarning.connection.reconnecting = å†æŽ¥ç¶šä¸ bbb.webrtcWarning.connection.reestablished = WebRTCã§å†æŽ¥ç¶šä¸ -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = ヘルプ bbb.mainToolbar.logoutBtn = ãƒã‚°ã‚¢ã‚¦ãƒˆ bbb.mainToolbar.logoutBtn.toolTip = ãƒã‚°ã‚¢ã‚¦ãƒˆ -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = 言語をé¸æŠž bbb.mainToolbar.settingsBtn = è¨å®š bbb.mainToolbar.settingsBtn.toolTip = è¨å®šã‚’é–‹ã @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = åŽéŒ²ã‚’開始 bbb.mainToolbar.recordBtn.toolTip.stop = åŽéŒ²ã‚’終了 bbb.mainToolbar.recordBtn.toolTip.recording = セッションを記録ã—ã¦ã„ã¾ã™ bbb.mainToolbar.recordBtn.toolTip.notRecording = セッションを記録ã—ã¦ã„ã¾ã›ã‚“ -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = åŽéŒ²ã—ã¾ã™ã‹ bbb.mainToolbar.recordBtn.confirm.message.start = ã“ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®åŽéŒ²ã‚’開始ã—ã¾ã™ã‹ï¼Ÿ bbb.mainToolbar.recordBtn.confirm.message.stop = ã“ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ã®åŽéŒ²ã‚’æ¢ã‚ã¦è‰¯ã„ã§ã™ã‹ï¼Ÿ -bbb.mainToolbar.recordBtn..notification.title = レコード通知 -bbb.mainToolbar.recordBtn..notification.message1 = ã“ã®ä¼šè°ã‚’記録ã§ãã¾ã™ -bbb.mainToolbar.recordBtn..notification.message2 = タイトルãƒãƒ¼ã®é–‹å§‹/åœæ¢ãƒœã‚¿ãƒ³ã§åŽéŒ²ã‚’開始/åœæ¢ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ +bbb.mainToolbar.recordBtn.notification.title = レコード通知 +bbb.mainToolbar.recordBtn.notification.message1 = ã“ã®ä¼šè°ã‚’記録ã§ãã¾ã™ +bbb.mainToolbar.recordBtn.notification.message2 = タイトルãƒãƒ¼ã®é–‹å§‹/åœæ¢ãƒœã‚¿ãƒ³ã§åŽéŒ²ã‚’開始/åœæ¢ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ bbb.mainToolbar.recordingLabel.recording = (åŽéŒ²ä¸) bbb.mainToolbar.recordingLabel.notRecording = åŽéŒ²ã•ã‚Œã¦ã„ã¾ã›ã‚“ -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = 通知è¨å®š bbb.clientstatus.notification = 未èªã®é€šçŸ¥ bbb.clientstatus.close = é–‰ã˜ã‚‹ @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = WebRTC 音声接続ã¯è‰¯ã„状態 bbb.clientstatus.webrtc.almostWeakStatus = WebRTC 音声接続ã¯æ‚ªã„状態ã§ã™ bbb.clientstatus.webrtc.weakStatus = WebRTC 音声接続ã«å•é¡ŒãŒã‚ã‚‹å¯èƒ½æ€§ãŒã‚ã‚Šã¾ã™ bbb.clientstatus.webrtc.message = 音質改善ã«ã¯ Firefox ã‹ Chrome ãŒãŠè–¦ã‚ã§ã™ -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = 最å°åŒ– bbb.window.maximizeRestoreBtn.toolTip = 最大化 bbb.window.closeBtn.toolTip = é–‰ã˜ã‚‹ @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = ステータス bbb.users.usersGrid.statusItemRenderer.changePresenter = プレゼンターã«ãªã‚‹ bbb.users.usersGrid.statusItemRenderer.presenter = プレゼンター bbb.users.usersGrid.statusItemRenderer.moderator = モデレーター -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = ステータスをクリア bbb.users.usersGrid.statusItemRenderer.viewer = ビューアー bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = ウェブカムを共有 @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = {0} ã®ãƒŸãƒ¥ãƒ¼ãƒˆã‚’解除 bbb.users.usersGrid.mediaItemRenderer.pushToMute = {0} をミュート bbb.users.usersGrid.mediaItemRenderer.pushToLock = {0} ã‚’ãƒãƒƒã‚¯ bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = {0} ã®ãƒãƒƒã‚¯ã‚’解除 -bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} ã‚’é€€å ´ã•ã›ã‚‹ +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = 共有ウェブカメラ bbb.users.usersGrid.mediaItemRenderer.micOff = マイクオフ bbb.users.usersGrid.mediaItemRenderer.micOn = マイクオン bbb.users.usersGrid.mediaItemRenderer.noAudio = 音声会è°ãªã— -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = 消去 -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = プレゼンテーション bbb.presentation.titleWithPres = プレゼンテーション: {0} bbb.presentation.quickLink.label = プレゼンテーションウインドウ bbb.presentation.fitToWidth.toolTip = プレゼンテーションを横幅ã«åˆã‚ã›ã‚‹ bbb.presentation.fitToPage.toolTip = プレゼンテーションをページã«åˆã‚ã›ã‚‹ bbb.presentation.uploadPresBtn.toolTip = プレゼンテーションをアップãƒãƒ¼ãƒ‰ -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = å‰ã®ã‚¹ãƒ©ã‚¤ãƒ‰ bbb.presentation.btnSlideNum.accessibilityName = スライド {0} 番ã€å…¨ä½“ {1} bbb.presentation.btnSlideNum.toolTip = スライドをé¸æŠž @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = アップãƒãƒ¼ãƒ‰å®Œäº†ã€‚文書を変æ›ã™ bbb.presentation.uploaded = アップãƒãƒ¼ãƒ‰ã—ã¾ã—ãŸã€‚ bbb.presentation.document.supported = アップãƒãƒ¼ãƒ‰ã—ãŸæ–‡æ›¸ã¯ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã¾ã™ã€‚変æ›ã®é–‹å§‹... bbb.presentation.document.converted = オフィス文書ã®å¤‰æ›ã«æˆåŠŸã—ã¾ã—ãŸã€‚ -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = å…ˆã«ã“ã®æ–‡æ›¸ã‚’PDFã«å¤‰æ›ã—ã¦ãã ã•ã„。 bbb.presentation.error.io = IO エラー:管ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•ã„。 bbb.presentation.error.security = ã‚»ã‚ュリティエラー:管ç†è€…ã«é€£çµ¡ã—ã¦ãã ã•ã„。 @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = アップãƒãƒ¼ãƒ‰ bbb.fileupload.uploadBtn.toolTip = é¸æŠžã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ã‚’アップãƒãƒ¼ãƒ‰ bbb.fileupload.deleteBtn.toolTip = プレゼンテーションを削除 bbb.fileupload.showBtn = 表示 -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = プレゼンテーションを表示 -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = サムãƒã‚¤ãƒ«ã‚’生æˆä¸â€¦ bbb.fileupload.progBarLbl = 進æ—状æ³ï¼š -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = ãƒãƒ£ãƒƒãƒˆ bbb.chat.quickLink.label = ãƒãƒ£ãƒƒãƒˆã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ bbb.chat.cmpColorPicker.toolTip = テã‚スト色 bbb.chat.input.accessibilityName = ãƒãƒ£ãƒƒãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ç·¨é›†æž bbb.chat.sendBtn.toolTip = メッセージをé€ã‚‹ bbb.chat.sendBtn.accessibilityName = ãƒãƒ£ãƒƒãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = 全文コピー bbb.chat.publicChatUsername = 公開 bbb.chat.optionsTabName = オプション @@ -337,7 +340,7 @@ bbb.chat.maximizeRestoreBtn.accessibilityName = ãƒãƒ£ãƒƒãƒˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’ bbb.chat.closeBtn.accessibilityName = ãƒãƒ£ãƒƒãƒˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã‚’é–‰ã˜ã‚‹ bbb.chat.chatTabs.accessibleNotice = ã“ã®ã‚¿ãƒ–ã«æ–°ç€ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã§ã™ bbb.chat.chatMessage.systemMessage = システム-bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = メッセージ㯠{0} æ–‡å—é•·ã™ãŽã¾ã™ bbb.publishVideo.changeCameraBtn.labelText = ウェブカメラを変更 bbb.publishVideo.changeCameraBtn.toolTip = ウェブカメラ変更ã®ãƒ€ã‚¤ã‚¢ãƒã‚°ãƒœãƒƒã‚¯ã‚¹ã‚’é–‹ã @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = 共有を開始 bbb.publishVideo.startPublishBtn.toolTip = ウェブカメラ共有を開始 bbb.publishVideo.startPublishBtn.errorName = ウェブカムを共有ã§ãã¾ã›ã‚“。ç†ç”±ï¼š {0} bbb.webcamPermissions.chrome.title = Chrome ã‚¦ã‚§ãƒ–ã‚«ãƒ è¨±å¯ -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = ウェブカメラ bbb.videodock.quickLink.label = ウェブカメラウインドウ bbb.video.minimizeBtn.accessibilityName = ウェブカメラウィンドウを最å°åŒ– @@ -367,60 +370,61 @@ bbb.video.publish.closeBtn.accessName = ウェブカメラè¨å®šãƒ€ã‚¤ã‚¢ãƒã‚° bbb.video.publish.closeBtn.label = ã‚ャンセル bbb.video.publish.titleBar = ウェブカメラウィンドウを公開 bbb.video.streamClose.toolTip = é…ä¿¡åœæ¢: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = ã“ã®ã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ã¯æœ€å¤§åŒ–ã§ãã¾ã›ã‚“。 -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = 最å°åŒ– -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = bbb.screensharePublish.tunnelingErrorMessage.one = ç”»é¢å…±æœ‰ã‚’実行ã§ãã¾ã›ã‚“。 -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = bbb.screensharePublish.startButton.label = 開始 -bbb.screensharePublish.stopButton.label = Stop +bbb.screensharePublish.stopButton.label = bbb.screensharePublish.stopButton.toolTip = ç”»é¢å…±æœ‰ã®åœæ¢ bbb.screensharePublish.WebRTCChromeExtensionMissing.label = 最新㮠Chrome をインストールã—ã¦ã„ã¾ã™ãŒã€ç”»é¢å…±æœ‰ã®æ‹¡å¼µæ©Ÿèƒ½ã‚’インストールã—ã¦ã„ã¾ã›ã‚“。 bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = ç”»é¢å…±æœ‰ã‚’インストールã—「å†è©¦è¡Œã€ã‚’クリックã—ã¦ãã ã•ã„。 @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = ç”»é¢å…±æœ‰ã®æ‹¡å¼µ bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = 匿åã¾ãŸã¯ãƒ—ライベートブラウジングを使用ã—ã¦ã„るよã†ã§ã™ã€‚è¨å®šã§ã€åŒ¿åï¼ãƒ—ライベートブラウジングã§ã®æ‹¡å¼µæ©Ÿèƒ½ã®å®Ÿè¡Œã‚’許å¯ã—ã¦ãã ã•ã„。 bbb.screensharePublish.WebRTCExtensionInstallButton.label = クリックã—ã¦ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ« bbb.screensharePublish.WebRTCUseJavaButton.label = Java ç”»é¢å…±æœ‰ã‚’使ㆠ-bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = カンファレンスを無音ã«ã—ã¾ã™ bbb.toolbar.phone.toolTip.unmute = カンファレンスを公è´ã—ã¾ã™ bbb.toolbar.phone.toolTip.nomic = マイクãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“ bbb.toolbar.deskshare.toolTip.start = デスクトップ共有ウィンドウを開ã bbb.toolbar.deskshare.toolTip.stop = デスクトップ共有をåœæ¢ -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = ウェブカメラを共有 bbb.toolbar.video.toolTip.stop = ウェブカメラ共有をåœæ¢ +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = リストã«ã‚«ã‚¹ã‚¿ãƒ ãƒ¬ã‚¤ã‚¢ã‚¦ãƒˆã‚’è¿½åŠ -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = レイアウトを変更 bbb.layout.loadButton.toolTip = レイアウトをファイルã‹ã‚‰èªã¿è¾¼ã‚€ bbb.layout.saveButton.toolTip = レイアウトをファイルã«ä¿å˜ @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = レイアウトをé©ç”¨ bbb.layout.combo.custom = * カスタムレイアウト bbb.layout.combo.customName = カスタムレイアウト bbb.layout.combo.remote = リモート -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = レイアウトをæ£å¸¸ã«ä¿å˜ã—ã¾ã—㟠+bbb.layout.save.ioerror = bbb.layout.load.complete = レイアウトをæ£å¸¸ã«èªã¿è¾¼ã¿ã¾ã—㟠bbb.layout.load.failed = レイアウトをèªã¿è¾¼ã‚ã¾ã›ã‚“ -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = デフォルトレイアウト bbb.layout.name.closedcaption = クãƒãƒ¼ã‚ºãƒ‰ã‚ャプション bbb.layout.name.videochat = ビデオãƒãƒ£ãƒƒãƒˆ bbb.layout.name.webcamsfocus = ウェブカムミーティング bbb.layout.name.presentfocus = プレゼンテーションミーティング -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = レクãƒãƒ£ãƒ¼ã‚¢ã‚·ã‚¹ã‚¿ãƒ³ãƒˆ bbb.layout.name.lecture = レクãƒãƒ£ãƒ¼ -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = é‰›ç† bbb.highlighter.toolbar.pencil.accessibilityName = ホワイトボードカーソルを鉛ç†ã«åˆ‡ã‚Šæ›¿ãˆã‚‹ bbb.highlighter.toolbar.ellipse = 円 @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = 色をé¸æŠž bbb.highlighter.toolbar.color.accessibilityName = ホワイトボードマーカー色 bbb.highlighter.toolbar.thickness = 太ã•ã‚’変更 bbb.highlighter.toolbar.thickness.accessibilityName = ホワイトボードマーカーã®å¤ªã• -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = 退出ã—ã¾ã—㟠+bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = サーãƒãƒ¼ã‚¢ãƒ—リãŒã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã•ã‚Œã¦ã„ã¾ã™ bbb.logout.asyncerror = éžåŒæœŸã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã—ã¾ã—㟠@@ -502,23 +509,25 @@ bbb.logout.connectionfailed = サーãƒãƒ¼ã¸ã®æŽ¥ç¶šãŒçµ‚了ã—ã¾ã—㟠bbb.logout.rejected = サーãƒãƒ¼ã¸ã®æŽ¥ç¶šãŒæ‹’å¦ã•ã‚Œã¾ã—㟠bbb.logout.invalidapp = red5 アプリãŒå˜åœ¨ã—ã¾ã›ã‚“ bbb.logout.unknown = クライアントãŒã‚µãƒ¼ãƒãƒ¼ã¨ã®æŽ¥ç¶šã‚’失ã„ã¾ã—㟠-bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = 会è°ã‹ã‚‰ãƒã‚°ã‚¢ã‚¦ãƒˆã—ã¾ã—㟠-bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = モデレーターãŒã‚ãªãŸã‚’退出ã•ã›ã¾ã—㟠+bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = ã“ã®ãƒã‚°ã‚¢ã‚¦ãƒˆã¯ä¸æ„ã‹ã‚‚ã—ã‚Œã¾ã›ã‚“。下ã®ãƒœã‚¿ãƒ³ã§å†æŽ¥ç¶šã—ã¦ãã ã•ã„ bbb.logout.refresh.label = å†ã‚³ãƒã‚¯ãƒˆ -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = ãƒã‚°ã‚¢ã‚¦ãƒˆç¢ºèª bbb.logout.confirm.message = 本当ã«ãƒã‚°ã‚¢ã‚¦ãƒˆã—ã¾ã™ã‹ï¼Ÿ -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = ã¯ã„ bbb.logout.confirm.no = ã„ã„㈠-bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=接続上ã®å•é¡Œã‚’発見ã—ã¾ã—ãŸã€‚ bbb.connection.reconnecting=å†æŽ¥ç¶šä¸ bbb.connection.reestablished=å†æŽ¥ç¶šã•ã‚Œã¾ã—ãŸã€‚ @@ -530,59 +539,60 @@ bbb.notes.title = メモ bbb.notes.cmpColorPicker.toolTip = テã‚スト色 bbb.notes.saveBtn = ä¿å˜ bbb.notes.saveBtn.toolTip = メモをä¿å˜ -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = デスクトップ共有ãŒæ£å¸¸ã«å‹•ä½œã—ã¦ã„ã‚‹ã“ã¨ã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ãƒãƒƒãƒ—アップã®ãƒ—ãƒãƒ³ãƒ—トã§ã€è¨±å¯ã‚’é¸æŠž bbb.settings.deskshare.start = デスクトップ共有をãƒã‚§ãƒƒã‚¯ bbb.settings.voice.volume = マイクã®ã‚¢ã‚¯ãƒ†ã‚£ãƒ“ティ -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã®ã‚¨ãƒ©ãƒ¼ bbb.settings.flash.text = Flash {0} ãŒã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã™ãŒã€ BigBlueButton ã‚’æ£å¸¸ã«å®Ÿè¡Œã™ã‚‹ã«ã¯ã€å°‘ãªãã¨ã‚‚ãƒãƒ¼ã‚¸ãƒ§ãƒ³ {1} ã‚’å¿…è¦ã¨ã—ã¾ã™ã€‚最新㮠Adobe Flash をインストールã™ã‚‹ã«ã¯ã€ä¸‹ã®ãƒœã‚¿ãƒ³ã‚’クリックã—ã¾ã™ã€‚ bbb.settings.flash.command = 最新㮠Flash をインストール bbb.settings.isight.label = iSight ウェブカメラã®ã‚¨ãƒ©ãƒ¼ -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Flash 10.2 RC2 をインストール bbb.settings.warning.label = è¦å‘Š bbb.settings.warning.close = ã“ã®è¦å‘Šã‚’é–‰ã˜ã‚‹ bbb.settings.noissues = 未解決ã®å•é¡Œã®æ¤œå‡ºã¯ã‚ã‚Šã¾ã›ã‚“。 bbb.settings.instructions = ウェブカメラã®è¨±å¯ã‚’è¦æ±‚ã™ã‚‹ Flash ã®ãƒ—ãƒãƒ³ãƒ—トを許å¯ã—ã¦ä¸‹ã•ã„。出力ãŒæœ›ã¿é€šã‚Šã§ã‚ã‚Œã°ã€ãƒ–ラウザーã¯æ£å¸¸ã«ã‚»ãƒƒãƒˆã‚¢ãƒƒãƒ—ã•ã‚Œã¦ã„ã¾ã™ã€‚ãã®ä»–ã®æ½œåœ¨çš„å•é¡Œã¯ä¸‹è¨˜ã®ã¨ãŠã‚Šã§ã™ã€‚調査をã—ã€å¯èƒ½ãªè§£æ±ºç–を見ã¤ã‘ã¦ä¸‹ã•ã„。 -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = 三角形 ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = ホワイトボードカーソルを三角形ã«åˆ‡ã‚Šæ›¿ãˆã‚‹ ltbcustom.bbb.highlighter.toolbar.line = ç·š @@ -592,29 +602,29 @@ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ホワイトボード ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = テã‚スト色 ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = フォントサイズ bbb.caption.window.title = クãƒãƒ¼ã‚ºãƒ‰ã‚ャプション -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = bbb.caption.option.language = 言語: bbb.caption.option.language.tooltip = ã‚ャプション言語をé¸æŠž -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = bbb.caption.option.fontsize = フォントサイズ: bbb.caption.option.fontsize.tooltip = フォントサイズ -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = bbb.caption.option.textcolor.tooltip = テã‚スト色 @@ -627,13 +637,13 @@ bbb.accessibility.chat.chatBox.navigatedLatest = 最新ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ç§» bbb.accessibility.chat.chatBox.navigatedLatestRead = æ—¢èªã®ã†ã¡ã§æœ€æ–°ã®ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã«ç§»å‹•ã—ã¾ã—ãŸã€‚ bbb.accessibility.chat.chatwindow.input = ãƒãƒ£ãƒƒãƒˆå…¥åŠ› bbb.accessibility.chat.chatwindow.audibleChatNotification = 音声ã«ã‚ˆã‚‹ãƒãƒ£ãƒƒãƒˆé€šçŸ¥ -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = ãƒãƒ£ãƒƒãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã¯ã‚«ãƒ¼ã‚½ãƒ«ã‚ーã§æ“作ã§ãã¾ã™ã€‚ bbb.accessibility.notes.notesview.input = メモ入力 bbb.shortcuthelp.title = ショートカットã‚ー -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = ショートカットã®ãƒ˜ãƒ«ãƒ—ウィンドウを最å°åŒ– bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = ショートカットã®ãƒ˜ãƒ«ãƒ—ウィンドウを最大化 bbb.shortcuthelp.closeBtn.accessibilityName = ショートカットã®ãƒ˜ãƒ«ãƒ—ウィンドウを閉ã˜ã‚‹ @@ -642,7 +652,7 @@ bbb.shortcuthelp.dropdown.general = ã‚°ãƒãƒ¼ãƒãƒ«ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ bbb.shortcuthelp.dropdown.presentation = プレゼンテーションã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ bbb.shortcuthelp.dropdown.chat = ãƒãƒ£ãƒƒãƒˆã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ bbb.shortcuthelp.dropdown.users = ユーザーã®ã‚·ãƒ§ãƒ¼ãƒˆã‚«ãƒƒãƒˆ -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts +bbb.shortcuthelp.dropdown.caption = bbb.shortcuthelp.browserWarning.text = ショートカットã®ã™ã¹ã¦ã®ãƒªã‚¹ãƒˆã‚’サãƒãƒ¼ãƒˆã—ã¦ã„ã‚‹ã®ã¯ Internet Explorer ã®ã¿ã§ã™ã€‚ bbb.shortcuthelp.headers.shortcut = ショートカット bbb.shortcuthelp.headers.function = 機能 @@ -671,7 +681,7 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = プレゼンテーションウィンドウã«ãƒ•ã‚©ãƒ¼ã‚«ã‚¹ã‚’移動 bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = ãƒãƒ£ãƒƒãƒˆã‚¦ã‚£ãƒ³ãƒ‰ã‚¦ã«ãƒ•ã‚©ãƒ¼ã‚«ã‚¹ã‚’移動 -bbb.shortcutkey.focus.caption = 53 +bbb.shortcutkey.focus.caption = bbb.shortcutkey.focus.caption.function = クãƒãƒ¼ã‚ºãƒ‰ã‚ャプションウインドウã«ãƒ•ã‚©ãƒ¼ã‚«ã‚¹ã‚’移動 bbb.shortcutkey.share.desktop = 68 @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = ページã«ã‚¹ãƒ©ã‚¤ãƒ‰ã‚’åˆã‚ã› bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = é¸æŠžã—ãŸäººã‚’プレゼンターã«ã™ã‚‹ bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = é¸æŠžã—ãŸäººã‚’会è°ã‹ã‚‰é€€å ´ã•ã›ã‚‹ +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = é¸æŠžã—ãŸäººã‚’ミュートã¾ãŸã¯ãƒŸãƒ¥ãƒ¼ãƒˆè§£é™¤ bbb.shortcutkey.users.muteall = 65 @@ -710,13 +720,13 @@ bbb.shortcutkey.users.muteall.function = ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’ミュート bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = プレゼンター以外ã®ã™ã¹ã¦ã®äººã‚’ミュート bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window +bbb.shortcutkey.users.breakoutRooms.function = bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list +bbb.shortcutkey.users.focusBreakoutRooms.function = bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room +bbb.shortcutkey.users.listenToBreakoutRoom.function = bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = ãƒãƒ£ãƒƒãƒˆã‚¿ãƒ–ã«ãƒ•ã‚©ãƒ¼ã‚«ã‚¹ @@ -747,14 +757,15 @@ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = 一時的ãªãƒ‡ãƒãƒƒã‚°ãƒ›ãƒƒãƒˆã‚ー bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = 投票を開始 bbb.polling.startButton.label = 投票開始 bbb.polling.publishButton.label = パブリッシュ bbb.polling.closeButton.label = クãƒãƒ¼ã‚º -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = ライブ投票çµæžœ +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = 投票ã—ã¦ãã ã•ã„ bbb.polling.respondersLabel.novotes = è¿”ç”ã‚’å¾…æ©Ÿ bbb.polling.respondersLabel.text = {0} 人ãŒå›žç”済㿠@@ -792,7 +803,7 @@ bbb.users.settings.lockAll = ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’ãƒãƒƒã‚¯ bbb.users.settings.lockAllExcept = プレゼンター以外ã®ã™ã¹ã¦ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’ãƒãƒƒã‚¯ bbb.users.settings.lockSettings = 閲覧者をãƒãƒƒã‚¯ bbb.users.settings.breakoutRooms = å°ä¼šè°å®¤ ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = ã™ã¹ã¦ã®é–²è¦§è€…ã®ãƒãƒƒã‚¯ã‚’解除 bbb.users.settings.roomIsLocked = デフォルトã§ãƒãƒƒã‚¯ bbb.users.settings.roomIsMuted = デフォルトã§ãƒŸãƒ¥ãƒ¼ãƒˆ @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = ãƒãƒƒã‚¯è¨å®šã‚’é©ç”¨ bbb.lockSettings.cancel = ã‚ャンセル bbb.lockSettings.cancel.toolTip = ã“ã®ã‚¦ã‚¤ãƒ³ãƒ‰ã‚¦ã‚’ä¿å˜ã›ãšã«é–‰ã˜ã‚‹ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = モデレーターã«ã‚ˆã‚‹ãƒãƒƒã‚¯ bbb.lockSettings.privateChat = éžå…¬é–‹ãƒãƒ£ãƒƒãƒˆ bbb.lockSettings.publicChat = 公開ãƒãƒ£ãƒƒãƒˆ bbb.lockSettings.webcam = ウェブカメラ +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = マイク bbb.lockSettings.layout = レイアウト bbb.lockSettings.title=閲覧者をãƒãƒƒã‚¯ @@ -814,90 +827,45 @@ bbb.lockSettings.locked=固定済㿠bbb.lockSettings.lockOnJoin=å‚åŠ ã‚’å›ºå®š bbb.users.breakout.breakoutRooms = å°ä¼šè°å®¤ -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = bbb.users.breakout.calculatingRemainingTime = 残り時間を計算ä¸... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = bbb.users.breakout.start = 開始 -bbb.users.breakout.invite = Invite +bbb.users.breakout.invite = bbb.users.breakout.close = é–‰ã˜ã‚‹ bbb.users.breakout.closeAllRooms = å…¨ã¦ã®å°ä¼šè°å®¤ã‚’é–‰ã˜ã‚‹ bbb.users.breakout.insufficientUsers = ユーザー数ãŒè¶³ã‚Šã¾ã›ã‚“。ã²ã¨ã¤ã®å°ä¼šè°å®¤ã«ã¯ã€å°‘ãªãã¨ã‚‚一人ã®ãƒ¦ãƒ¼ã‚¶ãƒ¼ã‚’é…ç½®ã—ã¦ãã ã•ã„。 -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ka/bbbResources.properties b/bigbluebutton-client/locale/ka/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ka/bbbResources.properties +++ b/bigbluebutton-client/locale/ka/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ka_GE/bbbResources.properties b/bigbluebutton-client/locale/ka_GE/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..7c3a893401b136cf5ba46cd3acd980df8456831f 100644 --- a/bigbluebutton-client/locale/ka_GE/bbbResources.properties +++ b/bigbluebutton-client/locale/ka_GE/bbbResources.properties @@ -1,903 +1,871 @@ bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.statusProgress.connecting = სერვერთáƒáƒœ დáƒáƒ™áƒáƒ•áƒ¨áƒ˜áƒ ებრ+bbb.mainshell.statusProgress.loading = დáƒáƒšáƒáƒ“ებრ+bbb.mainshell.statusProgress.cannotConnectServer = უკáƒáƒªáƒ áƒáƒ•áƒáƒ“, ჩვენ ვერვუკáƒáƒ•áƒ¨áƒ˜áƒ დებით სერვერს +bbb.mainshell.copyrightLabel2 = (c) 2017<a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a>(build {0}) +bbb.mainshell.logBtn.toolTip = გáƒáƒ®áƒ¡áƒ”ნი Log ფáƒáƒœáƒ¯áƒáƒ რ+bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = ფáƒáƒœáƒ¯áƒ ების გáƒáƒœáƒšáƒáƒ’ების სáƒáƒ¬áƒ§áƒ˜áƒ¡áƒ˜ პáƒáƒ–იცირ+bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = შესáƒáƒ«áƒšáƒáƒ გქáƒáƒœáƒ“ეთ BigBlueButton-ის ძველი ენის თáƒáƒ გმáƒáƒœáƒ”ბი +bbb.oldlocalewindow.reminder2 = გთხáƒáƒ•áƒ— გáƒáƒáƒ¡áƒ£áƒ¤áƒ—áƒáƒáƒ— თქვენი ბრáƒáƒ£áƒ–ერის ქეში დრსცáƒáƒ“áƒáƒ— ხელáƒáƒ®áƒšáƒ +bbb.oldlocalewindow.windowTitle = გáƒáƒ¤áƒ თხილებáƒ: ძველი ენის თáƒáƒ გმáƒáƒœáƒ”ბი +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = áƒáƒ£áƒ“ირტესტი +bbb.micSettings.speakers.header = გáƒáƒ¢áƒ”სტე სპიკერები +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = გáƒáƒ¢áƒ”სტე სპიკერები +bbb.micSettings.playSound.toolTip = ჩáƒáƒ თე მუსიკრდრგáƒáƒ¢áƒ”სტე სპიკერები +bbb.micSettings.hearFromHeadset = შენ შესáƒáƒ«áƒšáƒáƒ მáƒáƒ˜áƒ¡áƒ›áƒ˜áƒœáƒ áƒáƒ£áƒ“ირშენს ყურსáƒáƒ¡áƒ›áƒ”ნებში დრáƒáƒ რშენი კáƒáƒ›áƒžáƒ˜áƒ£áƒ¢áƒ”რის სპიკერებში +bbb.micSettings.speakIntoMic = თუ იყენებთ ყურსáƒáƒ¡áƒ›áƒ”ნებს, შენ მáƒáƒ˜áƒ¡áƒ›áƒ”ნ áƒáƒ£áƒ“იáƒáƒ¡ ყურსáƒáƒ¡áƒ›áƒ”ნებში დრáƒáƒ რკáƒáƒ›áƒžáƒ˜áƒ£áƒ¢áƒ”რის სპიკერებში +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = გáƒáƒ¢áƒ”სტე áƒáƒœ შეცვáƒáƒšáƒ” მიკრáƒáƒ¤áƒáƒœáƒ˜ +bbb.micSettings.changeMic.toolTip = გáƒáƒ®áƒ¡áƒ”ნი Flash Player მიკრáƒáƒ¤áƒáƒœáƒ˜áƒ¡ პáƒáƒ áƒáƒ›áƒ”ტრების დიáƒáƒšáƒáƒ’ური ფáƒáƒœáƒ¯áƒáƒ რ+bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = ჩáƒáƒ თე áƒáƒ£áƒ“ირ+bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = გáƒáƒáƒ£áƒ¥áƒ›áƒ” áƒáƒ£áƒ“ირკáƒáƒœáƒ¤áƒ”რენციáƒáƒ¡áƒ—áƒáƒœ დáƒáƒ™áƒáƒ•áƒ¨áƒ˜áƒ ებრ+bbb.micSettings.access.helpButton = დáƒáƒ®áƒ›áƒáƒ ებრ(გáƒáƒ®áƒ¡áƒ”ნი დáƒáƒ›áƒ®áƒ›áƒáƒ ე ვიდერáƒáƒ®áƒáƒš ფáƒáƒœáƒ¯áƒáƒ áƒáƒ¨áƒ˜) +bbb.micSettings.access.title = áƒáƒ£áƒ“ირპáƒáƒ áƒáƒ›áƒ”ტრები. ფáƒáƒ™áƒ£áƒ¡áƒ˜ დáƒáƒ ჩებრáƒáƒ£áƒ“ირპáƒáƒ áƒáƒ›áƒ”ტრებზე მáƒáƒœáƒáƒ› სáƒáƒœáƒáƒ› ეს ფáƒáƒœáƒ¯áƒáƒ რáƒáƒ დáƒáƒ˜áƒ®áƒ£áƒ ებáƒ. +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.mainToolbar.helpBtn = დáƒáƒ®áƒ›áƒáƒ ებრ+bbb.mainToolbar.logoutBtn = გáƒáƒ›áƒáƒ¡áƒ•áƒšáƒ +bbb.mainToolbar.logoutBtn.toolTip = გáƒáƒ›áƒáƒ¡áƒ•áƒšáƒ +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = შეáƒáƒ ჩიე ენრ+bbb.mainToolbar.settingsBtn = პáƒáƒ áƒáƒ›áƒ”ტრები +bbb.mainToolbar.settingsBtn.toolTip = გáƒáƒ®áƒ¡áƒ”ნი პáƒáƒ áƒáƒ›áƒ”ტრები +bbb.mainToolbar.shortcutBtn = ცხელი ღილáƒáƒ™áƒ”ბი +bbb.mainToolbar.shortcutBtn.toolTip = გáƒáƒ®áƒ¡áƒ”ნი ცხელი ღილáƒáƒ™áƒ”ბის ფáƒáƒœáƒ¯áƒáƒ რ+bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = დáƒáƒ®áƒ£áƒ ვრ+bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = ჩáƒáƒ™áƒ”ცვრ+bbb.window.maximizeRestoreBtn.toolTip = მáƒáƒ¥áƒ¡áƒ˜áƒ›áƒ˜áƒ–ირებრ+bbb.window.closeBtn.toolTip = დáƒáƒ®áƒ£áƒ ვრ+bbb.videoDock.titleBar = ვებკáƒáƒ›áƒ”რის ფáƒáƒœáƒ¯áƒ ის სáƒáƒ—áƒáƒ£áƒ ის ზáƒáƒšáƒ˜ +bbb.presentation.titleBar = პრეზენტáƒáƒªáƒ˜áƒ˜áƒ¡ ფáƒáƒœáƒ¯áƒ ის სáƒáƒ—áƒáƒ£áƒ ის ზáƒáƒšáƒ˜ +bbb.chat.titleBar = სáƒáƒ¡áƒáƒ£áƒ‘რრფáƒáƒœáƒ¯áƒ ის სáƒáƒ—áƒáƒ£áƒ ის ზáƒáƒšáƒ˜ +bbb.users.title = მáƒáƒ›áƒ®áƒ›áƒáƒ ებლები{0}{1} +bbb.users.titleBar = მáƒáƒ›áƒ®áƒ›áƒáƒ ებლების ფáƒáƒœáƒ¯áƒ ის სáƒáƒ—áƒáƒ£áƒ ის ზáƒáƒšáƒ˜ +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = ჩáƒáƒ™áƒ”ცე მáƒáƒ›áƒ®áƒ›áƒáƒ ებლების ფáƒáƒœáƒ¯áƒáƒ რ+bbb.users.maximizeRestoreBtn.accessibilityName = გáƒáƒáƒ“იდე მáƒáƒ›áƒ®áƒ›áƒáƒ ებლების ფáƒáƒœáƒ¯áƒáƒ რ+bbb.users.settings.buttonTooltip = პáƒáƒ áƒáƒ›áƒ”ტრები +bbb.users.settings.audioSettings = áƒáƒ£áƒ“ირტესტი +bbb.users.settings.webcamSettings = ვებკáƒáƒ›áƒ”რის პáƒáƒ áƒáƒ›áƒ”ტრები +bbb.users.settings.muteAll = ყველრმáƒáƒ›áƒ®áƒ›áƒáƒ ებლის გáƒáƒ©áƒ£áƒ›áƒ”ბრ+bbb.users.settings.muteAllExcept = პრეზენტáƒáƒ¢áƒáƒ ის გáƒáƒ დრყველრმáƒáƒ›áƒ®áƒ›áƒáƒ ებლის გáƒáƒ©áƒ£áƒ›áƒ”ბრ+bbb.users.settings.unmuteAll = ყველრმáƒáƒ›áƒ®áƒ›áƒáƒ ებლის გáƒáƒ©áƒ£áƒ›áƒ”ბის გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = სáƒáƒ£áƒ‘áƒáƒ ი +bbb.users.pushToMute.toolTip = სáƒáƒ™áƒ£áƒ—áƒáƒ ი თáƒáƒ•áƒ˜áƒ¡ გáƒáƒ©áƒ£áƒ›áƒ”ბრ+bbb.users.muteMeBtnTxt.talk = გáƒáƒ©áƒ£áƒ›áƒ”ბის გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.users.muteMeBtnTxt.mute = გáƒáƒ©áƒ£áƒ›áƒ”ბრ+bbb.users.muteMeBtnTxt.muted = გáƒáƒ©áƒ£áƒ›áƒ”ბულირ+bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = მáƒáƒ›áƒ®áƒ›áƒáƒ ებლების სიáƒ. გáƒáƒ›áƒáƒ˜áƒ§áƒ”ნე კლáƒáƒ•áƒ˜áƒáƒ¢áƒ£áƒ ის ისრები ნáƒáƒ•áƒ˜áƒ’áƒáƒªáƒ˜áƒ˜áƒ¡áƒ—ვის. +bbb.users.usersGrid.nameItemRenderer = სáƒáƒ®áƒ”ლი +bbb.users.usersGrid.nameItemRenderer.youIdentifier = შენ +bbb.users.usersGrid.statusItemRenderer = სტáƒáƒ¢áƒ£áƒ¡áƒ˜ +bbb.users.usersGrid.statusItemRenderer.changePresenter = დáƒáƒáƒ¬áƒ™áƒáƒžáƒ£áƒœáƒ” პრეზენტáƒáƒªáƒ˜áƒ˜áƒ¡ დáƒáƒ¡áƒáƒ¬áƒ§áƒ”ბáƒáƒ“ +bbb.users.usersGrid.statusItemRenderer.presenter = პრეზენტáƒáƒ¢áƒáƒ ი +bbb.users.usersGrid.statusItemRenderer.moderator = მáƒáƒ“ერáƒáƒ¢áƒáƒ ი +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = მáƒáƒ§áƒ£áƒ ებელი +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = მედირ+bbb.users.usersGrid.mediaItemRenderer.talking = მáƒáƒ¡áƒáƒ£áƒ‘რე +bbb.users.usersGrid.mediaItemRenderer.webcam = ვებკáƒáƒ›áƒ”რის გáƒáƒ–იáƒáƒ ებრ+bbb.users.usersGrid.mediaItemRenderer.webcamBtn = ვებკáƒáƒ›áƒ”რის ნáƒáƒ®áƒ•áƒ +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = ვებკáƒáƒ›áƒ”რის გáƒáƒ–იáƒáƒ ებრ+bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = დáƒáƒ®áƒ£áƒ ვრ+bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = დáƒáƒ®áƒ£áƒ ვრ+bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = ჩáƒáƒ™áƒ”ცვრ+bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = დáƒáƒ®áƒ›áƒáƒ ებრ+bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = დáƒáƒ®áƒ£áƒ ვრ+bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = პáƒáƒ áƒáƒ›áƒ”ტრები +bbb.settings.ok = +bbb.settings.cancel = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = დáƒáƒ®áƒ£áƒ ვრ+bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = ცხელი ღილáƒáƒ™áƒ”ბი +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = დáƒáƒ®áƒ£áƒ ვრ+bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = დáƒáƒ®áƒ£áƒ ვრ+bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = დáƒáƒ®áƒ£áƒ ვრ+bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = გáƒáƒ£áƒ¥áƒ›áƒ”ბრ+bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/kk_KZ/bbbResources.properties b/bigbluebutton-client/locale/kk_KZ/bbbResources.properties index ab4980a2294f083e858078a947ad7d0569bcf034..6eb76ffd577cb4673f8a851532071936da108365 100644 --- a/bigbluebutton-client/locale/kk_KZ/bbbResources.properties +++ b/bigbluebutton-client/locale/kk_KZ/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Серверге қоÑылу ÑәткілікÑіз аÑқталды. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Көмек bbb.mainToolbar.logoutBtn = Шығу -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Әуелгі Ñлайд. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = КелеÑÑ– Ñлайд -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = bbb.presentation.uploadwindow.pdf = PDF файлы bbb.presentation.uploadwindow.word = Word документі bbb.presentation.uploadwindow.excel = Excel таблицаÑÑ‹ bbb.presentation.uploadwindow.powerpoint = PowerPoint презентациÑÑÑ‹ bbb.presentation.uploadwindow.image = Бейне -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = bbb.fileupload.title = ПрезентациÑны жүктеу -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = bbb.fileupload.selectBtn.toolTip = Файлды таңдау bbb.fileupload.uploadBtn = Жүктеу bbb.fileupload.uploadBtn.toolTip = Файлды жүктеу -bbb.fileupload.deleteBtn.toolTip = Delete Presentation +bbb.fileupload.deleteBtn.toolTip = bbb.fileupload.showBtn = КөрÑету -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = ПрезентациÑны көрÑету -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Чат -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/km_KH/bbbResources.properties b/bigbluebutton-client/locale/km_KH/bbbResources.properties index 210b00d31f1dd6d2972158fc90b3919295cb6863..bd3bd602f38b63619a11462ad5d16500cd7dbe69 100644 --- a/bigbluebutton-client/locale/km_KH/bbbResources.properties +++ b/bigbluebutton-client/locale/km_KH/bbbResources.properties @@ -1,159 +1,160 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = កំពុង​ភ្ជាប់​ទៅ​ម៉ាស៊ីន​បម្រើ "Server" -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = កំពុងដំណើរការ bbb.mainshell.statusProgress.cannotConnectServer = សូមអភáŸáž™áž‘ោស! យើង​មិន​អាច​ភ្ជាប់​ទៅ​កាន់​ម៉ាស៊ីន​បម្រើ​បាន​ទáŸáŸ” -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a>(build {0}) bbb.mainshell.logBtn.toolTip = បើកផ្ទាំងចូល -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = រកមិនឃើញ​ការប្រជុំទ០+bbb.mainshell.invalidAuthToken = Authentication Token មិនážáŸ’រឹមážáŸ’រូវ bbb.mainshell.resetLayoutBtn.toolTip = ប្ážáž¼ážšâ€‹áž”្លង់ទៅទម្រង់ដើម bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.notification.webrtc = សម្លáŸáž„ WebRTC +bbb.mainshell.fullscreenBtn.toolTip = បិទ/បើកពáŸáž‰â€‹áž¢áŸáž€áŸ’រង់ +bbb.mainshell.quote.sentence.1 = មិនមានអាážáŸŒáž€áŸ†áž”ាំងសម្រាប់ភាពជោគជáŸáž™áž‘áŸ! ភាពជោគជáŸáž™áž‡áž¶áž›áž‘្ធផលនៃ​ការážáŸ’រៀមážáŸ’លួន ការážáž·ážážáŸ† និងការរៀនពីភាពបរាជáŸáž™áŸ” bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = ប្រាប់ážáŸ’ញុំ ážáŸ’ញុំនឹងភ្លáŸáž…។ បង្រៀនážáŸ’ញុំ ážáŸ’ញុំនឹងចាំ។ ឲ្យážáŸ’ញុំចូលរួម ážáŸ’ញុំនឹងរៀន។ bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = ážáŸ’ញុំ​បាន​រៀន​ពី​ážáž˜áŸ’លៃ​នៃ​កិច្ចការលំបាក​ážáž¶áž˜â€‹ážšáž™áŸˆáž€áž¶ážšáž”្រឹងប្រែង។ bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = អភិវឌ្ážáž…ំនូលចិážáŸ’ážážŸáž˜áŸ’រាប់ការរៀនសូážáŸ’រ។ ប្រសិនបើអ្នកធ្វើដូច្នោះមែន នោះអ្នកនឹងមិនឈប់លូážáž›áž¶ážŸáŸ‹áž‘áŸ! bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = ការស្រាវជ្រាវគឺការបង្កើážáž…ំណáŸáŸ‡ážŠáž¹áž„ážáŸ’មី។ bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = អ្នកប្រហែលជាមានបំនកប្រែនៃភាសាចាស់របស់BigBlueButton។ bbb.oldlocalewindow.reminder2 = សូមសម្អាážážƒáŸ’លាំងសម្ងាážáŸ‹áž€áŸ’នុងកម្មវិធីរុករករបស់អ្នកហើយសាកម្ážáž„ទៀážáŸ” bbb.oldlocalewindow.windowTitle = ប្រុងប្រយáŸážáŸ’ន៖ បំនក​ប្រែ​ភាសា​ចាស់ -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. +bbb.audioSelection.title = ážáž¾â€‹áž¢áŸ’នក​ចង់​ចូលរួម​ដោយ​ប្រើ​សម្លáŸáž„​របៀប​ណា? +bbb.audioSelection.btnMicrophone.label = មីក្រូហ្វូន +bbb.audioSelection.btnMicrophone.toolTip = ភ្ជាប់​សម្លáŸáž„​ដោយប្រើ​ម៉ីក្រូហ្វូនរបស់​អ្នក​ +bbb.audioSelection.btnListenOnly.label = គ្រាន់ážáŸ‚ស្ážáž¶áž”់ +bbb.audioSelection.btnListenOnly.toolTip = ចូលរួមážáŸ’រឹម​ážáŸ‚​ស្ážáž¶áž”់​ +bbb.audioSelection.txtPhone.text = ដើម្បីចូលរួម​ក្នុង​ការ​ប្រជុំ​នáŸáŸ‡â€‹ážáž¶áž˜â€‹ážšáž™áŸˆâ€‹áž‘ូរសáŸáž–្ទ សូមហៅទៅកាន់ {0} រួចបញ្ចូល {1} ជាលáŸážážŸáž˜áŸ’គាល់សន្និសិទ។ bbb.micSettings.title = សាកសម្លáŸáž„ bbb.micSettings.speakers.header = សាកល្បងឧបករណáŸáž”ន្លឺសម្លáŸáž„ -bbb.micSettings.microphone.header = Test Microphone +bbb.micSettings.microphone.header = សាកល្បងមីក្រូហ្វូន bbb.micSettings.playSound = សាកល្បងឧបករណáŸáž”ន្លឺសម្លáŸáž„ bbb.micSettings.playSound.toolTip = áž›áŸáž„ចម្រៀងដើម្បីសាកល្បងឧបករណáŸáž”ន្លឺសម្លáŸáž„ bbb.micSettings.hearFromHeadset = អ្នកគួរážáŸ‚លឺសម្លáŸáž„áž…áŸáž‰áž–ីកាសរបស់អ្នក មិនមែនពីឧបករណáŸáž”ន្លឺសម្លáŸáž„របស់កុំព្យូទáŸážšáž‘áŸáŸ” bbb.micSettings.speakIntoMic = ប្រសិនបើអ្នកប្រើកាស អ្នកគួរážáŸ‚លឺសម្លáŸáž„áž…áŸáž‰áž–ីកាសរបស់អ្នក មិនមែនពីឧបករណáŸáž”ន្លឺសម្លáŸáž„របស់កុំព្យូទáŸážšáž‘áŸáŸ”\n -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.echoTestMicPrompt = áž“áŸáŸ‡áž‡áž¶áž€áž¶ážšâ€‹ážŸáž¶áž€â€‹áž›áŸ’បង​អáŸáž€áž½â€‹áž¯áž€áž‡áž“។ សូមនិយាយពីរបីពាក្យ។ ážáž¾áž¢áŸ’នកលឺសម្លáŸáž„áž‘áŸ? +bbb.micSettings.echoTestAudioYes = បាទ/ចាស +bbb.micSettings.echoTestAudioNo = ទ០+bbb.micSettings.speakIntoMicTestLevel = និយាយទៅកាន់មីក្រូហ្វូនរបស់អ្នក។ អ្នកគួរážáŸ‚ឃើញការផ្លាស់ប្ážáž¼ážšáž“ៃរបារ។ ប្រសិនបើមិនដូច្នោះទ០សូមជ្រើសមីក្រូហ្វូនផ្សáŸáž„ទៀážáŸ” +bbb.micSettings.recommendHeadset = ប្រើកាសមួយដែលមានម៉ីក្រូហ្វូនដើម្បីទទួលសម្លáŸáž„ល្អបំផុážáŸ” bbb.micSettings.changeMic = សាកល្បង ឬ​ប្ážáž¼ážšâ€‹áž˜áž¸áž€áŸ’រូហ្វូន bbb.micSettings.changeMic.toolTip = បើក​ផ្ទាំង​​សំរាប់​ការ​កំណážáŸ‹â€‹áž˜áž¸áž€áŸ’រូហ្វូន Flash Player -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = ជ្រើសមីក្រូហ្វូន +bbb.micSettings.micRecordVolume.label = កម្រិហ+bbb.micSettings.micRecordVolume.toolTip = កំណážáŸ‹áž€áž˜áŸ’ážšáž·ážážŸáž˜áŸ’áž›áŸáž„មីក្រូហ្វូនរបស់អ្នក +bbb.micSettings.nextButton = បន្ទាប់ +bbb.micSettings.nextButton.toolTip = ចាប់​ផ្ážáž¾áž˜â€‹áž€áž¶ážšážŸáž¶áž€â€‹áž›áŸ’បង​អáŸáž€áž¼â€‹ bbb.micSettings.join = ភ្ជាប់សម្លáŸáž„ -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = ចូលរួមសន្និសិទជាសម្លáŸáž„ bbb.micSettings.cancel = បោះបង់ -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = បោះបង់​ការ​ážâ€‹â€‹áž—្ជាប់​សន្និសីទ​ជា​សម្លáŸáž„ -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.connectingtoecho = កំពុង​ភ្ជាប់​ +bbb.micSettings.connectingtoecho.error = កំហុស​ក្នុងការ​សាកល្បង​អáŸáž€áž¼áŸˆ សូមទាក់ទងអ្នកគ្រប់​គ្រង +bbb.micSettings.cancel.toolTip = បោះបង់​ការ​ážâ€‹â€‹áž—្ជាប់​សន្និសិទ​ជា​សម្លáŸáž„ +bbb.micSettings.access.helpButton = ជំនួយ (បើកវីដáŸáž¢áž¼áž”ង្រៀនក្នុងទំពáŸážšážáŸ’មី) bbb.micSettings.access.title = ការកំណážáŸ‹ážŸáŸ†áž›áŸáž„។ ការផ្ážáŸ„ážáž“ឹងនៅážáŸ‚ស្ážáž·ážáž€áŸ’នុងផ្ទាំងកំណážáŸ‹ážŸáŸ†áž›áŸáž„áž“áŸáŸ‡ážšáž áž¼ážážŠáž›áŸ‹áž•áŸ’ទាំងនáŸáŸ‡ážáŸ’រូវបានបិទ។ -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = ការគាំទ្រ​ WebRTC +bbb.micSettings.webrtc.capableBrowser = កម្មវិធីរុករក​របស់​អ្នក​អាចប្រើជាមួយ WebRTC +bbb.micSettings.webrtc.capableBrowser.dontuseit = ចុច​ដើម្បីមិនប្រើ WebRTC +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = ចុចទីនáŸáŸ‡â€‹áž”្រសិន​បើ​អ្នក​មិន​ចង់​ប្រើ​បច្ចáŸáž€ážœáž·áž‘្យា​ WebRTC (ក្នុងករណីអ្នកមានបញ្ហាជាមួយវា) +bbb.micSettings.webrtc.notCapableBrowser = WebRTC មិនអាច​ប្រើ​ក្នុង​​កម្មវិធីរុករក​របស់អ្នក​ទáŸáŸ” សូម​ប្រើកម្មវិធី Google Chrome (ជំនាន់ 32 ឬážáŸ’មីជាងនáŸáŸ‡) ឬកម្មវិធី Mozilla Firefox (ជំនាន់ 26 ឬážáŸ’មីជាងនáŸáŸ‡)។ អ្នកនឹងអាចចូលរួមក្នុងសន្និសិទជាសម្លáŸáž„ដោយប្រើកម្មវិធី​ Adobe Flash ។ +bbb.micSettings.webrtc.connecting = កំពុងហៅ +bbb.micSettings.webrtc.waitingforice = កំពុង​ភ្ជាប់​ +bbb.micSettings.webrtc.transferring = កំពុង​បញ្ជូន +bbb.micSettings.webrtc.endingecho = កំពុងភ្ជាប់សម្លáŸáž„ +bbb.micSettings.webrtc.endedecho = ការសាកល្បងអáŸáž€áž¼áž”ានបញ្ចប់។ +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = សិទ្ធិប្រើម៉ីក្រូហ្វូនក្នុង Firefox +bbb.micPermissions.firefox.message = ចុច Allow ដើម្បីឲ្យ Firefox អាចប្រើម៉ីក្រូហ្វូនរបស់អ្នក +bbb.micPermissions.chrome.title = សិទ្ធិប្រើម៉ីក្រូហ្វូនក្នុង Chrome +bbb.micPermissions.chrome.message = ចុច Allow ដើម្បីឲ្យ Chrome អាចប្រើម៉ីក្រូហ្វូនរបស់អ្នក +bbb.micWarning.title = ការព្រមានជាសម្លáŸáž„ +bbb.micWarning.joinBtn.label = យ៉ាងណាកáŸáž…ូលរួម +bbb.micWarning.testAgain.label = សាកល្បង​ម្ážáž„​ទៀហ+bbb.micWarning.message = មីក្រូហ្វូនរបស់អ្នកមិនបានបង្ហាញសកម្មភាពអ្វីឡើយ។ អ្នកដទៃប្រហែលជាមិនអាចស្ážáž¶áž”់អ្នកបានទáŸáŸ” +bbb.webrtcWarning.message = បានរក​ឃើញ​បញ្ហាជាមួយ WebRTC: {0}។ អ្នកចង់ប្រើ Flash ជំនួសវិញ? +bbb.webrtcWarning.title = បរាជáŸáž™â€‹ážŸáž˜áŸ’រាប់សម្លáŸáž„ WebRTC +bbb.webrtcWarning.failedError.1001 = កំហុស 1001: WebSocket បានកាážáŸ‹áž•áŸ’ážáž¶áž…់ +bbb.webrtcWarning.failedError.1002 = កំហុស 1002: មិនអាចភ្ជាប់ WebSocket ទ០+bbb.webrtcWarning.failedError.1003 = កំហុស 1003: ជំនាន់​​នៃ​កម្មវិធីរុករក​មិនអាច​ប្រើ​បាន +bbb.webrtcWarning.failedError.1004 = កំហុស 1004: បរាជáŸáž™áž“ៅពáŸáž›áž ៅ (មូលហáŸážáž»={0}) +bbb.webrtcWarning.failedError.1005 = កំហុស 1005: ការហៅបានបញ្ចប់ដោយមិនបានរំពឹងទុក +bbb.webrtcWarning.failedError.1006 = កំហុស 1006:អស់ពáŸáž›áž€áŸ’នុងការហៅ +bbb.webrtcWarning.failedError.1007 = កំហុស 1007: ការចរចា ICE បរាជáŸáž™ +bbb.webrtcWarning.failedError.1008 = កំហុស 1008: ការបញ្ជូនបានបរាជáŸáž™ +bbb.webrtcWarning.failedError.1009 = កំហុស 1009: មិនអាចទាញយកពáŸážáŸŒáž˜áž¶áž“ពី​ម៉ាស៊ីនបម្រើ STUN/TURN ទ០+bbb.webrtcWarning.failedError.1010 = កំហុស 1010: ការចរចា ICE បរាជáŸáž™ +bbb.webrtcWarning.failedError.1011 = កំហុស 1011: អស់ពáŸáž›â€‹áž”្រមូល ICE +bbb.webrtcWarning.failedError.unknown = កំហុស {0}: កូដសម្គាល់កំហុសមិនážáŸ’រូវបានស្គាល់ +bbb.webrtcWarning.failedError.mediamissing = មិនអាចយកម៉ីក្រូហ្វូនរបស់អ្នក​សម្រាប់​ការហៅដោយប្រើ WebRTC +bbb.webrtcWarning.failedError.endedunexpectedly = ការសាកល្បង​អáŸáž€áž¼â€‹ WebRTC បានបញ្ចប់​ដោយ​មិន​បាន​រំ​ពឹងទុក​ +bbb.webrtcWarning.connection.dropped = បានដាច់ážáŸ†ážŽáž—្ជាប់ WebRTC +bbb.webrtcWarning.connection.reconnecting = កំពុងព្យាយាមភ្ជាប់ឡើងវិញ +bbb.webrtcWarning.connection.reestablished = ážáŸ†ážŽáž—្ជាប់ WebRTC បានបង្កើážáž˜áŸ’ážáž„ទៀហ+bbb.inactivityWarning.title = រកមិនឃើញសកម្មភាពទ០+bbb.inactivityWarning.message = ការប្រជុំនáŸáŸ‡ážŠáž¼áž…ជាអសកម្ម។ បិទការប្រជុំនáŸáŸ‡ážŠáŸ„យ​ស្វáŸáž™â€‹áž”្រវážáŸ’ážáž·... +bbb.shuttingDown.message = ការប្រជុំនáŸáŸ‡â€‹ážáŸ’រូវ​បាន​បិទ​ដោយ​សារ​ភាព​អសកម្ម +bbb.inactivityWarning.cancel = បោះបង់ bbb.mainToolbar.helpBtn = ជំនួយ bbb.mainToolbar.logoutBtn = ការចាកចáŸáž‰ bbb.mainToolbar.logoutBtn.toolTip = ចាកចáŸáž‰ -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | កំណážáŸ‹áž–áŸáž›ážáŸ’រូវចាកចáŸáž‰áž‡áž¶ážáŸ’មី bbb.mainToolbar.langSelector = ជ្រើសរើសភាសា bbb.mainToolbar.settingsBtn = ការកំណážáŸ‹ bbb.mainToolbar.settingsBtn.toolTip = បើកការកំណážáŸ‹ -bbb.mainToolbar.shortcutBtn = ក្ážáž¶ážšáž…ុចសំរាប់ផ្លូវកាážáŸ‹ -bbb.mainToolbar.shortcutBtn.toolTip = បើកផ្ទាំងសម្រាប់ក្ážáž¶ážšáž…ុចផ្លូវកាážáŸ‹ -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications +bbb.mainToolbar.shortcutBtn = គ្រាប់ចុចសម្រាប់ផ្លូវកាážáŸ‹ +bbb.mainToolbar.shortcutBtn.toolTip = បើក​ផ្ទាំង​សម្រាប់គ្រាប់ចុចសម្រាប់​ផ្លូវកាážáŸ‹ +bbb.mainToolbar.recordBtn.toolTip.start = ចាប់ផ្ážáž¾áž˜â€‹ážážâ€‹ +bbb.mainToolbar.recordBtn.toolTip.stop = ឈប់ážáž +bbb.mainToolbar.recordBtn.toolTip.recording = វគ្គនáŸáŸ‡áž€áŸ†áž–ុងážáŸ‚ážáŸ’រូវបានážáž +bbb.mainToolbar.recordBtn.toolTip.notRecording = វគ្គនáŸáŸ‡áž˜áž·áž“ážáŸ’រូវបានážážáž‘០+bbb.mainToolbar.recordBtn.toolTip.onlyModerators = មានážáŸ‚អ្នកសម្រប់សម្រួល​ទáŸâ€‹ážŠáŸ‚លអាច​ចាប់ផ្ážáž¾áž˜ និងបញ្ឈប់ការážážáž”ាន +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = ការážážáž“áŸáŸ‡áž˜áž·áž“អាចរំážáž¶áž“បានទ០+bbb.mainToolbar.recordBtn.toolTip.wontRecord = វគ្គនáŸáŸ‡áž˜áž·áž“អាចážážáž”ានទ០+bbb.mainToolbar.recordBtn.confirm.title = អះអាងពីការážáž +bbb.mainToolbar.recordBtn.confirm.message.start = ážáž¾áž¢áŸ’នកប្រាកដជាចង់ចាប់ផ្ដើមážážážœáž‚្គនáŸáŸ‡áž˜áŸ‚áž“áž‘áŸ? +bbb.mainToolbar.recordBtn.confirm.message.stop = ážáž¾áž¢áŸ’នកប្រាកដជាចង់ឈប់ážážážœáž‚្គនáŸáŸ‡áž˜áŸ‚áž“áž‘áŸ? +bbb.mainToolbar.recordBtn.notification.title = ការជូនដំណឹងអំពីការážáž +bbb.mainToolbar.recordBtn.notification.message1 = អ្នក​អាច​ážážâ€‹áž€áž¶ážšáž”្រជុំ​នáŸáŸ‡â€‹áŸ” +bbb.mainToolbar.recordBtn.notification.message2 = អ្នកážáŸ’រូវចុចប៊ូážáž»áž„ "ចាប់ផ្ážáž¾áž˜/បញ្ឈប់ការážáž" នៅក្នុងរបារចំណងជើងដើម្បីចាប់ផ្ážáž¾áž˜ / បញ្ចប់ការážážáŸ” +bbb.mainToolbar.recordingLabel.recording = (កំពុងážáž) +bbb.mainToolbar.recordingLabel.notRecording = មិនážáž +bbb.waitWindow.waitMessage.message = អ្នកជាភ្ញៀវ។ សូមចាំ​​អ្នកសម្របសម្រួល​​យល់ព្រមសិន។ +bbb.waitWindow.waitMessage.title = កំពុងចាំ +bbb.guests.title = ភ្ញៀវ +bbb.guests.message.singular = អ្នកប្រើ {0}នាក់ចង់ចូលរួមការប្រជុំនáŸáŸ‡ +bbb.guests.message.plural = អ្នកប្រើ {0}នាក់ចង់ចូលរួមការប្រជុំនáŸáŸ‡ +bbb.guests.allowBtn.toolTip = អនុញ្ញាហ+bbb.guests.allowEveryoneBtn.text = អនុញ្ញាážâ€‹áž‚្រប់​គ្នា +bbb.guests.denyBtn.toolTip = បដិសáŸáž’ +bbb.guests.denyEveryoneBtn.text = បដិសáŸáž’គ្រប់គ្នា +bbb.guests.rememberAction.text = ចងចាំ​ជម្រើស +bbb.guests.alwaysAccept = យល់ព្រមជានិច្ច +bbb.guests.alwaysDeny = បដិសáŸáž’ជានិច្ច +bbb.guests.askModerator = សួរ​អ្នកសម្របសម្រួល +bbb.guests.Management = ការគ្រប់គ្រង​ភ្ញៀវ +bbb.clientstatus.title = ដំណឹង​អំពីការកំណážáŸ‹ážšáž…នាសម្ពáŸáž“្ធ +bbb.clientstatus.notification = ដំណឹងដែលមិនទាន់​បានអាន bbb.clientstatus.close = បិទ -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.tunneling.title = របាំងរារាំង +bbb.clientstatus.tunneling.message = របាំងរារាំងកំពុងទប់ស្កាážáŸ‹áž˜áŸ‰áž¶ážŸáŸŠáž¸áž“មáŸáž˜áž·áž“ឲ្យភ្ជាប់ដោយ​ផ្ទាល់ážáž¶áž˜ port 1935 ជាមួយ​ម៉ាស៊ីនបម្រើ​ពីចម្ងាយ។ សូមចូលរូមដោយប្រើបណ្ážáž¶áž‰ážŠáŸ‚លមិនសូវមានកំហិážážáŸ’លាំងដើម្បីការភ្ជាប់ážáŸážšáŸ” +bbb.clientstatus.browser.title = ជំនាន់របស់កម្មវិធីរុករក +bbb.clientstatus.browser.message = កម្មវិធីរុករក​របស់​អ្នក​ ({0}) មិនទាន់​សមáŸáž™áž‘áŸâ€‹. សូមធ្វើបច្ចុប្បន្នភាពទៅកាន់ជំនាន់ážáŸ’មី។ +bbb.clientstatus.flash.title = កម្មវិធីបើក Flash +bbb.clientstatus.flash.message = កម្មវិធីបើក Flash របស់​អ្នក​ ({0}) មិនទាន់​សមáŸáž™áž‘áŸâ€‹. សូមធ្វើបច្ចុប្បន្នភាពទៅកាន់ជំនាន់ážáŸ’មី។ +bbb.clientstatus.webrtc.title = សម្លáŸáž„ +bbb.clientstatus.webrtc.strongStatus = ážáŸ†ážŽáž—្ជាប់ WebRCT ជាសម្លáŸáž„របស់អ្នកល្អ +bbb.clientstatus.webrtc.almostStrongStatus = ážáŸ†ážŽáž—្ជាប់ WebRCT ជាសម្លáŸáž„របស់អ្នកល្អណាស់ +bbb.clientstatus.webrtc.almostWeakStatus = ážáŸ†ážŽáž—្ជាប់ WebRCT ជាសម្លáŸáž„របស់អ្នកមិនល្អទ០+bbb.clientstatus.webrtc.weakStatus = ប្រហែល​ជាមាន​បញ្ហាជាមួយ​ážáŸ†ážŽâ€‹áž—្ជាប់​ WebRTC ជាសម្លáŸáž„របស់អ្នក +bbb.clientstatus.webrtc.message = សូម​ប្រើ​ Firefox ឬ Chrome ដើម្បីសម្លáŸáž„គុណភាពល្អ។ +bbb.clientstatus.java.title = កម្មវិធី Java +bbb.clientstatus.java.notdetected = រកមិនឃើញជំនាន់នៃកម្មវិធី Java ទ០+bbb.clientstatus.java.notinstalled = អ្នកមិនបានដំឡើង Java áž‘áŸáŸ” សូមចុច<font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'> ទីនáŸáŸ‡</a></font> ដើម្បីដំឡើងជំនាន់ចុងក្រោយនៃកម្មវិធី Java ដើម្បីអាច​ចែករំលែកអáŸáž€áŸ’រង់បាន។ +bbb.clientstatus.java.oldversion = អ្នកមានកម្មវិធី Java ចាស់។ សូមចុច<font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'> ទីនáŸáŸ‡</a></font> ដើម្បីដំឡើងជំនាន់ចុងក្រោយនៃកម្មវិធី Java ដើម្បីអាច​ចែករំលែកអáŸáž€áŸ’រង់បាន។ bbb.window.minimizeBtn.toolTip = បង្រួមផ្ទាំង bbb.window.maximizeRestoreBtn.toolTip = ពង្រីកផ្ទាំង bbb.window.closeBtn.toolTip = បិទ @@ -162,50 +163,50 @@ bbb.presentation.titleBar = របារចំណងជើងផ្ទាំង bbb.chat.titleBar = របារចំណងជើងផ្ទាំងសម្រាប់ការសន្ទនា bbb.users.title = អ្នកប្រើប្រាស់ {0} {1} bbb.users.titleBar = របារ​ចំណង​ជើង​ផ្ទាំង​សម្រាប់​អ្នកប្រើប្រាស់ -bbb.users.quickLink.label = Users Window +bbb.users.quickLink.label = ផ្ទាំង​អ្នក​ប្រើ​ bbb.users.minimizeBtn.accessibilityName = បង្រួមផ្ទាំងសម្រាប់អ្នកប្រើប្រាស់ bbb.users.maximizeRestoreBtn.accessibilityName = ពង្រីកផ្ទាំងសម្រាប់អ្នកប្រើប្រាស់ bbb.users.settings.buttonTooltip = ការកំណážáŸ‹ bbb.users.settings.audioSettings = សាកសម្លáŸáž„ -bbb.users.settings.webcamSettings = ការកំណážáŸ‹ážœáŸáž”ážáŸáž˜ +bbb.users.settings.webcamSettings = ការកំណážáŸ‹â€‹ážŸáž˜áŸ’រាប់វáŸáž”ážáŸáž˜ bbb.users.settings.muteAll = បិទសម្លáŸáž„អ្នកប្រើទាំងអស់ bbb.users.settings.muteAllExcept = បិទសម្លáŸáž„អ្នកប្រើទាំងអស់លើកលែងអ្នកធ្វើបទបង្ហាញ bbb.users.settings.unmuteAll = ឈប់បិទសម្លáŸáž„អ្នកប្រើទាំងអស់ -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = សម្អាážážšáž¼áž”ážáŸ†ážŽáž¶áž„ស្ážáž¶áž“ភាពទាំងអស់​ +bbb.users.emojiStatusBtn.toolTip = ប្ážáž¼ážšážšáž¼áž”ážáŸ†ážŽáž¶áž„ស្ážáž¶áž“ភាពរបស់ážáŸ’ញុំ +bbb.users.roomMuted.text = អ្នកមើល​ážáŸ’រូវបាន​បិទសម្លáŸáž„​ +bbb.users.roomLocked.text = អ្នកមើលដែលបានចាក់សោ bbb.users.pushToTalk.toolTip = និយាយ bbb.users.pushToMute.toolTip = បិទសម្លáŸáž„ážáŸ’លួនឯង bbb.users.muteMeBtnTxt.talk = ឈប់បិទសម្លáŸáž„ bbb.users.muteMeBtnTxt.mute = បិទសម្លáŸáž„ bbb.users.muteMeBtnTxt.muted = ážáŸ’រូវបានបិទសម្លáŸáž„ -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = ចម្លងឈ្មោះ​អ្នក​ប្រើ bbb.users.usersGrid.accessibilityName = ážáž¶ážšáž¶áž„អ្នកប្រើ។ ប្រើសញ្ញាព្រួញលើក្ážáž¶ážšáž…ុចសំរាប់បញ្ជា។ bbb.users.usersGrid.nameItemRenderer = ឈ្មោះ bbb.users.usersGrid.nameItemRenderer.youIdentifier = ុុអ្នក bbb.users.usersGrid.statusItemRenderer = ស្ážáž¶áž“ភាព -bbb.users.usersGrid.statusItemRenderer.changePresenter = ចុចលើដើម្បីឲ្យធ្វើអ្នកធ្វើបទបង្ហាញ +bbb.users.usersGrid.statusItemRenderer.changePresenter = ចុចដើម្បីឲ្យធ្វើជាអ្នកធ្វើបទបង្ហាញ bbb.users.usersGrid.statusItemRenderer.presenter = អ្នកធ្វើបទបង្ហាញ bbb.users.usersGrid.statusItemRenderer.moderator = អ្នកសម្របសម្រួល -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = ážáŸ‚សម្លáŸáž„ប៉ុណ្ណោះ +bbb.users.usersGrid.statusItemRenderer.raiseHand = បានលើកដៃ +bbb.users.usersGrid.statusItemRenderer.applause = ទះដៃ +bbb.users.usersGrid.statusItemRenderer.thumbsUp = មáŸážŠáŸƒáž¡áž¾áž„ +bbb.users.usersGrid.statusItemRenderer.thumbsDown = មáŸážŠáŸƒáž…ុះ +bbb.users.usersGrid.statusItemRenderer.speakLouder = និយាយលឺជាងនáŸáŸ‡ +bbb.users.usersGrid.statusItemRenderer.speakSofter = និយាយស្ងាážáŸ‹áŸ—ជាងនáŸáŸ‡ +bbb.users.usersGrid.statusItemRenderer.speakFaster = និយាយលឿនជាងនáŸáŸ‡ +bbb.users.usersGrid.statusItemRenderer.speakSlower = និយាយយឺážáž‡áž¶áž„áž“áŸáŸ‡ +bbb.users.usersGrid.statusItemRenderer.away = នៅឆ្ងាយ +bbb.users.usersGrid.statusItemRenderer.confused = ច្រឡំ +bbb.users.usersGrid.statusItemRenderer.neutral = មិនសម្រáŸáž…áž…áž·ážáŸ’áž +bbb.users.usersGrid.statusItemRenderer.happy = សប្បាយចិážáŸ’áž +bbb.users.usersGrid.statusItemRenderer.sad = មិនសប្បាយចិážáŸ’áž +bbb.users.usersGrid.statusItemRenderer.clearStatus = សម្អាážážŸáŸ’ážáž¶áž“ភាព bbb.users.usersGrid.statusItemRenderer.viewer = អ្នកមើល -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = ចែករំលែក​វáŸáž”ážáŸáž˜ +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = ជា​អ្នកធ្វើបទបង្ហាញ bbb.users.usersGrid.mediaItemRenderer = គ្រឿងផ្សព្វផ្សាយ bbb.users.usersGrid.mediaItemRenderer.talking = កំពុងនិយាយ bbb.users.usersGrid.mediaItemRenderer.webcam = កំពុងចែករំលែកវáŸáž”ážáŸáž˜ @@ -214,151 +215,153 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = ឈប់បិទសម្ bbb.users.usersGrid.mediaItemRenderer.pushToMute = បិទសម្លáŸáž„{0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = ចាក់សោរ{0}​ bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = បើកសោរ{0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = ទាážáŸ‹áž…áŸáž‰{0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = កំពុងចែករំលែកវáŸáž”ážáŸáž˜ bbb.users.usersGrid.mediaItemRenderer.micOff = មីក្រូហ្វូនបិទ bbb.users.usersGrid.mediaItemRenderer.micOn = មីក្រូហ្វូន​បើក bbb.users.usersGrid.mediaItemRenderer.noAudio = មិននៅក្នុងសន្និសិទជាសម្លáŸáž„ទ០-bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = ដំឡើងážáž½áž“ាទី {0} ទៅជាអ្នកសម្របសម្រួល +bbb.users.usersGrid.mediaItemRenderer.demoteUser = ទម្លាក់ážáž½áž“ាទី {0} ទៅជាអ្នកមើល +bbb.users.emojiStatus.clear = សម្អាហ+bbb.users.emojiStatus.raiseHand = លើកដៃ +bbb.users.emojiStatus.happy = សប្បាយចិážáŸ’áž +bbb.users.emojiStatus.neutral = មិនសម្រáŸáž…áž…áž·ážáŸ’áž +bbb.users.emojiStatus.sad = មិនសប្បាយចិážáŸ’áž +bbb.users.emojiStatus.confused = ច្រឡំ +bbb.users.emojiStatus.away = នៅឆ្ងាយ +bbb.users.emojiStatus.thumbsUp = មáŸážŠáŸƒáž¡áž¾áž„ +bbb.users.emojiStatus.thumbsDown = មáŸážŠáŸƒáž…ុះ +bbb.users.emojiStatus.applause = ទះដៃ +bbb.users.emojiStatus.agree = ážáŸ’ញុំយល់ព្រម +bbb.users.emojiStatus.disagree = ážáŸ’ញុំមិនយល់ព្រម +bbb.users.emojiStatus.none = សម្អាហ+bbb.users.emojiStatus.speakLouder = ážáž¾â€‹áž¢áŸ’នកអាច​និយាយ​លឺៗ​ជាងនáŸáŸ‡â€‹áž”ាន​ទáŸ? +bbb.users.emojiStatus.speakSofter = ážáž¾â€‹áž¢áŸ’នកអាច​និយាយ​ស្ងាážáŸ‹áŸ—​ជាងនáŸáŸ‡â€‹áž”ាន​ទáŸ? +bbb.users.emojiStatus.speakFaster = ážáž¾â€‹áž¢áŸ’នកអាច​និយាយ​លឿន​ជាងនáŸáŸ‡â€‹áž”ាន​ទáŸ? +bbb.users.emojiStatus.speakSlower = ážáž¾â€‹áž¢áŸ’នកអាច​និយាយ​យឺážâ€‹áž‡áž¶áž„áž“áŸáŸ‡â€‹áž”ាន​ទáŸ? +bbb.users.emojiStatus.beRightBack = ážáŸ’ញុំនឹងមកវិញក្នុងពáŸáž›áž”ន្ážáž·áž…ទៀហbbb.presentation.title = បទបង្ហាញ bbb.presentation.titleWithPres = បទបង្ហាញ {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = ដាក់បទបង្ហាញឲ្យពáŸáž‰ážáž¶áž˜áž”ណ្ážáŸ„áž™ -bbb.presentation.fitToPage.toolTip = ដាក់បទបង្ហាញឲ្យពáŸáž‰ážáž¶áž˜áž‘ំពáŸážš -bbb.presentation.uploadPresBtn.toolTip = ផ្ទុកឡើងឯកសារបទបង្ហាញ​ -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = ផ្ទាំងមុន -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = ជ្រើសរើសផ្ទាំង -bbb.presentation.forwardBtn.toolTip = ផ្ទាំងបន្ទាប់ +bbb.presentation.quickLink.label = ផ្ទាំង​បទបង្ហាញ +bbb.presentation.fitToWidth.toolTip = ដាក់បទបង្ហាញឲ្យសមនឹងបណ្ážáŸ„áž™ +bbb.presentation.fitToPage.toolTip = ដាក់បទបង្ហាញឲ្យសមនឹងទំពáŸážš +bbb.presentation.uploadPresBtn.toolTip = ផ្ទុកឯកសារបទបង្ហាញ​ឡើង +bbb.presentation.downloadPresBtn.toolTip = ទាញយកបទបង្ហាញ +bbb.presentation.poll.response = ឆ្លើយ​ážáž”​ការ​ស្ទង់​មážáž· +bbb.presentation.backBtn.toolTip = ផ្ទាំងស្លាយមុន +bbb.presentation.btnSlideNum.accessibilityName = ផ្ទាំងស្លាយ {0} ក្នុងចំណោម {1} +bbb.presentation.btnSlideNum.toolTip = ជ្រើសផ្ទាំងស្លាយមួយ +bbb.presentation.forwardBtn.toolTip = ផ្ទាំងស្លាយបន្ទាប់ bbb.presentation.maxUploadFileExceededAlert = កំហុស៖ ទំហំឯកសារហួសពីការកំណážáŸ‹áŸ” bbb.presentation.uploadcomplete = ការផ្ទុកឡើងážáŸ’រូវបញ្ចប់។ សូមរង់ចាំážážŽáŸˆážŠáŸ‚លយើងបម្លែងឯកសារ។ bbb.presentation.uploaded = ážáŸ’រូវបានផ្ទុកឡើងហើយ។ bbb.presentation.document.supported = ឯកសារដែលបានផ្ទុកឡើងអាចប្រើប្រាស់បាន។ ចាប់ផ្ážáž¾áž˜áž”ម្លែង... bbb.presentation.document.converted = ឯកសារការិយាលáŸáž™ážáŸ’រូវបានបម្លែងដោយជោគជáŸáž™áŸ” -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = ព្យាយាមបម្លែងឯកសារជា PDF ហើយផ្ទុកឡើងម្ážáž„ទៀážáŸ” +bbb.presentation.error.document.convert.invalid = សូមបម្លែងឯកសារនáŸáŸ‡áž‘ៅជា PDF សិន។ bbb.presentation.error.io = កំហុសផ្នែកផ្ទុក៖ សូមទាក់ទងទៅអ្នករដ្ឋបាល bbb.presentation.error.security = កំហុសផ្នែកសុវážáŸ’ážáž·áž—ាព៖ សូមទាក់ទងទៅអ្នករដ្ឋបាល bbb.presentation.error.convert.notsupported = កំហុស៖ ឯកសារដែលបានផ្ទុកឡើងមិនអាចប្រើប្រាស់បានទáŸáŸ” សូមផ្ទុកឯកសារដែលážáŸ’រូវគ្នាជាមួយកម្មវិធី។ bbb.presentation.error.convert.nbpage = កំហុស៖ មិនអាចកំណážáŸ‹áž…ំនួនទំពáŸážšážšáž”ស់ឯកសារដែលបានផ្ទុកឡើងទáŸáŸ” bbb.presentation.error.convert.maxnbpagereach = កំហុស៖ ឯកសារដែលបានផ្ទុកមកមានច្រើនទំពáŸážšáž ួស។ -bbb.presentation.converted = បានបម្លែងផ្ទាំងចំនួន{0}ចំណោម{1}។ +bbb.presentation.converted = បានបម្លែងផ្ទាំងស្លាយចំនួន{0}ចំណោម{1}។ bbb.presentation.slider = កម្រិážáž–ង្រីកបទបង្ហាញ -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slideloader.starttext = អážáŸ’ážáž”ទស្លាយចាប់ផ្ážáž¾áž˜ +bbb.presentation.slideloader.endtext = អážáŸ’ážáž”ទស្លាយបញ្ចប់ bbb.presentation.uploadwindow.presentationfile = ឯកសារបទបង្ហាញ bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE +bbb.presentation.uploadwindow.image = រូបភាព bbb.presentation.minimizeBtn.accessibilityName = បង្រួមផ្ទាំងបទបង្ហាញ bbb.presentation.maximizeRestoreBtn.accessibilityName = ពង្រីកផ្ទាំងបទបង្ហាញ bbb.presentation.closeBtn.accessibilityName = បិទផ្ទាំងបទបង្ហាញ -bbb.fileupload.title = ážáŸ‚មឯកសារទៅកាន់បទបង្ហាញអ្នក -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = ជ្រើសរើសឯកសារ -bbb.fileupload.selectBtn.toolTip = បើកផ្ទាំងសំរាប់ជ្រើសរើសឯកសារ +bbb.fileupload.title = បន្ážáŸ‚មឯកសារទៅកាន់បទបង្ហាញអ្នក +bbb.fileupload.lblFileName.defaultText = មិនមានឯកសារážáŸ’រូវបានជ្រើសទ០+bbb.fileupload.selectBtn.label = ជ្រើសឯកសារ +bbb.fileupload.selectBtn.toolTip = បើកផ្ទាំងសំរាប់ជ្រើសឯកសារ bbb.fileupload.uploadBtn = ផ្ទុកឡើង -bbb.fileupload.uploadBtn.toolTip = ផ្ទុកឡើងនូវឯកសារដែលបានជ្រើសរើស +bbb.fileupload.uploadBtn.toolTip = ផ្ទុកឡើងនូវឯកសារដែលបានជ្រើស bbb.fileupload.deleteBtn.toolTip = លប់បទបង្ហាញ bbb.fileupload.showBtn = បង្ហាញ -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = ព្យាយាមជាមួយឯកសារមួយទៀហbbb.fileupload.showBtn.toolTip = បង្ហាញបទបង្ហាញ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = បិទ +bbb.fileupload.close.accessibilityName = បិទផ្ទាំងផ្ទុកឯកសារឡើង bbb.fileupload.genThumbText = កំពុងបង្កើážážšáž¼áž”ážáž¶áž„... bbb.fileupload.progBarLbl = កម្រិážážŠáŸ†ážŽáž¾ážšáž€áž¶ážšáŸ– -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = អ្នកអាចផ្ទុកឡើងនូវឯកសារការិយាលáŸáž™áž¬áž¯áž€ážŸáž¶ážš (PDF) ។ សម្រាប់លទ្ធផលល្អបំផុហយើងសូមណែនាំឱ្យអ្នកផ្ទុកឡើងនូវឯកសារ​ PDF ។ +bbb.fileupload.letUserDownload = អនុញ្ញាážáž²áŸ’យទាញយកឯកសារបទបង្ហាញ +bbb.fileupload.letUserDownload.tooltip = ចុចទីនáŸáŸ‡áž”្រសិនបើអ្នកចង់ឲ្យអ្នកដទៃទាញយកបទបង្ហាញរបស់អ្នក +bbb.filedownload.title = ទាញយកបទបង្ហាញ +bbb.filedownload.close.tooltip = បិទ +bbb.filedownload.close.accessibilityName = បិទ​ផ្ទាំង​ទាញ​យក​ឯកសារ +bbb.filedownload.fileLbl = ជ្រើសឯកសារសម្រាប់ទាញយក: +bbb.filedownload.downloadBtn = ទាញយក +bbb.filedownload.downloadBtn.toolTip = ទាញយកបទបង្ហាញ +bbb.filedownload.thisFileIsDownloadable = ឯកសារ​អាច​ទាញ​យក​បាន bbb.chat.title = សន្ទនា -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = ផ្ទាំង​សន្ទនា bbb.chat.cmpColorPicker.toolTip = ពណ៌អក្សរ bbb.chat.input.accessibilityName = ប្រឡោះ​សម្រាប់កែសារសន្ទនា -bbb.chat.sendBtn.toolTip = ផ្ញើរសារ -bbb.chat.sendBtn.accessibilityName = ផ្ញើរសារសន្ទនា -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.toolTip = ផ្ញើសារ +bbb.chat.sendBtn.accessibilityName = ផ្ញើសារសន្ទនា +bbb.chat.saveBtn.toolTip = រក្សាទុកការជជែក +bbb.chat.saveBtn.accessibilityName = រក្សាការជជែកក្នុងឯកសារអážáŸ’ážáž”áž‘ +bbb.chat.saveBtn.label = រក្សាទុក +bbb.chat.save.complete = កិច្ចសន្ទនាážáŸ’រូវបានរក្សាទុកជោគជáŸáž™ +bbb.chat.save.ioerror = កិច្ចសន្ទនា​មិនážáŸ’រូវ​បានរក្សាទុក​ទáŸáŸ” សូមរក្សាទុក​ម្ážáž„​ទៀážáŸ”​ +bbb.chat.save.filename = ជជែក-សាធារណៈ +bbb.chat.copyBtn.toolTip = ចម្លងសន្ទនា +bbb.chat.copyBtn.accessibilityName = ចម្លងកិច្ចសន្ទនាទៅក្ដារážáŸ’ទាស់ +bbb.chat.copyBtn.label = ចម្លង +bbb.chat.copy.complete = កិច្ចសន្ទនាážáŸ’រូវបានចម្លងទៅក្ដារážáŸ’ទាស់ +bbb.chat.clearBtn.toolTip = សម្អាážáž€áž¶ážšáž‡áž‡áŸ‚កសាធារណៈ +bbb.chat.clearBtn.accessibilityName = សម្អាážáž”្រវážáŸ’ážáž·áž“ៃការជជែកសាធារណៈ +bbb.chat.clearBtn.chatMessage = ប្រវážáŸ’ážáž·áž“ៃការជជែកសាធារណៈážáŸ’រូវបានសម្អាážážŠáŸ„យ​អ្នកសម្របសម្រួល +bbb.chat.clearBtn.alert.title = ព្រមាន +bbb.chat.clearBtn.alert.text = អ្នកកំពុងសម្អាážáž”្រវážáŸ’ážáž·áž“ៃការជជែកសាធារណៈ ហើយសកម្មភាពនáŸáŸ‡áž˜áž·áž“អាចážáŸ’រឡប់ក្រោយវិញទáŸáŸ” ážáž¾áž¢áŸ’នកចង់បន្ážáž‘áŸ? +bbb.chat.contextmenu.copyalltext = ចម្លង​អážáŸ’ážáž”ទ​ទាំង​អស់​ bbb.chat.publicChatUsername = សាធារណៈ bbb.chat.optionsTabName = ជម្រើស -bbb.chat.privateChatSelect = ជ្រើសនរណាម្នាក់ទៅសន្ទនាជាមួយលក្ážážŽáŸˆáž¯áž€áž‡áž“ +bbb.chat.privateChatSelect = ជ្រើសនរណាម្នាក់ទៅជជែក​ជាមួយជាលក្ážážŽáŸˆáž¯áž€áž‡áž“ bbb.chat.private.userLeft = អ្នកប្រើប្រាស់បានចáŸáž‰áž ើយ។ -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = ជ្រើសអ្នកប្រើប្រាស់ដើម្បីបើកការសន្ទនាឯកជន -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userJoined = អ្នកប្រើបានចូល​រួម។ +bbb.chat.private.closeMessage = អ្នកអាចបិទផ្ទាំងនáŸáŸ‡ážŠáŸ„យប្រើបណ្ážáž»áŸ†áž‚្រាប់ចុច {0}។ +bbb.chat.usersList.toolTip = ជ្រើសអ្នកប្រើដើម្បីបើកការជជែកឯកជន +bbb.chat.usersList.accessibilityName = ជ្រើសអ្នកប្រើដើម្បីជជែកឯកជន។ ប្រើគ្រាប់ចុចព្រួញដើម្បីផ្លាស់ទី bbb.chat.chatOptions = ជម្រើសសម្រាប់ការសន្ទនា bbb.chat.fontSize = ទំហំអក្សរសម្រាប់សារសន្ទនា -bbb.chat.cmbFontSize.toolTip = ជ្រើសរើសទំហំអក្សរសំរាប់សារសន្ទនា -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = ជ្រើសទំហំអក្សរសំរាប់សារសន្ទនា +bbb.chat.messageList = សារសន្ទនា bbb.chat.minimizeBtn.accessibilityName = បង្រួមផ្ទាំងសន្ទនា bbb.chat.maximizeRestoreBtn.accessibilityName = ពង្រីកផ្ទាំងសន្ទនា bbb.chat.closeBtn.accessibilityName = បិទផ្ទាំងសន្ទនា -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatTabs.accessibleNotice = សារ​ážáŸ’មី​ក្នុង​ផ្ទាំង​នáŸáŸ‡ +bbb.chat.chatMessage.systemMessage = ប្រពáŸáž“្ធ +bbb.chat.chatMessage.stringRespresentation = ពី {0} {1} នៅ {2} +bbb.chat.chatMessage.tooLong = សារលើស {0} ážáž½áž¢áž€áŸ’សរ bbb.publishVideo.changeCameraBtn.labelText = ប្ážáž¼ážšážœáŸáž”ážáŸáž˜ bbb.publishVideo.changeCameraBtn.toolTip = បើកផ្ទាំងសម្រាប់ប្ážáž¼ážšážœáŸáž˜ážáŸáž˜ bbb.publishVideo.cmbResolution.tooltip = ជ្រើសរើសគុណភាពបង្ហាញរបស់វáŸáž”ážáŸáž˜ bbb.publishVideo.startPublishBtn.labelText = ចាប់ផ្ážáž¾áž˜áž…ែករំលែក bbb.publishVideo.startPublishBtn.toolTip = ចាប់ផ្ážáž¾áž˜áž…ែករំលែកវáŸáž”ážáŸáž˜ážšáž”ស់អ្នក -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window +bbb.publishVideo.startPublishBtn.errorName = មិនអាចចែករំលែក​វáŸáž”ážáŸáž˜â€‹áž‘áŸáŸ” មូលហáŸážáž»â€‹: {0} +bbb.webcamPermissions.chrome.title = សិទ្ធិប្រើ​វáŸáž”ážáŸáž˜â€‹áž€áŸ’នុង Chrome +bbb.webcamPermissions.chrome.message = ចុច Allow ដើម្បីឲ្យ Chrome អាចប្រើ​វáŸáž”ážáŸáž˜â€‹ážšáž”ស់អ្នក +bbb.videodock.title = ážœáŸáž”ážáŸáž˜ +bbb.videodock.quickLink.label = ផ្ទាំង​វáŸáž”ážáŸáž˜ bbb.video.minimizeBtn.accessibilityName = បង្រួមផ្ទាំងវáŸáž”ážáŸáž˜ bbb.video.maximizeRestoreBtn.accessibilityName = ពង្រីកផ្ទាំងវáŸáž”ážáŸáž˜ bbb.video.controls.muteButton.toolTip = បិទ ឬមិនបិទសម្លáŸáž„{0} -bbb.video.controls.switchPresenter.toolTip = ធ្វើឲ​្យ{0}ជាអ្នកធ្វើបទបង្ហាញ +bbb.video.controls.switchPresenter.toolTip = ឲ្យ {0} ធ្វើ​ជាអ្នកធ្វើបទបង្ហាញ bbb.video.controls.ejectUserBtn.toolTip = រុញ{0}áž…áŸáž‰áž–ីការប្រជុំ bbb.video.controls.privateChatBtn.toolTip = សន្ទនាជាមួយ{0} bbb.video.publish.hint.noCamera = គ្មានវáŸáž”ážáŸáž˜áž‘០bbb.video.publish.hint.cantOpenCamera = មិនអាចបើកវáŸáž”ážáŸáž˜ážšáž”ស់អ្នកបានទ០bbb.video.publish.hint.waitingApproval = កំពុងរងចាំការយល់ព្រម -bbb.video.publish.hint.videoPreview = ការបង្ហាញជាមុនរបស់វáŸáž”ážáŸáž˜ +bbb.video.publish.hint.videoPreview = មើលសាក​ក្នុង​វáŸáž”ážáŸáž˜ bbb.video.publish.hint.openingCamera = កំពុងបើកវáŸáž”ážáŸáž˜... bbb.video.publish.hint.cameraDenied = ážœáŸáž”ážáŸáž˜áž˜áž·áž“អាចប្រើបានទ០bbb.video.publish.hint.cameraIsBeingUsed = ážœáŸáž”ážáŸáž˜áž¢áŸ’នកមិនអាចបើកបានទ០។ ប្រហែលជាកម្មវិធីផ្សáŸáž„កំពុងប្រើវាហើយ។ @@ -366,403 +369,411 @@ bbb.video.publish.hint.publishing = កំពុងបោះពុម្ពផ bbb.video.publish.closeBtn.accessName = បិទផ្ទាំងសម្រាប់ការកំណážáŸ‹ážœáŸáž”ážáŸáž˜ bbb.video.publish.closeBtn.label = បោះបង់ bbb.video.publish.titleBar = ផ្សព្វផ្សាយផ្ទាំងវáŸáž”ážáŸáž˜ -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = បិទការស្ទ្រីមសម្រាប់ៈ {0} +bbb.video.message.browserhttp = ម៉ាស៊ីនបម្រើ​​នáŸáŸ‡â€‹â€‹áž˜áž·áž“​បាន​​កំណážáŸ‹â€‹â€‹ážšáž…នា​​សម្ពáŸáž“្ធ​ជាមួយ SSL ដូច្នáŸáŸ‡ {0} បិទ​ការ​ចែក​រំលែក​វáŸáž”ážáŸáž˜â€‹ážšáž”ស់អ្នក +bbb.screensharePublish.title = ចែករំលែកផ្ទាំងអáŸáž€áŸ’រង់៖ ការបង្ហាញជាមុនរបស់អ្នកធ្វើបទបង្ហាញ +bbb.screensharePublish.pause.tooltip = ផ្អាកការចែករំលែកអáŸáž€áŸ’រង់ +bbb.screensharePublish.pause.label = ផ្អាក +bbb.screensharePublish.restart.tooltip = បន្ážáž€áž¶ážšáž…ែករំលែក​អáŸáž€áŸ’រង់ +bbb.screensharePublish.restart.label = បន្ហ+bbb.screensharePublish.maximizeRestoreBtn.toolTip = អ្នកមិនអាច​ពង្រីក​ផ្ទាំង​នáŸáŸ‡áž”ានទáŸáŸ” +bbb.screensharePublish.closeBtn.toolTip = ឈប់ចែករំលែក ហើយបិទ +bbb.screensharePublish.closeBtn.accessibilityName = ឈប់ចែករំលែក​​​អáŸáž€áŸ’រង់​​ ហើយបិទ​ផ្ទាំង​ផ្សាយ +bbb.screensharePublish.minimizeBtn.toolTip = បង្រួមផ្ទាំង +bbb.screensharePublish.minimizeBtn.accessibilityName = បង្រួម​ផ្ទាំង​ផ្សាយសម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = ពង្រីក​ផ្ទាំង​ផ្សាយសម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.screensharePublish.commonHelpText.text = ជំហានážáž¶áž„​ក្រោម​នឹង​ជួយ​អ្នក​ក្នុង​ការចាប់ផ្ážáž¾áž˜áž…ែករំលែក​អáŸáž€áŸ’រង់​ (ទាមទារ Java)។ +bbb.screensharePublish.helpButton.toolTip = ជំនួយ +bbb.screensharePublish.helpButton.accessibilityName = ជំនួយ (បើកវីដáŸáž¢áž¼áž”ង្រៀនក្នុង​ផ្ទាំង​ážáŸ’មី) +bbb.screensharePublish.helpText.PCIE1 = 1. ជ្រើស 'បើក' +bbb.screensharePublish.helpText.PCIE2 = 2. ទទួលយកសញ្ញាបáŸážáŸ’ážš bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = 1. ចុច 'យល់ព្រម' ដើុម្បីដំណើរការ +bbb.screensharePublish.helpText.PCFirefox2 = 2. ទទួលយកសញ្ញាបáŸážáŸ’ážš bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = 1. រកមើល 'screenshare.jnlp' +bbb.screensharePublish.helpText.PCChrome2 = 2. ចុច​ដើម្បី​បើក​ +bbb.screensharePublish.helpText.PCChrome3 = 3. ទទួលយកសញ្ញាបáŸážáŸ’ážš +bbb.screensharePublish.helpText.MacSafari1 = 1. រកមើល 'screenshare.jnlp' +bbb.screensharePublish.helpText.MacSafari2 = 2. ជ្រើស 'បង្ហាញក្នុង Finder' +bbb.screensharePublish.helpText.MacSafari3 = 3. ចុចស្ážáž¶áŸ† ហើយ ជ្រើស 'Open' +bbb.screensharePublish.helpText.MacSafari4 = 4. ជ្រើស 'Open' (ប្រសិនគáŸážŸáž½ážš) +bbb.screensharePublish.helpText.MacFirefox1 = 1. ជ្រើស 'Save File' (ប្រសិនគáŸážŸáž½ážš) +bbb.screensharePublish.helpText.MacFirefox2 = 2. ជ្រើស 'បង្ហាញក្នុង Finder' +bbb.screensharePublish.helpText.MacFirefox3 = 3. ចុចស្ážáž¶áŸ† ហើយ ជ្រើស 'Open' +bbb.screensharePublish.helpText.MacFirefox4 = 4. ជ្រើស 'Open' (ប្រសិនគáŸážŸáž½ážš) +bbb.screensharePublish.helpText.MacChrome1 = 1. រកមើល 'screenshare.jnlp' +bbb.screensharePublish.helpText.MacChrome2 = 2. ជ្រើស 'បង្ហាញក្នុង Finder' +bbb.screensharePublish.helpText.MacChrome3 = 3. ចុចស្ážáž¶áŸ† ហើយ ជ្រើស 'Open' +bbb.screensharePublish.helpText.MacChrome4 = 4. ជ្រើស 'Open' (ប្រសិនគáŸážŸáž½ážš) +bbb.screensharePublish.helpText.LinuxFirefox1 = 1. ចុច 'យល់ព្រម' ដើុម្បីដំណើរការ +bbb.screensharePublish.helpText.LinuxFirefox2 = 2. ទទួលយកសញ្ញាបáŸážáŸ’ážš bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.screensharePublish.helpText.LinuxChrome1 = 1. រកមើល 'screenshare.jnlp' +bbb.screensharePublish.helpText.LinuxChrome2 = 2. ចុច​ដើម្បី​បើក​ +bbb.screensharePublish.helpText.LinuxChrome3 = 3. ទទួលយកសញ្ញាបáŸážáŸ’ážš +bbb.screensharePublish.shareTypeLabel.text = ចែករំលែកៈ +bbb.screensharePublish.shareType.fullScreen = áž–áŸáž‰â€‹áž¢áŸáž€áŸ’រង់ +bbb.screensharePublish.shareType.region = ážáŸ†áž”ន់ +bbb.screensharePublish.pauseMessage.label = ការចែករំលែក​អáŸáž€áŸ’រង់​កំពុងបានផ្អាក +bbb.screensharePublish.startFailed.label = មិនបានរកឃើញការផ្ážáž¾áž˜áž“ៃការចែករំលែក​អáŸáž€áŸ’រង់ +bbb.screensharePublish.restartFailed.label = មិនបានរកឃើញការផ្ážáž¾áž˜áž‡áž¶ážáŸ’មីនៃការចែករំលែក​អáŸáž€áŸ’រង់ +bbb.screensharePublish.jwsCrashed.label = កម្មវិធីសម្រាប់ចែករំលែកអáŸáž€áŸ’រង់បាន​បិទដោយមិនបានážáŸ’រៀម។ +bbb.screensharePublish.commonErrorMessage.label = ជ្រើស "បោះបង់" ហើយព្យាយាមម្ážáž„ទៀហ+bbb.screensharePublish.tunnelingErrorMessage.one = កម្មវិធីចែករំលែក​អáŸáž€áŸ’រង់​មិនអាចដំណើរការទáŸáŸ” +bbb.screensharePublish.tunnelingErrorMessage.two = សូមព្យាយាមដំណើរការម៉ាស៊ីនភ្ញៀវជាážáŸ’មី (ដោយចុចប៊ូážáž»áž„​ Refresh ក្នុងកម្មវិធីរុករករបស់អ្នក)។ ប្រសិនបើអ្នកនៅážáŸ‚ឃើញពាក្យ '[ Tunneling ]' នៅជ្រុងážáž¶áž„ក្រោមផ្នែកážáž¶áž„ស្ážáž¶áŸ† សូមព្យាយាមážáž—្ជាប់ដោយប្រើ​ទីážáž¶áŸ†áž„​បណ្ážáž¶áž‰â€‹ážáŸ’មី។ +bbb.screensharePublish.cancelButton.label = បោះបង់ +bbb.screensharePublish.startButton.label = ចាប់​ផ្ážáž¾áž˜â€‹ +bbb.screensharePublish.stopButton.label = ឈប់ +bbb.screensharePublish.stopButton.toolTip = ឈប់​ចែក​រំលែក​អáŸáž€áŸ’រង់​របស់​អ្នក​ +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = អ្នកប្រើ Chrome ក្នុងជំនាន់ážáŸ’មីបំផុហážáŸ‚​មិន​បាន​ដំឡើង​កម្មវិធី​បន្ážáŸ‚ម​សម្រាប់ចែក​រំលែក​អáŸáž€áŸ’រង់​ទáŸáŸ” +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = បន្ទាប់​ពី​អ្នក​បាន​ដំឡើង​កម្មវិធី​បន្ážáŸ‚ម​សម្រាប់​ចែករំលែក​អáŸáž€áŸ’រង់​​ហើយ សូមចុច "ព្យាយាមម្ážáž„ទៀáž" ážáž¶áž„ក្រោម។ +bbb.screensharePublish.WebRTCExtensionFailFallback.label = រកមិនឃើញកម្មវិធីបន្ážáŸ‚មសម្រាប់ចែករំលែក​អáŸáž€áŸ’រង់​ទáŸáŸ” សូមចុចទីនáŸáŸ‡ážŠáž¾áž˜áŸ’បី​ព្យាយាម​ដំឡើង​ម្ážáž„ទៀហឬ ជ្រើស 'ប្រើកម្មវិធីចែករំលែក​អáŸáž€áŸ’រង់​ប្រភáŸáž‘ Java'​ ។ +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = អ្នកដូចជាកំពុងប្រើការរុករកក្នុងលក្ážážŽáŸˆáž¢áž“ាមិក ឬ ឯកជន។ អ្នកážáŸ’រូវប្រាកដážáž¶áž€áŸ’នុង​ការកំណážáŸ‹â€‹ážŸáž˜áŸ’រាប់កម្មវិធីបន្ážáŸ‚មរបស់អ្នក អ្នកបានអនុញ្ញាážáž±áŸ’យកម្មវិធីបន្ážáŸ‚មដំណើរការនៅក្នុងការរុករកអនាមិក / ឯកជន។ +bbb.screensharePublish.WebRTCExtensionInstallButton.label = ចុចទីនáŸáŸ‡ážŠáž¾áž˜áŸ’បីដំឡើង +bbb.screensharePublish.WebRTCUseJavaButton.label = ប្រើកម្មវិធីចែករំលែកអáŸáž€áŸ’រង់ប្រភáŸáž‘ Java +bbb.screensharePublish.WebRTCVideoLoading.label = វីដáŸáž¢áž¼áž€áŸ†áž–ុងដំណើរការ... សូមចាំ +bbb.screensharePublish.sharingMessage= áž“áŸáŸ‡áž‡áž¶â€‹áž¢áŸáž€áŸ’រង់​របស់អ្នកដែល​កំពុង​ážáŸ’រូវបាន​ចែក​រំលែក​ជាមួយអ្នក​ដទៃ​ +bbb.screenshareView.title = ចែករំលែក​អáŸáž€áŸ’រង់ +bbb.screenshareView.fitToWindow = ដាក់ឲ្យសមនឹង​ផ្ទាំង +bbb.screenshareView.actualSize = បង្ហាញទំហំ​ពិហ+bbb.screenshareView.minimizeBtn.accessibilityName = បង្រួម​ផ្ទាំង​មើល​សម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = ពង្រីក​ផ្ទាំង​មើល​សម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.screenshareView.closeBtn.accessibilityName = បិទ​ផ្ទាំង​មើល​សម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.toolbar.phone.toolTip.start = បើក​សម្លáŸáž„​ (ម៉ីក្រូហ្វូន ឬគ្រាន់ážáŸ‚ស្ážáž¶áž”់) +bbb.toolbar.phone.toolTip.stop = បិទសម្លáŸáž„ +bbb.toolbar.phone.toolTip.mute = ឈប់​ស្ážáž¶áž”់​សន្និសិទ +bbb.toolbar.phone.toolTip.unmute = ចាប់ផ្ážáž¾áž˜â€‹ážŸáŸ’ážáž¶áž”់​សន្និសិទ +bbb.toolbar.phone.toolTip.nomic = រកមិនឃើញមីក្រូហ្វូន +bbb.toolbar.deskshare.toolTip.start = បើក​ផ្ទាំង​សម្រាប់ចែករំលែក​​អáŸáž€áŸ’រង់​ +bbb.toolbar.deskshare.toolTip.stop = ឈប់​ចែក​រំលែក​អáŸáž€áŸ’រង់​របស់​អ្នក​ +bbb.toolbar.sharednotes.toolTip = បើកកំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.toolbar.video.toolTip.start = ចែករំលែក​វáŸáž”ážáŸáž˜â€‹ážšáž”ស់​អ្នក​ +bbb.toolbar.video.toolTip.stop = ឈប់​ចែក​រំលែក​វáŸáž”ážáŸáž˜â€‹â€‹ážšáž”ស់​អ្នក​ +bbb.layout.addButton.label = បន្ážáŸ‚ម +bbb.layout.addButton.toolTip = បន្ážáŸ‚ម​ប្លង់​ផ្ទាល់ážáŸ’លូនទៅក្នុងបញ្ជី +bbb.layout.overwriteLayoutName.title = ជំនួស​ប្លង់​ +bbb.layout.overwriteLayoutName.text = ឈ្មោះážáŸ’រូវបានប្រើហើយ។ ážáž¾áž¢áŸ’នកចង់ជំនួស? +bbb.layout.broadcastButton.toolTip = អនុវážáŸ’ážâ€‹áž”្លង់​បច្ចុប្បន្នទៅអ្នកមើលទាំងអស់​ +bbb.layout.combo.toolTip = ប្ážáž¼ážšâ€‹áž”្លង់​របស់​អ្នក +bbb.layout.loadButton.toolTip = ដំណើរការ​​ប្លង់​ពី​ឯកសារ​មួយ +bbb.layout.saveButton.toolTip = រក្សាទុក​ប្លង់​ក្នុងឯកសារ​មួយ​ +bbb.layout.lockButton.toolTip = ចាក់​សោរ​ប្លង់​ +bbb.layout.combo.prompt = អនុវážáŸ’ážâ€‹áž”្លង់ +bbb.layout.combo.custom = * ប្លង់​ផ្ទាល់ážáŸ’លួន +bbb.layout.combo.customName = ប្លង់​ផ្ទាល់ážáŸ’លួន +bbb.layout.combo.remote = ពីចម្ងាយ +bbb.layout.window.name = ឈ្មោះ​ប្លង់​ +bbb.layout.window.close.tooltip = បិទ +bbb.layout.window.close.accessibilityName = បិទ​ផ្ទាំង​សម្រាប់បន្ážáŸ‚ម​ប្លង់​ážáŸ’មី​ +bbb.layout.save.complete = ប្លង់​បានរក្សាទុក​ដោយ​ជោគ​ជáŸáž™ +bbb.layout.save.ioerror = ប្លង់​មិនážáŸ’រូវ​បានរក្សាទុក​ទáŸáŸ” សូមរក្សាទុក​ម្ážáž„​ទៀážáŸ”​ +bbb.layout.load.complete = ប្លង់​បានដំណើរការដោយ​ជោគ​ជáŸáž™ +bbb.layout.load.failed = មិនអាចដំណើរការប្លង់ទ០+bbb.layout.sync = ប្លង់​របស់​អ្នក​ážáŸ’រូវ​បាន​ផ្ញើទៅអ្នក​ចូល​រួម​ទាំង​អស់​ +bbb.layout.name.defaultlayout = ប្លង់​លំនាំដើម +bbb.layout.name.closedcaption = អážáŸ’ážáž”ទពីសម្លáŸáž„ +bbb.layout.name.videochat = ការជជែកជាវីដáŸáž¢áž¼ +bbb.layout.name.webcamsfocus = ប្រជុំដោយប្រើវáŸáž”ážáŸáž˜ +bbb.layout.name.presentfocus = ប្រជុំដោយប្រើបទបង្ហាញ +bbb.layout.name.presentandusers = បទបង្ហាញ និងអ្នកប្រើ +bbb.layout.name.lectureassistant = ជំនួយការសម្រាប់ការបង្រៀន +bbb.layout.name.lecture = ការ​បង្រៀន​ +bbb.layout.name.sharednotes = កំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.layout.addCurrentToFileWindow.title = បន្ážáŸ‚ម​ប្លង់​​បច្ចុប្បន្នក្នុងឯកសារ​មួយ​ +bbb.layout.addCurrentToFileWindow.text = ážáž¾áž¢áŸ’នកចង់រក្សាទុក​ប្លង់​​បច្ចុប្បន្នក្នុងឯកសារ​មួយ​ទáŸ? +bbb.layout.denyAddToFile.toolTip = បដិសáŸáž’ការបន្ážáŸ‚ម​ប្លង់​បច្ចុប្បន្ន +bbb.layout.confirmAddToFile.toolTip = អះអាងពីការបន្ážáŸ‚ម​ប្លង់​បច្ចុប្បន្ន +bbb.highlighter.toolbar.pencil = ážáŸ’មៅដៃ +bbb.highlighter.toolbar.pencil.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​ážáŸ’មៅដៃ +bbb.highlighter.toolbar.ellipse = រង្វង់ +bbb.highlighter.toolbar.ellipse.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​រង្វង់ +bbb.highlighter.toolbar.rectangle = áž…ážáž»áž€áŸ„ណកែង +bbb.highlighter.toolbar.rectangle.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​ចážáž»áž€áŸ„ណកែង +bbb.highlighter.toolbar.panzoom = អូស និងពង្រីក +bbb.highlighter.toolbar.panzoom.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​អូស និងពង្រីក +bbb.highlighter.toolbar.clear = លុបចំណារពន្យល់ទាំងអស់ +bbb.highlighter.toolbar.clear.accessibilityName = សម្អាážáž‘ំពáŸážšáž€áŸ’ážáž¶ážšážáŸ€áž“ +bbb.highlighter.toolbar.undo = មិនធ្វើចំណារពន្យល់វិញ +bbb.highlighter.toolbar.undo.accessibilityName = មិនធ្វើរូបរាងចុងក្រោយលើក្ážáž¶ážšážáŸ€áž“វិញ +bbb.highlighter.toolbar.color = ជ្រើសពណ៌ +bbb.highlighter.toolbar.color.accessibilityName = ពណ៌គំនូរលើក្ážáž¶ážšážáŸ€áž“ +bbb.highlighter.toolbar.thickness = ប្ážáž¼ážšáž€áž˜áŸ’រាស់ +bbb.highlighter.toolbar.thickness.accessibilityName = កម្រាស់គំនូរលើ​ក្ážáž¶ážšážáŸ€áž“​ +bbb.highlighter.toolbar.multiuser = គូរគ្នាច្រើន bbb.logout.button.label = ព្រម -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished +bbb.logout.appshutdown = កម្មវិធី​ក្នុង​ម៉ាស៊ីនបម្រើ​បានបិទដំណើរការ +bbb.logout.asyncerror = មានកំហុស Async មួយ +bbb.logout.connectionclosed = ការភ្ជាប់ទៅ​កាន់​ម៉ាស៊ីនបម្រើ​បានបិទ +bbb.logout.connectionfailed = ការភ្ជាប់ទៅ​កាន់​ម៉ាស៊ីនបម្រើ​បាន​បញ្ចប់ +bbb.logout.rejected = ការភ្ជាប់ទៅ​កាន់​ម៉ាស៊ីនបម្រើ​បាន​បដិសáŸáž’ +bbb.logout.invalidapp = មិនមានកម្មវិធី red5 ទ០+bbb.logout.unknown = ម៉ាស៊ីនភ្ញៀវ​របស់អ្នក​បានបាážáŸ‹áž”ង់​ážáŸ†ážŽâ€‹áž—្ជាប់​ជាមួយ​ម៉ាស៊ីនបម្រើ +bbb.logout.guestkickedout = អ្នកសម្របសម្រួល​មិន​អនុញ្ញាážâ€‹áž²áŸ’យ​អ្នក​ចូល​រួម​ការប្រជុំ​នáŸáŸ‡áž‘áŸâ€‹ +bbb.logout.usercommand = អ្នកបានចáŸáž‰áž–ីសន្និសិទ +bbb.logour.breakoutRoomClose = ផ្ទាំង​នៃ​កម្មវិធីរុករក​របស់អ្នក​នឹង​ážáŸ’រូវ​បិទ​ +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = ប្រសិន​បើ​អ្នក​មិន​បាន​រំពឹង​ការ​ចាក​ចáŸáž‰â€‹áž“áŸáŸ‡â€‹áž‘០សូម​ចុច​ប៊ូážáž»áž„​ážáž¶áž„​ក្រោម​ដើម្បី​ភ្ជាប់​​ម្ážáž„​ទៀážáŸ” +bbb.logout.refresh.label = ភ្ជាប់​ម្ážáž„​ទៀហ+bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = ការកំណážáŸ‹ +bbb.settings.ok = ព្រម +bbb.settings.cancel = បោះបង់ +bbb.settings.btn.toolTip = បើក​ផ្ទាំង​សម្រាប់​ការកំណážáŸ‹ážšáž…នា​សម្ពáŸáž“្ធ +bbb.logout.confirm.title = អះអាងពីការចáŸáž‰ +bbb.logout.confirm.message = ážáž¾áž¢áŸ’នកប្រាកដជាចង់ចាកចáŸáž‰â€‹áž˜áŸ‚áž“áž‘áŸ? +bbb.logout.confirm.endMeeting = បាទ/ចាស ហើយបញ្ចប់ការប្រជុំ +bbb.logout.confirm.yes = បាទ/ចាស +bbb.logout.confirm.no = ទ០+bbb.endSession.confirm.title = ព្រមាន +bbb.endSession.confirm.message = ប្រសិនបើ​អ្នក​បិទ​វគ្គ​នáŸáŸ‡ អ្នកចូលរួមទាំងអស់​នឹង​ážáŸ’រូវ​កាážáŸ‹â€‹áž•áŸ’ážáž¶áž…់។ ážáž¾áž¢áŸ’នកចង់បន្ážáž‘áŸ? +bbb.connection.failure=បានរកឃើញ​បញ្ហា​ក្នុង​ការ​ážâ€‹áž—្ជាប់​ +bbb.connection.reconnecting=កំពុងភ្ជាប់​ម្ážáž„​ទៀហ+bbb.connection.reestablished=បានážáž—្ជាប់​ជាážáŸ’មី bbb.connection.bigbluebutton=BigBlueButton bbb.connection.sip=SIP -bbb.connection.video=Video +bbb.connection.video=វីដáŸáž¢áž¼ bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes +bbb.notes.title = ចំណាំ bbb.notes.cmpColorPicker.toolTip = ពណ៌អក្សរ -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.notes.saveBtn = រក្សាទុក +bbb.notes.saveBtn.toolTip = រក្សាទុកចំណាំ +bbb.sharedNotes.title = កំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.sharedNotes.quickLink.label = ផ្ទាំង​សម្រាប់កំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.sharedNotes.createNoteWindow.label = ឈ្មោះ​កំណážáŸ‹â€‹áž…ំណាំ​ +bbb.sharedNotes.createNoteWindow.close.tooltip = បិទ +bbb.sharedNotes.createNoteWindow.close.accessibilityName = បិទ​ផ្ទាំង​សម្រាប់​បង្កើážâ€‹áž€áŸ†ážŽážáŸ‹â€‹áž…ំណាំ​ážáŸ’មី​ +bbb.sharedNotes.typing.single = {0} កំពុងវាយអážáŸ’ážáž”áž‘... +bbb.sharedNotes.typing.double = {0} áž“áž·áž„ {1} កំពុងវាយអážáŸ’ážáž”áž‘... +bbb.sharedNotes.typing.multiple = មនុស្សជាច្រើនកំពុងវាយអážáŸ’ážáž”áž‘... +bbb.sharedNotes.save.toolTip = រក្សាទុក​កំណážáŸ‹áž…ំណាំ​ក្នុងឯកសារ​មួយ​ +bbb.sharedNotes.save.complete = រក្សាទុកកំណážáŸ‹áž…ំណាំបានជោគជáŸáž™ +bbb.sharedNotes.save.ioerror = កំណážáŸ‹áž…ំណាំ​មិនážáŸ’រូវ​បានរក្សាទុក​ទáŸáŸ” សូមរក្សាទុក​ម្ážáž„​ទៀážáŸ”​ +bbb.sharedNotes.save.htmlLabel = អážáŸ’ážáž”ទមានទ្រង់ទ្រាយ (.html) +bbb.sharedNotes.save.txtLabel = អážáŸ’ážáž”ទ​ធម្មážáž¶â€‹ (.txt) +bbb.sharedNotes.new.label = បង្កើហ+bbb.sharedNotes.new.toolTip = បង្កើážáž€áŸ†ážŽážáŸ‹áž…ំណាំបន្ážáŸ‚មទៀហ+bbb.sharedNotes.limit.label = បានដល់​កម្រិážâ€‹ážŸáž˜áŸ’រាប់​កំណážáŸ‹áž…ំណាំ​។ +bbb.sharedNotes.clear.label = សម្អាážáž€áŸ†ážŽážáŸ‹áž…ំណាំ​នáŸáŸ‡â€‹ +bbb.sharedNotes.undo.toolTip = ឈប់ធ្វើការកែប្រែឡើងវិញ +bbb.sharedNotes.redo.toolTip = ធ្វើការកែប្រែឡើងវិញ +bbb.sharedNotes.toolbar.toolTip = របារធ្វើទ្រង់ទ្រាយអážáŸ’ážáž”áž‘ +bbb.sharedNotes.settings.toolTip = ការកំណážáŸ‹â€‹ážŸáž˜áŸ’រាប់​ចំណាំ​រួមគ្នា​ +bbb.sharedNotes.clearWarning.title = សម្អាážáž€áŸ†ážŽážáŸ‹áž…ំណាំរួមគ្នា +bbb.sharedNotes.clearWarning.message = សកម្មភាព​នáŸáŸ‡â€‹áž“ឹង​លុប​សម្អាážâ€‹áž€áŸ†ážŽážáŸ‹â€‹áž…ំណាំ​ក្នុង​ផ្ទាំង​នáŸáŸ‡â€‹ážŸáž˜áŸ’រាប់​គ្រប់​គ្នា ហើយមិនអាចážáŸ’រឡប់​ក្រោយ​ទáŸáŸ” ážáž¾áž¢áŸ’នក​ពិážâ€‹áž‡áž¶â€‹áž…ង់​សម្អាážâ€‹áž€áŸ†ážŽážáŸ‹â€‹áž…ំណាំ​ទាំង​នáŸáŸ‡â€‹áž˜áŸ‚ន​ទáŸ? +bbb.sharedNotes.additionalNotes.closeWarning.title = បិទកំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.sharedNotes.additionalNotes.closeWarning.message = សកម្មភាព​នáŸáŸ‡â€‹áž“ឹង​បំផ្លាញ​​កំណážáŸ‹â€‹áž…ំណាំ​ក្នុង​ផ្ទាំង​នáŸáŸ‡â€‹ážŸáž˜áŸ’រាប់​គ្រប់​គ្នា ហើយមិនអាចážáŸ’រឡប់​ក្រោយ​ទáŸáŸ” ážáž¾áž¢áŸ’នក​ពិážâ€‹áž‡áž¶â€‹áž…ង់​សម្អាážâ€‹áž€áŸ†ážŽážáŸ‹â€‹áž…ំណាំ​ទាំង​នáŸáŸ‡â€‹áž˜áŸ‚ន​ទáŸ? +bbb.sharedNotes.messageLengthWarning.title = លើសកំណážáŸ‹ážŸáž˜áŸ’រាប់ការផ្លាស់ប្ážáž¼ážšážáž½áž¢áž€áŸ’សរហើយ +bbb.sharedNotes.messageLengthWarning.text = ការផ្លាស់ប្ážáž¼ážšâ€‹ážšáž”ស់​អ្នកលើការកំណážáŸ‹ {0} ហើយ។ ព្យាយាមកាážáŸ‹áž”ន្ážáž™áž€áž¶ážšáž•áŸ’លាស់ប្ážáž¼ážšážšáž”ស់អ្នក។ +bbb.sharedNotes.remaining.tooltip = ទំហំ​នៅសល់​សម្រាប់​កំណážáŸ‹áž…ំណាំរួមគ្នា +bbb.sharedNotes.full.tooltip = ដល់ចំណុះហើយ (ព្យាយាមលុបអážáŸ’ážáž”áž‘ážáŸ’លះ) +bbb.settings.deskshare.instructions = ជ្រើស Allow លើផ្ទាំង​ដែលលáŸáž…ឡើងដើម្បីពិនិážáŸ’áž™ážáž¶áž€áž¶ážšáž…ែករំលែកអáŸáž€áŸ’រង់កំពុងដំណើរការážáŸ’រឹមážáŸ’រូវសម្រាប់អ្នក +bbb.settings.deskshare.start = áž–áž·áž“áž·ážáŸ’យការចែករំលែក​អáŸáž€áŸ’រង់​ +bbb.settings.voice.volume = សកម្មភាពមីក្រូហ្វូន +bbb.settings.java.label = កំហុសក្នុងជំនាន់កម្មវិធី Java +bbb.settings.java.text = អ្នកបានដំឡើងកម្មវិធី Java {0} ប៉ុន្ážáŸ‚អ្នកážáŸ’រូវការយ៉ាងហោចណាស់ជំនាន់ {1} ដើម្បីអាចចែករំលែកអáŸáž€áŸ’រង់បាន។ ប៊ូážáž»áž„ážáž¶áž„ក្រោមនឹងដំឡើងកម្មវិធី Java JRE ជំនាន់ចុងក្រោយ​បង្អស់​។ +bbb.settings.java.command = ដំឡើងកម្មវិធី Java ážáŸ’មីបំផុហ+bbb.settings.flash.label = កំហុសក្នុងជំនាន់កម្មវិធី Flash +bbb.settings.flash.text = អ្នកបានដំឡើងកម្មវិធី Flash {0} ប៉ុន្ážáŸ‚អ្នកážáŸ’រូវការយ៉ាងហោចណាស់ជំនាន់ {1} ដើម្បីអាចដំណើរការ BigBlueButton បានážáŸ’រឹមážáŸ’រូវ។ ប៊ូážáž»áž„ážáž¶áž„ក្រោមនឹងដំឡើងកម្មវិធី Adobe Flash ជំនាន់ចុងក្រោយ​បង្អស់​។ +bbb.settings.flash.command = ដំឡើងកម្មវិធី Flash ážáŸ’មីបំផុហ+bbb.settings.isight.label = កំហុសវáŸáž”ážáŸáž˜ iSight +bbb.settings.isight.text = ប្រសិនបើអ្នកមានបញ្ហាជាមួយ​វáŸáž”ážáŸáž˜ iSight របស់អ្នក វាប្រហែលជាដោយសារážáŸ‚អ្នកកំពុងដំណើរការប្រពáŸáž“្ធប្រážáž·áž”ážáŸ’ážáž·áž€áž¶ážš OS X 10.6.5 ដែលážáŸ’រូវបានគáŸážŠáž¹áž„ážáž¶áž˜áž¶áž“បញ្ហាជាមួយ Flash capture video ពី ážœáŸáž”ážáŸáž˜ iSight ។ \nដើម្បីដោះស្រាយបញ្ហានáŸáŸ‡ ážáŸ†ážŽážáž¶áž„ក្រោមនáŸáŸ‡áž“ឹងážáŸ†áž¡áž¾áž„កំណែážáŸ’មីរបស់ Flash Player ឬធ្វើឱ្យ Mac របស់អ្នកទាន់សមáŸáž™ +bbb.settings.isight.command = ដំឡើង Flash 10.2 RC2 +bbb.settings.warning.label = ព្រមាន +bbb.settings.warning.close = បិទការព្រមាននáŸáŸ‡ +bbb.settings.noissues = មិនមានបញ្ហាធ្ងន់ធ្ងរទ០+bbb.settings.instructions = ទទួលយកការស្នើសុំ​ប្រើ​​វáŸáž”ážáŸáž˜â€‹â€‹áž–ី Flash។ ប្រសិនបើឧបករណáŸáž”ញ្ចáŸáž‰ážáŸ’រូវជាមួយនឹងអ្វីដែលរំពឹងទុក មាននáŸáž™ážáž¶â€‹áž€áž˜áŸ’មវិធីរុករក​របស់​អ្នក​បានរៀប​ចំ​ážáŸ’រឹម​ážáŸ’រូវ​។ ážáž¶áž„ក្រោម​ជាបញ្ហាចំបងផ្សáŸáž„ទៀážâ€‹áŸ” áž–áž·áž“áž·ážáŸ’យវាដើម្បី​រក​ដំណោះ​ស្រាយ​សមរម្យ។ +bbb.bwmonitor.title = ការážáŸ’ážšáž½ážáž–áž·áž“áž·ážáŸ’យបណ្ážáž¶áž‰ +bbb.bwmonitor.upload = ផ្ទុកឡើង +bbb.bwmonitor.upload.short = ឡើងលើ +bbb.bwmonitor.download = ទាញយក +bbb.bwmonitor.download.short = ចុះក្រោម +bbb.bwmonitor.total = សរុប +bbb.bwmonitor.current = បច្ចុប្បន្ន +bbb.bwmonitor.available = មាន +bbb.bwmonitor.latency = ភាពយឺážáž™áŸ‰áž¶ážœ +ltbcustom.bbb.highlighter.toolbar.triangle = ážáŸ’រីកោណ +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​ážáŸ’រីកោណ +ltbcustom.bbb.highlighter.toolbar.line = បន្ទាážáŸ‹ +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​បន្ទាážáŸ‹ +ltbcustom.bbb.highlighter.toolbar.text = អážáŸ’ážáž”áž‘ +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ប្ážáž¼ážšâ€‹áž‘ស្សនáŸâ€‹áž‘្រនិចរបស់​ក្ážáž¶ážšážáŸ€áž“​ទៅជា​អážáŸ’ážáž”áž‘ +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = ពណ៌អក្សរ +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = ទំហំអក្សរ +bbb.caption.window.title = អážáŸ’ážáž”ទពីសម្លáŸáž„ +bbb.caption.quickLink.label = ​ផ្ទាំង​សម្រាប់​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ +bbb.caption.window.titleBar = របារចំណងជើងនៃ​ផ្ទាំង​សម្រាប់​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ +bbb.caption.window.minimizeBtn.accessibilityName = បង្រួម​ផ្ទាំង​សម្រាប់​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ +bbb.caption.window.maximizeRestoreBtn.accessibilityName = ពង្រីក​ផ្ទាំង​សម្រាប់​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ +bbb.caption.transcript.noowner = គ្មាន +bbb.caption.transcript.youowner = អ្នក +bbb.caption.transcript.pastewarning.title = ការព្រមានសម្រាប់ការបិទភ្ជាប់អážáŸ’ážáž”áž‘ážáž¶áž˜ážŸáž˜áŸ’áž›áŸáž„ +bbb.caption.transcript.pastewarning.text = មិនអាច​បិទ​ភ្ជាប់​អážáŸ’ážáž”ទ​វែងជាង {0}​ ážáž½áž‘áŸáŸ” អ្នកបានបិទភ្ជាប់ {1} ážáž½áŸ” +bbb.caption.transcript.inputArea.toolTip = ប្រអប់បញ្ចូលអážáŸ’ážáž”áž‘ážáž¶áž˜ážŸáž˜áŸ’áž›áŸáž„ +bbb.caption.transcript.outputArea.toolTip = ប្រអប់បង្ហាញអážáŸ’ážáž”áž‘ážáž¶áž˜ážŸáž˜áŸ’áž›áŸáž„ +bbb.caption.option.label = ជម្រើស +bbb.caption.option.language = ភាសាៈ +bbb.caption.option.language.tooltip = ជ្រើសភាសាសម្រាប់អážáŸ’ážáž”áž‘ážáž¶áž˜ážŸáž˜áŸ’áž›áŸáž„ +bbb.caption.option.language.accessibilityName = ជ្រើសភាសាសម្រាប់អážáŸ’ážáž”áž‘ážáž¶áž˜ážŸáž˜áŸ’áž›áŸáž„។ ប្រើគ្រាប់ចុចព្រួញសម្រាប់ផ្លាស់ទី។ +bbb.caption.option.takeowner = ធ្វើជាម្ចាស់ +bbb.caption.option.takeowner.tooltip = ធ្វើជាម្ចាស់របស់ភាសាដែលបានជ្រើស +bbb.caption.option.fontfamily = ពុម្ភអក្សរៈ +bbb.caption.option.fontfamily.tooltip = ពុម្ភអក្សរ +bbb.caption.option.fontsize = ទំហំអក្សរៈ +bbb.caption.option.fontsize.tooltip = ទំហំអក្សរ +bbb.caption.option.backcolor = ពណ៌ផ្ទៃážáž¶áž„ក្រោយៈ +bbb.caption.option.backcolor.tooltip = ពណ៌ផ្ទៃážáž¶áž„ក្រោយ +bbb.caption.option.textcolor = ពណ៌អក្សរៈ +bbb.caption.option.textcolor.tooltip = ពណ៌អក្សរ -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = រូចរាល់ -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = អ្នកបានមកដល់សារដំបូងបង្អស់ហើយ។ +bbb.accessibility.chat.chatBox.reachedLatest = អ្នកបានមកដល់សារចុងក្រោយបង្អស់ហើយ។ +bbb.accessibility.chat.chatBox.navigatedFirst = អ្នកបានផ្លាស់ទីដល់សារដំបូងបង្អស់ហើយ។ +bbb.accessibility.chat.chatBox.navigatedLatest = អ្នកបានផ្លាស់ទីដល់សារចុងក្រោយបង្អស់ហើយ។ +bbb.accessibility.chat.chatBox.navigatedLatestRead = អ្នកបានផ្លាស់ទីដល់សារážáŸ’មីបំផុážážŠáŸ‚លអ្នកបានអានហើយ។ +bbb.accessibility.chat.chatwindow.input = អážáŸ’ážáž”ទបញ្ចូលសម្រាប់ការជជែក +bbb.accessibility.chat.chatwindow.audibleChatNotification = ដំណឹងជាសម្លáŸáž„សម្រាប់ការជជែក +bbb.accessibility.chat.chatwindow.publicChatOptions = ជម្រើសសម្រាប់ការ​ជជែកសាធារណៈ +bbb.accessibility.chat.initialDescription = សូមប្រើគ្រាប់ចុចព្រួញដើម្បីផ្លាស់ទីក្នុងសារជជែក។ -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = អážáŸ’ážáž”ទដែលបានបញ្ចូលក្នុងចំណាំ -bbb.shortcuthelp.title = ក្ážáž¶ážšáž…ុចសំរាប់ផ្លូវកាážáŸ‹ -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = គ្រាប់ចុចសម្រាប់ផ្លូវកាážáŸ‹ +bbb.shortcuthelp.titleBar = របារចំណងជើង​ផ្ទាំង​សម្រាប់គ្រាប់ចុចសម្រាប់ផ្លូវកាážáŸ‹ +bbb.shortcuthelp.minimizeBtn.accessibilityName = បង្រួម​​​ផ្ទាំង​សម្រាប់​ជំនួយ​ផ្លូវ​កាážáŸ‹â€‹ +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = ពង្រីក​​ផ្ទាំង​សម្រាប់​ជំនួយ​ផ្លូវ​កាážáŸ‹â€‹ +bbb.shortcuthelp.closeBtn.accessibilityName = បិទ​ផ្ទាំង​សម្រាប់​ជំនួយ​ផ្លូវ​កាážáŸ‹â€‹ +bbb.shortcuthelp.dropdown.accessibilityName = ប្រភáŸáž‘​ផ្លូវ​កាážáŸ‹ +bbb.shortcuthelp.dropdown.general = ផ្លូវកាážáŸ‹áž”្រើជាសកល +bbb.shortcuthelp.dropdown.presentation = ផ្លូវកាážáŸ‹ážŸáž˜áŸ’រាប់បទបង្ហាញ +bbb.shortcuthelp.dropdown.chat = ផ្លូវកាážáŸ‹ážŸáž˜áŸ’រាប់​ការជជែក +bbb.shortcuthelp.dropdown.users = ផ្លូវកាážáŸ‹â€‹ážŸáž˜áŸ’រាប់​អ្នកប្រើ​ +bbb.shortcuthelp.dropdown.caption = ផ្លូវកាážáŸ‹ážŸáž˜áŸ’រាប់​​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ +bbb.shortcuthelp.browserWarning.text = បញ្ជីពáŸáž‰áž›áŸáž‰áž“ៃផ្លូវកាážáŸ‹áž¢áž¶áž…ប្រើបានážáŸ‚នៅក្នុង Internet Explorer áž‘áŸáŸ” +bbb.shortcuthelp.headers.shortcut = ផ្លូវកាážáŸ‹ +bbb.shortcuthelp.headers.function = ážáž½áž“ាទី bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window +bbb.shortcutkey.general.minimize.function = បង្រូម​ផ្ទាំង​បច្ចុប្បន្ន bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.maximize.function = ពង្រីក​ផ្ទាំង​បច្ចុប្បន្ន bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window +bbb.shortcutkey.flash.exit.function = ផ្ážáŸ„ážâ€‹áž…áŸáž‰â€‹áž–ី​ផ្ទាំង​ Flash bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone +bbb.shortcutkey.users.muteme.function = បិទសំឡáŸáž„ និងបើកសម្លáŸáž„មីក្រូហ្វូនរបស់អ្នក bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field +bbb.shortcutkey.chat.chatinput.function = ផ្ážáŸ„ážáž‘ៅលើប្រអប់សម្រាប់បញ្ចូលអážáŸ’ážáž”ទជជែក bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide +bbb.shortcutkey.present.focusslide.function = ផ្ážáŸ„ážâ€‹áž‘ៅ​លើ​ផ្ទាំង​ស្លាយ​ក្នុង​បទ​បង្ហាញ​ bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.whiteboard.undo.function = ឈប់ធ្វើគំនួរចុងក្រោយលើក្ážáž¶ážšážáŸ€áž“វិញ bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window +bbb.shortcutkey.focus.users.function = ផ្លាស់​ប្ážáž¼ážšáž€áž¶ážšáž•áŸ’ážáŸ„ážâ€‹áž‘ៅ​ផ្ទាំង​អ្នក​ប្រើ​ bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window +bbb.shortcutkey.focus.video.function = ផ្លាស់​ប្ážáž¼ážšáž€áž¶ážšáž•áŸ’ážáŸ„ážâ€‹áž‘ៅ​ផ្ទាំង​វáŸáž”ážáŸáž˜ bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window +bbb.shortcutkey.focus.presentation.function = ផ្លាស់ប្ážáž¼ážšáž€áž¶ážšáž•áŸ’ážáŸ„ážáž‘ៅ​ផ្ទាំង​សម្រាប់បទបង្ហាញ bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window +bbb.shortcutkey.focus.chat.function = ផ្លាស់ប្ážáž¼ážšáž€áž¶ážšáž•áŸ’ážáŸ„ážáž‘ៅ​ផ្ទាំង​សម្រាប់ការសន្ទនា bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption.function = ផ្លាស់ប្ážáž¼ážšáž€áž¶ážšáž•áŸ’ážáŸ„ážáž‘ៅ​ផ្ទាំង​សម្រាប់​អážáŸ’ážáž”ទ​ពីសម្លáŸáž„ bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window +bbb.shortcutkey.share.desktop.function = បើក​ផ្ទាំង​សម្រាប់​ចែករំលែក​អáŸáž€áŸ’រង់ bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.webcam.function = បើក​ផ្ទាំង​សម្រាប់​ចែករំលែក​វáŸáž”ážáŸáž˜ bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window +bbb.shortcutkey.shortcutWindow.function = បើក/ផ្ážáŸ„ážáž›áž¾â€‹áž•áŸ’ទាំង​សម្រាប់​ជំនួយ​ផ្លូវ​កាážáŸ‹â€‹ bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting +bbb.shortcutkey.logout.function = ចាកចáŸáž‰â€‹áž–ី​ការ​ប្រជុំ​នáŸáŸ‡â€‹ bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.raiseHand.function = លើកដៃ​អ្នក​ឡើង bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation +bbb.shortcutkey.present.upload.function = ផ្ទុកឯកសារបទបង្ហាញ​ឡើង bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide +bbb.shortcutkey.present.previous.function = ទៅផ្ទាំងស្លាយ​មុន bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides +bbb.shortcutkey.present.select.function = បង្ហាញ​ផ្ទាំងស្លាយ​ទាំង​អស់ bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide +bbb.shortcutkey.present.next.function = ទៅ​ផ្ទាំងស្លាយ​បន្ទាប់​ bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width +bbb.shortcutkey.present.fitWidth.function = ដាក់ស្លាយឲ្យសមនឹងបណ្ážáŸ„áž™ bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.fitPage.function = ដាក់ស្លាយឲ្យសមនឹងទំពáŸážš bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter +bbb.shortcutkey.users.makePresenter.function = ឲ្យអ្នកដែលបានជ្រើសធ្វើ​ជាអ្នកធ្វើបទបង្ហាញ bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person +bbb.shortcutkey.users.mute.function = បិទសម្លáŸáž„ ឬមិនបិទសម្លáŸáž„អ្នកប្រើដែលបានជ្រើស bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users +bbb.shortcutkey.users.muteall.function = បិទសម្លáŸáž„ ឬមិនបិទសម្លáŸáž„អ្នកប្រើទាំងអស់ bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter +bbb.shortcutkey.users.muteAllButPres.function = បិទសម្លáŸáž„អ្នកគ្រប់គ្នាលើកលែង​អ្នកធ្វើបទបង្ហាញ bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window +bbb.shortcutkey.users.breakoutRooms.function = ផ្ទាំង​សម្រាប់បន្ទប់​បំបែក​ bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list +bbb.shortcutkey.users.focusBreakoutRooms.function = ផ្ážáŸ„ážáž‘ៅលើបញ្ជី​បន្ទប់​បំបែក bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room +bbb.shortcutkey.users.listenToBreakoutRoom.function = ស្ážáž¶áž”់​បន្ទប់​បំបែក​ដែលបានជ្រើស​ bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.joinBreakoutRoom.function = ចូល​បន្ទប់​បំបែក​ដែលបានជ្រើស​ bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs +bbb.shortcutkey.chat.focusTabs.function = ផ្ážáŸ„ážáž›áž¾áž•áŸ’ទាំងក្នុងការសន្ទនា bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox.function = ផ្ážáŸ„ážáž‘ៅលើបញ្ជីសារសន្ទនា bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. +bbb.shortcutkey.chat.changeColour.function = ផ្ážáŸ„ážáž›áž¾áž§áž”ករណáŸáž‡áŸ’រើសពណ៌ bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = ផ្ញើរសារសន្ទនា +bbb.shortcutkey.chat.sendMessage.function = ផ្ញើសារសន្ទនា bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate.function = បិទផ្ទាំងជជែកឯកជន bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.explanation.function = សម្រាប់ការផ្លាស់ទីក្នុងសារ អ្នកážáŸ’រូវážáŸ‚ផ្ážáŸ„ážáž‘ៅលើប្រអប់ជជែក bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message +bbb.shortcutkey.chat.chatbox.advance.function = ផ្លាស់ទី​ទៅ​សារ​បន្ទាប់​ bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message +bbb.shortcutkey.chat.chatbox.goback.function = ផ្លាស់ទី​ទៅ​សារមុន bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message +bbb.shortcutkey.chat.chatbox.repeat.function = សរសáŸážšážŸáž¶ážšáž”ច្ចុប្បន្នម្ážáž„ទៀហbbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message +bbb.shortcutkey.chat.chatbox.golatest.function = ផ្លាស់ទី​ទៅ​សារ​ចុង​ក្រោយ bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message +bbb.shortcutkey.chat.chatbox.gofirst.function = ផ្លាស់ទី​ទៅសារទីមួយ bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read +bbb.shortcutkey.chat.chatbox.goread.function = ផ្លាស់ទីទៅកាន់សារážáŸ’មីបំផុážâ€‹ážŠáŸ‚ល​អ្នក​បាន​អាន​ bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.debug.function = គ្រាប់ចុចចងសម្រាប់បំបាážáŸ‹áž€áŸ†áž ុសបណ្ážáŸ„ះអាសន្ន bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership.function = ធ្វើជាម្ចាស់របស់ភាសាដែលបានជ្រើស -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = ចាប់​ផ្ážáž¾áž˜â€‹áž€áž¶ážšážŸáŸ’ទង់​មážáž·â€‹ +bbb.polling.startButton.label = ចាប់​ផ្ážáž¾áž˜â€‹áž€áž¶ážšážŸáŸ’ទង់​មážáž·â€‹ +bbb.polling.publishButton.label = ដាក់ប្រកាស bbb.polling.closeButton.label = បិទ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False +bbb.polling.customPollOption.label = ការស្ទង់​មážáž·â€‹ážáž¶áž˜áž…áž·ážáŸ’áž... +bbb.polling.pollModal.title = លទ្ធផល​ស្ទង់​មážáž·â€‹â€‹áž•áŸ’ទាល់​ +bbb.polling.pollModal.hint = ទុកឱ្យ​ផ្ទាំង​នáŸáŸ‡áž”ើកដូច្នáŸáŸ‡ ដើម្បីឱ្យសិស្សឆ្លើយážáž”ទៅនឹងការស្ទង់មážáž·áŸ” ចុចលើប៊ូážáž»áž„ ដាក់ប្រកាស ឬ បិទ ដើម្បីបញ្ចប់ការបោះឆ្នោážáŸ” +bbb.polling.customChoices.title = បញ្ចូលជម្រើសសម្រាប់ស្ទង់​មážáž·â€‹ +bbb.polling.respondersLabel.novotes = រង់ចាំចម្លើយ +bbb.polling.respondersLabel.text = {0} នាក់បានឆ្លើយ +bbb.polling.respondersLabel.finished = រួចរាល់ +bbb.polling.answer.Yes = បាទ/ចាស +bbb.polling.answer.No = ទ០+bbb.polling.answer.True = ážáŸ’រូវ +bbb.polling.answer.False = ážáž»ážŸ bbb.polling.answer.A = A bbb.polling.answer.B = B bbb.polling.answer.C = C @@ -770,134 +781,91 @@ bbb.polling.answer.D = D bbb.polling.answer.E = E bbb.polling.answer.F = F bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.results.accessible.header = លទ្ធផលស្ទង់មážáž· +bbb.polling.results.accessible.answer = ចម្លើយ {0} ទទួលបានការគាំទ្រ {1}។ bbb.publishVideo.startPublishBtn.labelText = ចាប់ផ្ážáž¾áž˜áž…ែករំលែក bbb.publishVideo.changeCameraBtn.labelText = ប្ážáž¼ážšážœáŸáž”ážáŸáž˜ -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = ឥឡូវអ្នកជាអ្នកធ្វើបទបង្ហាញ +bbb.accessibility.alerts.madeViewer = ឥឡូវអ្នកជាមើល។ -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = ចន្លោះមើលមិនឃើញ +bbb.shortcutkey.specialKeys.left = ព្រួញ​ឆ្វáŸáž„ +bbb.shortcutkey.specialKeys.right = ព្រួញ​ស្ážáž¶áŸ† +bbb.shortcutkey.specialKeys.up = ព្រួញ​ឡើង +bbb.shortcutkey.specialKeys.down = ព្រួញចុះ +bbb.shortcutkey.specialKeys.plus = បូក +bbb.shortcutkey.specialKeys.minus = ដក -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = បិទវីដáŸáž¢áž¼áž‘ាំងអស់ +bbb.users.settings.lockAll = ចាក់សោ​អ្នក​ប្រើ​​ទាំង​អស់​ +bbb.users.settings.lockAllExcept = ចាក់សោអ្នកប្រើក្រៅពីអ្នកធ្វើបទបង្ហាញ +bbb.users.settings.lockSettings = ចាក់សោអ្នកមើល... +bbb.users.settings.breakoutRooms = បន្ទប់​បំបែក​... +bbb.users.settings.sendBreakoutRoomsInvitations = ផ្ញើការអញ្ជើញចូលរួមបន្ទប់​បំបែក​... +bbb.users.settings.unlockAll = បើកសោអ្នកមើលទាំងអស់ +bbb.users.settings.roomIsLocked = បានចាក់សោážáž¶áž˜áž›áŸ†áž“ាំដើម +bbb.users.settings.roomIsMuted = បានបិទសម្លáŸáž„ážáž¶áž˜áž›áŸ†áž“ាំដើម -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = អនុវážáŸ’áž +bbb.lockSettings.save.tooltip = អនុវážáŸ’ážâ€‹â€‹áž€áž¶ážšáž€áŸ†ážŽážáŸ‹â€‹â€‹ážŸáž˜áŸ’រាប់​ការ​ចាក់សោ​ bbb.lockSettings.cancel = បោះបង់ -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = បិទ​ផ្ទាំង​នáŸáŸ‡â€‹ážŠáŸ„យមិន​រក្សា​ទុក​ -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = ការចាក់សោ​អ្នកសម្របសម្រួល +bbb.lockSettings.privateChat = ជជែកឯកជន +bbb.lockSettings.publicChat = ជជែកសាធារណៈ +bbb.lockSettings.webcam = ážœáŸáž”ážáŸáž˜ +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = មីក្រូហ្វូន +bbb.lockSettings.layout = ប្លង់ +bbb.lockSettings.title=ចាក់សោអ្នកមើល +bbb.lockSettings.feature=លក្ážážŽáŸˆ +bbb.lockSettings.locked=បានចាក់សោ +bbb.lockSettings.lockOnJoin=ចាក់សោ​ពáŸáž›â€‹áž…ូល -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = បន្ទប់​បំបែក​ +bbb.users.breakout.updateBreakoutRooms = ប្ážáž¼ážšáž”ន្ទប់​បំបែក​ +bbb.users.breakout.timerForRoom.toolTip = áž–áŸáž›ážœáŸáž›áž¶â€‹áž“ៅសល់សម្រាប់​បន្ទប់​បំបែក​ +bbb.users.breakout.timer.toolTip = áž–áŸáž›ážœáŸáž›áž¶â€‹áž“ៅសល់សម្រាប់​​បន្ទប់​បំបែក​ +bbb.users.breakout.calculatingRemainingTime = កំពុងគណនា​ពáŸáž›ážœáŸáž›áž¶â€‹áž“ៅសល់... +bbb.users.breakout.closing = កំពុងបិទ +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = បន្ទប់ +bbb.users.breakout.roomsCombo.accessibilityName = ចំនួនបន្ទប់ážáŸ’រូវ​បង្កើážâ€‹ +bbb.users.breakout.room = បន្ទប់ +bbb.users.breakout.timeLimit = áž–áŸáž›ážœáŸáž›áž¶â€‹áž€áŸ†ážŽážáŸ‹ +bbb.users.breakout.durationStepper.accessibilityName = áž–áŸáž›ážœáŸáž›áž¶â€‹áž€áŸ†ážŽážáŸ‹â€‹áž‚áž·ážáž‡áž¶â€‹áž“ាទី​ +bbb.users.breakout.minutes = នាទី +bbb.users.breakout.record = ážáž +bbb.users.breakout.recordCheckbox.accessibilityName = ážážážŸáž€áž˜áŸ’មភាព​​បន្ទប់​បំបែក​ +bbb.users.breakout.notAssigned = មិនបានចាážáŸ‹áž…ែង +bbb.users.breakout.dragAndDropToolTip = áž–áŸážáŸŒáž˜áž¶áž“ជំនួយ: អ្នកអាចអូសនិងទម្លាក់អ្នកប្រើរវាងបន្ទប់ +bbb.users.breakout.start = ចាប់​ផ្ážáž¾áž˜â€‹ +bbb.users.breakout.invite = អញ្ជើញ +bbb.users.breakout.close = បិទ +bbb.users.breakout.closeAllRooms = បិទ​បន្ទប់​បំបែក +bbb.users.breakout.insufficientUsers = អ្នកប្រើមិនគ្រប់គ្រាន់។ អ្នកគួរážáŸ‚ដាក់អ្នកប្រើយ៉ាងហោចណាស់ម្នាក់នៅក្នុង​បន្ទប់​បំបែក​មួយ។ +bbb.users.breakout.confirm = ចូល​បន្ទប់​​បំបែក​ជា​ក្រុម +bbb.users.breakout.invited = អ្នកážáŸ’រូវបានអញ្ជើញឲ្យចូល<b>​បន្ទប់​បំបែក</b> +bbb.users.breakout.accept = ážáž¶áž˜ážšáž™áŸˆáž€áž¶ážšáž‘ទួលយក អ្នកនឹងចាកចáŸáž‰ážŠáŸ„យស្វáŸáž™áž”្រវážáŸ’ážáž·áž–ីសន្និសិទដោយប្រើសម្លáŸáž„និងវីដáŸáž¢áž¼áŸ” +bbb.users.breakout.joinSession = ចូលរួមវគ្គ +bbb.users.breakout.joinSession.accessibilityName = ចូល​វគ្គ​បន្ទប់​បំបែក​ +bbb.users.breakout.joinSession.close.tooltip = បិទ +bbb.users.breakout.joinSession.close.accessibilityName = ​បិទ​ផ្ទាំង​សម្រាប់​ចូល​បន្ទប់​បំបែក​ +bbb.users.breakout.youareinroom = អ្នក​នៅ​ក្នុង​បន្ទប់​បំបែក​ {0} +bbb.users.roomsGrid.room = បន្ទប់ +bbb.users.roomsGrid.users = អ្នកប្រើ +bbb.users.roomsGrid.action = សកម្មភាព +bbb.users.roomsGrid.transfer = បញ្ជូនសម្លáŸáž„ +bbb.users.roomsGrid.join = ចូលរួម +bbb.users.roomsGrid.noUsers = មិនមានអ្នកប្រើ​ក្នុង​បន្ទប់​នáŸáŸ‡áž‘០-bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=ភាសាážáž¶áž˜áž›áŸ†áž“ាំដើម + +bbb.alert.cancel = បោះបង់ +bbb.alert.ok = ព្រម +bbb.alert.no = ទ០+bbb.alert.yes = បាទ/ចាស diff --git a/bigbluebutton-client/locale/ko/bbbResources.properties b/bigbluebutton-client/locale/ko/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ko/bbbResources.properties +++ b/bigbluebutton-client/locale/ko/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ko_KR/bbbResources.properties b/bigbluebutton-client/locale/ko_KR/bbbResources.properties index 8404179edc21532303bb6699f0d11424a553eabb..bdd7b6e6b0e879a1d216f00d50af42f37816ee3f 100644 --- a/bigbluebutton-client/locale/ko_KR/bbbResources.properties +++ b/bigbluebutton-client/locale/ko_KR/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = 서버 ì ‘ì†ì¤‘ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = ì„œë²„ì— ì ‘ì†í•˜ì§€ 못했습니다. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = ê¸°ë¡ ë³´ê¸° -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = 화면 ìž¬ì„¤ì • -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = ì´ì „ 언어팩 설치ë˜ì–´ 있습니다. bbb.oldlocalewindow.reminder2 = 브ë¼ìš°ì €ì˜ ìºì‹œë¥¼ ì‚ì œí•˜ê³ ë‹¤ì‹œ ì‹œë„해보세요. bbb.oldlocalewindow.windowTitle = ê²½ê³ : ì´ì „ 언어팩 ë¬¸ì œ -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = bbb.micSettings.speakers.header = 스피커 테스트 bbb.micSettings.microphone.header = 마ì´í¬ 테스트 bbb.micSettings.playSound = í…ŒìŠ¤íŠ¸ìŒ ìž¬ìƒ bbb.micSettings.playSound.toolTip = ìŒì•…ì„ ìž¬ìƒí•˜ì—¬ 스피커를 테스트하세요. bbb.micSettings.hearFromHeadset = 컴퓨터 스피커가 ì•„ë‹ˆë¼ í—¤ë“œì…‹ì—ì„œ 소리가 ë“¤ë ¤ì•¼í•©ë‹ˆë‹¤. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = 예 bbb.micSettings.echoTestAudioNo = 아니오 -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = 마ì´í¬ 테스트 / 세팅 변경 bbb.micSettings.changeMic.toolTip = Flash Player 마ì´í¬ ì„¤ì • 대화 ìƒìž 열기 -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = ìŒì„± ì—°ê²° -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = 취소 -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = 오디호 íšŒì˜ ì°¸ì„ ì·¨ì†Œ -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = ìŒì„± 세팅, 윈ë„ìš°ê°€ ë‹«ížë•Œê¹Œì§€ëŠ” 오디오 세팅 ë¶€ë¶„ì— ì»¤ì„œê°€ 위치ë©ë‹ˆë‹¤. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = ë„ì›€ë§ bbb.mainToolbar.logoutBtn = 로그아웃 -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = 언어 ì„ íƒ bbb.mainToolbar.settingsBtn = 세팅 bbb.mainToolbar.settingsBtn.toolTip = 세팅 열기 bbb.mainToolbar.shortcutBtn = 단축키 -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = 축소 bbb.window.maximizeRestoreBtn.toolTip = 확대 bbb.window.closeBtn.toolTip = 닫기 @@ -166,88 +167,89 @@ bbb.users.quickLink.label = ì‚¬ìš©ìž ì°½ bbb.users.minimizeBtn.accessibilityName = ì‚¬ìš©ìž ì°½ 최소화 bbb.users.maximizeRestoreBtn.accessibilityName = ì‚¬ìš©ìž ì°½ 최대화 bbb.users.settings.buttonTooltip = 세팅 -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = ì›¹ìº ì„¸íŒ… bbb.users.settings.muteAll = ëª¨ë“ ì‚¬ìš©ìž ìŒì†Œê±° bbb.users.settings.muteAllExcept = 발표ìžë¥¼ ì œì™¸í•œ ëª¨ë“ ì‚¬ìš©ìž ìŒì†Œê±° bbb.users.settings.unmuteAll = ëª¨ë“ ì‚¬ìš©ìž ìŒì†Œê±° í•´ì œ -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = ë§í•˜ê¸° bbb.users.pushToMute.toolTip = ë‚´ ìŒì†Œê±° bbb.users.muteMeBtnTxt.talk = ìŒì†Œê±° í•´ì œ bbb.users.muteMeBtnTxt.mute = ìŒì†Œê±° bbb.users.muteMeBtnTxt.muted = ìŒì†Œê±°ë¨ -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = ì‚¬ìš©ìž ëª©ë¡. 화살표 키를 ì´ìš©í•˜ì—¬ íƒìƒ‰í•˜ì„¸ìš”. bbb.users.usersGrid.nameItemRenderer = ì´ë¦„ -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you +bbb.users.usersGrid.nameItemRenderer.youIdentifier = bbb.users.usersGrid.statusItemRenderer = ìƒíƒœ -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter +bbb.users.usersGrid.statusItemRenderer.changePresenter = bbb.users.usersGrid.statusItemRenderer.presenter = ë°œí‘œìž bbb.users.usersGrid.statusItemRenderer.moderator = ì‚¬íšŒìž -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = ë·°ì–´ -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = 미디어 bbb.users.usersGrid.mediaItemRenderer.talking = ë§í•˜ëŠ” 중 bbb.users.usersGrid.mediaItemRenderer.webcam = ì›¹ìº ê³µìœ ì¤‘ bbb.users.usersGrid.mediaItemRenderer.webcamBtn = ì›¹ìº ë³´ê¸° bbb.users.usersGrid.mediaItemRenderer.pushToTalk = {0} ìŒì†Œê±° í•´ì œ bbb.users.usersGrid.mediaItemRenderer.pushToMute = {0} ìŒì†Œê±° -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = {0} 내보내기 +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = ì›¹ìº ê³µìœ ì¤‘ bbb.users.usersGrid.mediaItemRenderer.micOff = 마ì´í¬ ë” bbb.users.usersGrid.mediaItemRenderer.micOn = 마ì´í¬ 켬 -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = 프리ì í…Œì´ì…˜ # Presentation bbb.presentation.titleWithPres = í”„ë ˆì í…Œì´ì…˜: {0} bbb.presentation.quickLink.label = í”„ë ˆì í…Œì´ì…˜ ì°½ -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = ì´ì „ 슬ë¼ì´ë“œ -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = 슬ë¼ì´ë“œ ì„ íƒ bbb.presentation.forwardBtn.toolTip = ë‹¤ìŒ ìŠ¬ë¼ì´ë“œ # Next slide bbb.presentation.maxUploadFileExceededAlert = ì—러 : íŒŒì¼ í¬ê¸°ê°€ í—ˆìš©ëœ ë²”ìœ„ë¥¼ 초과합니다. # Error: The file is bigger than what's allowed. @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = 업로드 완료. 문서를 ë³€í™˜í• ë•Œê¹Œì§€ bbb.presentation.uploaded = 업로드 ë¨. # uploaded. bbb.presentation.document.supported = 지ì›ë˜ëŠ” 문서입니다. 변환 시작합니다. # The uploaded document is supported. Starting to convert... bbb.presentation.document.converted = 문서가 성공ì 으로 변환ë˜ì—ˆìŠµë‹ˆë‹¤. # Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = ìž…ì¶œë ¥ ì—러 : 관리ìžì—게 문ì˜í•˜ì„¸ìš”. # IO Error: Please contact administrator. bbb.presentation.error.security = 보안 ì—러 : 관리ìžì—게 문ì˜í•˜ì„¸ìš”. # Security Error: Please contact administrator. bbb.presentation.error.convert.notsupported = ì—러 : 지ì›ë˜ì§€ 않는 문서입니다. 지ì›ë˜ëŠ” 문서를 업로드하세요. @@ -276,77 +278,78 @@ bbb.presentation.minimizeBtn.accessibilityName = í”„ë ˆì í…Œì´ì…˜ ì°½ 최소 bbb.presentation.maximizeRestoreBtn.accessibilityName = í”„ë ˆì í…Œì´ì…˜ ì°½ 최소화 bbb.presentation.closeBtn.accessibilityName = í”„ë ˆì í…Œì´ì…˜ ì°½ 닫기 bbb.fileupload.title = 프리ì í…Œì´ì…˜ì— íŒŒì¼ ì¶”ê°€ -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = íŒŒì¼ ì„ íƒ bbb.fileupload.selectBtn.toolTip = 파ì¼ì„ ì„ íƒí• 대화 ìƒìž 열기 bbb.fileupload.uploadBtn = 업로드 bbb.fileupload.uploadBtn.toolTip = ì„ íƒí•œ íŒŒì¼ ì—…ë¡œë“œ bbb.fileupload.deleteBtn.toolTip = 프리ì í…Œì´ì…˜ ì‚ì œ bbb.fileupload.showBtn = ë³´ì´ê¸° -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = 프리ì í…Œì´ì…˜ ë³´ì´ê¸° -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = ì¸ë„¤ì¼ ìƒì„±.. bbb.fileupload.progBarLbl = ì§„í–‰ë¥ : -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = 채팅 bbb.chat.quickLink.label = 채팅 ì°½ bbb.chat.cmpColorPicker.toolTip = 글ìžìƒ‰ bbb.chat.input.accessibilityName = 채팅 메시지 편집 í•„ë“œ bbb.chat.sendBtn.toolTip = 메시지 보내기 bbb.chat.sendBtn.accessibilityName = 채팅 메시지 보내기 -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = 공용 bbb.chat.optionsTabName = 옵션 bbb.chat.privateChatSelect = 개별 ì±„íŒ…ì„ í• ì°¸ì„ìžë¥¼ ì„ íƒ # Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = 채팅 옵션 bbb.chat.fontSize = 채팅 메시지 í°íŠ¸ 사ì´ì¦ˆ -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = 채팅 ì°½ 최소화 bbb.chat.maximizeRestoreBtn.accessibilityName = 채팅 ì°½ 최대화 bbb.chat.closeBtn.accessibilityName = 채팅 ì°½ 닫기 bbb.chat.chatTabs.accessibleNotice = ì´ íƒì— 새 메시지가 있습니다. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = ì›¹ìº ë³€ê²½ bbb.publishVideo.changeCameraBtn.toolTip = ì›¹ìº ë³€ê²½ 대화 ìƒìž 열기 bbb.publishVideo.cmbResolution.tooltip = ì›¹ìº í•´ìƒë„ ì„ íƒ bbb.publishVideo.startPublishBtn.labelText = ê³µìœ ì‹œìž‘ bbb.publishVideo.startPublishBtn.toolTip = ì›¹ìº ê³µìœ ì‹œìž‘ -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = 비디오 ë„í¬ bbb.videodock.quickLink.label = ì›¹ìº ì°½ bbb.video.minimizeBtn.accessibilityName = ì›¹ìº ì°½ 최소화 @@ -361,96 +364,98 @@ bbb.video.publish.hint.waitingApproval = ìŠ¹ì¸ ëŒ€ê¸° 중 bbb.video.publish.hint.videoPreview = ì›¹ìº ë¯¸ë¦¬ 보기 bbb.video.publish.hint.openingCamera = ì›¹ìº ì—¬ëŠ” 중... bbb.video.publish.hint.cameraDenied = ì›¹ìº ì ‘ê·¼ì´ ê¸ˆì§€ë¨ -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = 게시 중... bbb.video.publish.closeBtn.accessName = ì›¹ìº ì„¤ì • 대화 ìƒìž 닫기 bbb.video.publish.closeBtn.label = 취소 bbb.video.publish.titleBar = ì›¹ìº ì°½ 공개 -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = ì‚¬ìš©ìž ì§€ì • ë ˆì´ì•„ì›ƒì„ ëª©ë¡ì— 추가 -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = bbb.layout.loadButton.toolTip = ë ˆì´ì•„웃 파ì¼ì—ì„œ ê°€ì ¸ì˜¤ê¸° bbb.layout.saveButton.toolTip = ë ˆì´ì•„ì›ƒì„ íŒŒì¼ì— ì €ìž¥ bbb.layout.lockButton.toolTip = ë ˆì´ì•„웃 ìž ê¸ˆ @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = ë ˆì´ì•„웃 ì ìš© bbb.layout.combo.custom = * ì‚¬ìš©ìž ì§€ì • ë ˆì´ì•„웃 bbb.layout.combo.customName = ì‚¬ìš©ìž ì§€ì • ë ˆì´ì•„웃 bbb.layout.combo.remote = ì›ê²© -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = ë ˆì´ì•„웃 ì €ìž¥ì´ ì™„ë£Œë˜ì—ˆìŠµë‹ˆë‹¤. +bbb.layout.save.ioerror = bbb.layout.load.complete = ë ˆì´ì•„웃 ê°€ì ¸ì˜¤ê¸°ê°€ 완료ë˜ì—ˆìŠµë‹ˆë‹¤. -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = ì—°í•„ bbb.highlighter.toolbar.pencil.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 커서를 ì—°í•„ë¡œ ì „í™˜ bbb.highlighter.toolbar.ellipse = ë™ê·¸ë¼ë¯¸ # Circle @@ -484,105 +492,107 @@ bbb.highlighter.toolbar.rectangle = 사ê°í˜• # Rectangle bbb.highlighter.toolbar.rectangle.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 커서를 ì§ì‚¬ê°í˜•ìœ¼ë¡œ ì „í™˜ bbb.highlighter.toolbar.panzoom = ì´ë™ ë° í™•ëŒ€/축소 bbb.highlighter.toolbar.panzoom.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 커서를 ì´ë™(ìƒí•˜/좌우)으로 ì „í™˜í•˜ê³ í™•ëŒ€ -bbb.highlighter.toolbar.clear = Clear All Annotations +bbb.highlighter.toolbar.clear = bbb.highlighter.toolbar.clear.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 페ì´ì§€ 초기화 -bbb.highlighter.toolbar.undo = Undo Annotation +bbb.highlighter.toolbar.undo = bbb.highlighter.toolbar.undo.accessibilityName = 마지막 í™”ì´íŠ¸ë³´ë“œ 모양 ë˜ëŒë¦¬ê¸° bbb.highlighter.toolbar.color = 글ìžìƒ‰ ì„ íƒ # Select Color bbb.highlighter.toolbar.color.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 마커 색 bbb.highlighter.toolbar.thickness = ë‘께 변경 bbb.highlighter.toolbar.thickness.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 그리기 ë‘께 -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = 로그아웃 ë¨ +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = 서버 í”„ë¡œê·¸ëž¨ì´ ì¢…ë£Œë˜ì—ˆìŠµë‹ˆë‹¤. bbb.logout.asyncerror = 비ë™ê¸° ì—러 ë°œìƒ. bbb.logout.connectionclosed = 서버 ì—°ê²°ì´ ë‹«í˜”ìŠµë‹ˆë‹¤. -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = 서버 ì—°ê²°ì´ ê±°ë¶€ë˜ì—ˆìŠµë‹ˆë‹¤. bbb.logout.invalidapp = Red5ê°€ 설치ë˜ì§€ 않았습니다. bbb.logout.unknown = í´ë¼ì´ì–¸íŠ¸ê°€ ì„œë²„ì— ëŒ€í•œ ì—°ê²°ì„ ìžƒì—ˆìŠµë‹ˆë‹¤. -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = 회ì˜ì—ì„œ 로그아웃 하였습니다. -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = 로그아웃 í™•ì¸ bbb.logout.confirm.message = ë¡œê·¸ì•„ì›ƒí•˜ì‹œê² ìŠµë‹ˆê¹Œ? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = 예 bbb.logout.confirm.no = 아니오 -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = 메모 bbb.notes.cmpColorPicker.toolTip = 글ìžìƒ‰ bbb.notes.saveBtn = ì €ìž¥ bbb.notes.saveBtn.toolTip = 메모 ì €ìž¥ -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = í™”ë©´ê³µìœ ê²€ì‚¬ì°½ì´ ëœ¨ë©´ 허가를 í´ë¦í•˜ì„¸ìš”. bbb.settings.deskshare.start = í™”ë©´ê³µìœ í™•ì¸ bbb.settings.voice.volume = 마ì´í¬ 켜기 -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = 플래시 ë²„ì ¼ ì—러 bbb.settings.flash.text = 현재 플래시 {0} ì´ ì„¤ì¹˜ë˜ì–´ 있습니다. BigBlueButtonê°€ ì •í™•ížˆ 실행ë˜ìžë©´ 플래시 ìµœì‹ ë²„ì ¼ {1} ì„ ì„¤ì¹˜í•´ì•¼ 합니다. ìµœì‹ ë²„ì ¼ì„ ì„¤ì¹˜í•˜ë ¤ë©´ ì•„ëž˜ì˜ ë‹¨ì¶”ë¥¼ í´ë¦í•˜ì„¸ìš”. bbb.settings.flash.command = ìµœì‹ í”Œëž˜ì‹œ 설치 bbb.settings.isight.label = iSight ì¹´ë©”ë¼ ì—러 -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = 플래시 10.2 RC2 설치 bbb.settings.warning.label = ê²½ê³ bbb.settings.warning.close = ê²½ê³ ì°½ 닫기 bbb.settings.noissues = 별다른 ë¬¸ì œê°€ 발견ë˜ì§€ 않았습니다. bbb.settings.instructions = ì¹´ë©”ë¼ ì‚¬ìš©í—ˆê°€ì— ëŒ€í•œ 플래시 íŒì—…ì°½ì´ ëœ¨ë©´ 허가를 하세요. ì¹´ë©”ë¼ì™€ 스피커를 통해 ìžì‹ ì˜ ëª¨ìŠµê³¼ 목소리를 확ì¸í•˜ì…¨ë‹¤ë©´ 브ë¼ìš°ì €ê°€ ì œëŒ€ë¡œ ë™ìž‘하는 것입니다. 아래와 ê°™ì´ ë‹¤ë¥¸ ë¬¸ì œê°€ ë°œìƒëœë‹¤ë©´ ë¬¸ì œ í•´ê²°ì„ ìœ„í•´ ê°ê°ì˜ ë‚´ìš©ì„ í´ë¦í•˜ì„¸ìš”. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = 삼ê°í˜• ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 커서를 삼ê°í˜•ìœ¼ë¡œ ì „í™˜ ltbcustom.bbb.highlighter.toolbar.line = ì„ @@ -591,34 +601,34 @@ ltbcustom.bbb.highlighter.toolbar.text = í…스트 ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = í™”ì´íŠ¸ë³´ë“œ 커서를 í…스트로 ì „í™˜ ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = í…스트 색 ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = 글꼴 í¬ê¸° -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = 첫 번째 ë©”ì‹œì§€ì— ë„달했습니다. bbb.accessibility.chat.chatBox.reachedLatest = ìµœì‹ ë©”ì‹œì§€ì— ë„달했습니다. @@ -626,33 +636,33 @@ bbb.accessibility.chat.chatBox.navigatedFirst = 첫째 메시지로 ì´ë™í–ˆ bbb.accessibility.chat.chatBox.navigatedLatest = ìµœì‹ ë©”ì‹œì§€ë¡œ ì´ë™í–ˆìŠµë‹ˆë‹¤. bbb.accessibility.chat.chatBox.navigatedLatestRead = ì½ì€ 메시지 중 ìµœì‹ ë©”ì‹œì§€ë¡œ ì´ë™í–ˆìŠµë‹ˆë‹¤. bbb.accessibility.chat.chatwindow.input = 채팅 ìž…ë ¥ -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = 채팅 메시지를 íƒìƒ‰í•˜ë ¤ë©´ 화살펴 키를 ì´ìš©í•˜ì‹ì‹œì˜¤. bbb.accessibility.notes.notesview.input = 메모 ìž…ë ¥ bbb.shortcuthelp.title = 단축키 -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = 바로 가기 ë„ì›€ë§ ì°½ 최소화 bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = 바로가기 ë„ì›€ë§ ì°½ 최대화 bbb.shortcuthelp.closeBtn.accessibilityName = 바로 가기 ë„ì›€ë§ ì°½ 닫기 -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = ì „ì— ë°”ë¡œ 가기 bbb.shortcuthelp.dropdown.presentation = í”„ë ˆì í…Œì´ì…˜ 바로 가기 bbb.shortcuthelp.dropdown.chat = 채팅 바로 가기 bbb.shortcuthelp.dropdown.users = ì‚¬ìš©ìž ë°”ë¡œ 가기 -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = 바로 가기 -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 +bbb.shortcutkey.general.minimize = bbb.shortcutkey.general.minimize.function = 현재 ì°½ 최소화 bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = 현재 ì°½ 최대화 -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Flash ì°½ í¬ì»¤ìŠ¤ 아웃 bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = 마ì´í¬ ìŒì†Œê±° ë° ìŒì†Œê±° í•´ì œ @@ -671,107 +681,108 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = í¬ì»¤ìŠ¤ë¥¼ í”„ë ˆì í…Œì´ì…˜ 창으로 ì´ë™ bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = í¬ì»¤ìŠ¤ë¥¼ 채팅 창으로 ì´ë™ -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 +bbb.shortcutkey.share.desktop = bbb.shortcutkey.share.desktop.function = 바탕화면 ê³µìœ ì°½ 열기 -bbb.shortcutkey.share.webcam = 66 +bbb.shortcutkey.share.webcam = bbb.shortcutkey.share.webcam.function = ì›¹ìº ê³µìœ ì°½ 열기 -bbb.shortcutkey.shortcutWindow = 72 +bbb.shortcutkey.shortcutWindow = bbb.shortcutkey.shortcutWindow.function = 바로가기 ë„ì›€ë§ ì°½ 열기/í¬ì»¤ìŠ¤ -bbb.shortcutkey.logout = 76 +bbb.shortcutkey.logout = bbb.shortcutkey.logout.function = 현재 회ì˜ì—ì„œ 로그 아웃 -bbb.shortcutkey.raiseHand = 82 +bbb.shortcutkey.raiseHand = bbb.shortcutkey.raiseHand.function = ì†ë“¤ê¸° -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = í”„ë ˆì í…Œì´ì…˜ 업로드 -bbb.shortcutkey.present.previous = 65 +bbb.shortcutkey.present.previous = bbb.shortcutkey.present.previous.function = ì´ì „ 슬ë¼ì´ë“œë¡œ ì´ë™ -bbb.shortcutkey.present.select = 83 +bbb.shortcutkey.present.select = bbb.shortcutkey.present.select.function = ëª¨ë“ ìŠ¬ë¼ì´ë“œ 보기 -bbb.shortcutkey.present.next = 69 +bbb.shortcutkey.present.next = bbb.shortcutkey.present.next.function = ë‹¤ìŒ ìŠ¬ë¼ì´ë“œë¡œ ì´ë™ -bbb.shortcutkey.present.fitWidth = 70 +bbb.shortcutkey.present.fitWidth = bbb.shortcutkey.present.fitWidth.function = 슬ë¼ì´ë“œë¥¼ ë„ˆë¹„ì— ë§žì¶”ê¸° -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = 슬ë¼ì´ë“œë¥¼ 페ì´ì§€ì— 맞추기 -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = ì„ íƒí•œ ì‚¬ëžŒì„ ë°œí‘œìžë¡œ ì§€ì • -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = ì„ íƒí•œ ì‚¬ëžŒì„ íšŒì˜ì—ì„œ 내보내기 -bbb.shortcutkey.users.mute = 83 +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = bbb.shortcutkey.users.mute.function = ì„ íƒí•œ 사람 ìŒì†Œê±° ë˜ëŠ” ìŒì†Œê±° í•´ì œ -bbb.shortcutkey.users.muteall = 65 +bbb.shortcutkey.users.muteall = bbb.shortcutkey.users.muteall.function = ëª¨ë“ ì‚¬ìš©ìž ìŒì†Œê±° ë˜ëŠ” ìŒì†Œê±° í•´ì œ -bbb.shortcutkey.users.muteAllButPres = 65 +bbb.shortcutkey.users.muteAllButPres = bbb.shortcutkey.users.muteAllButPres.function = 발표ìžë¥¼ ì œì™¸í•œ ëª¨ë“ ì‚¬ìš©ìž ìŒì†Œê±° -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 +bbb.shortcutkey.chat.focusTabs = bbb.shortcutkey.chat.focusTabs.function = 채팅 íƒ í¬ì»¤ìŠ¤ -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = 글꼴 색 ì„ íƒì„ í¬ì»¤ìŠ¤í•©ë‹ˆë‹¤. -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = 채팅 메시지 보내기 -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = bbb.shortcutkey.chat.explanation.function = 메시지를 íƒìƒ‰í•˜ë ¤ë©´ 채팅 박스를 í¬ì»¤ìŠ¤í•´ì•¼ 합니다. -bbb.shortcutkey.chat.chatbox.advance = 40 +bbb.shortcutkey.chat.chatbox.advance = bbb.shortcutkey.chat.chatbox.advance.function = ë‹¤ìŒ ë©”ì‹œì§€ë¡œ ì´ë™ -bbb.shortcutkey.chat.chatbox.goback = 38 +bbb.shortcutkey.chat.chatbox.goback = bbb.shortcutkey.chat.chatbox.goback.function = ì´ì „ 메시지로 ì´ë™ -bbb.shortcutkey.chat.chatbox.repeat = 32 +bbb.shortcutkey.chat.chatbox.repeat = bbb.shortcutkey.chat.chatbox.repeat.function = 현재 메시지 반복 -bbb.shortcutkey.chat.chatbox.golatest = 39 +bbb.shortcutkey.chat.chatbox.golatest = bbb.shortcutkey.chat.chatbox.golatest.function = 마지막 메시지로 ì´ë™ -bbb.shortcutkey.chat.chatbox.gofirst = 37 +bbb.shortcutkey.chat.chatbox.gofirst = bbb.shortcutkey.chat.chatbox.gofirst.function = ì²˜ìŒ ë©”ì‹œì§€ë¡œ ì´ë™ -bbb.shortcutkey.chat.chatbox.goread = 75 +bbb.shortcutkey.chat.chatbox.goread = bbb.shortcutkey.chat.chatbox.goread.function = ì½ì€ 메시지 중 ìµœì‹ ë©”ì‹œì§€ë¡œ ì´ë™ -bbb.shortcutkey.chat.chatbox.debug = 71 +bbb.shortcutkey.chat.chatbox.debug = bbb.shortcutkey.chat.chatbox.debug.function = ìž„ì‹œ 디버그 바로가기 키 -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = 게시 bbb.polling.closeButton.label = 닫기 -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = 예 bbb.polling.answer.No = 아니오 -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = ê³µìœ ì‹œìž‘ bbb.publishVideo.changeCameraBtn.labelText = ì›¹ìº ë³€ê²½ @@ -787,117 +798,74 @@ bbb.shortcutkey.specialKeys.down = 아래쪽 화살표 bbb.shortcutkey.specialKeys.plus = ë”하기 bbb.shortcutkey.specialKeys.minus = 빼기 -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = 취소 -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/lt/bbbResources.properties b/bigbluebutton-client/locale/lt/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/lt/bbbResources.properties +++ b/bigbluebutton-client/locale/lt/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/lt_LT/bbbResources.properties b/bigbluebutton-client/locale/lt_LT/bbbResources.properties index d099bb9e4c5cc403dcb4acf4771f87f5eb0fea24..f125fafc7f0d3c22eb1e0eed18a19cbdae021233 100644 --- a/bigbluebutton-client/locale/lt_LT/bbbResources.properties +++ b/bigbluebutton-client/locale/lt_LT/bbbResources.properties @@ -1,253 +1,255 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Jungiamasi prie serverio -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = AtsipraÅ¡ome, nÄ—ra galimybÄ—s prisijungti prie serverio. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Atidaryti prisijungimo langÄ… -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Atstatyti iÅ¡dÄ—stymÄ… -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = JÅ«s, tikriausiai turite senus BigBlueButton kalbos vertimus. bbb.oldlocalewindow.reminder2 = PraÅ¡ome iÅ¡valyti narÅ¡yklÄ—s talpyklÄ… ir bandyti dar kartÄ…. bbb.oldlocalewindow.windowTitle = Ä®spÄ—jimas: Seni kalbų vertimai -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = bbb.micSettings.speakers.header = Testuoti garsiakalbius bbb.micSettings.microphone.header = Bandyti mikrofonÄ… bbb.micSettings.playSound = Testuoti garsiakalbius bbb.micSettings.playSound.toolTip = Groti muzikÄ…, kad testuoti JÅ«sų garsiakalbius bbb.micSettings.hearFromHeadset = JÅ«s turÄ—tumÄ—te iÅ¡girsti garsÄ… per ausines, o ne per kompiuterio garsiakalbius. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = Taip bbb.micSettings.echoTestAudioNo = Ne -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Tikrinti arba pakeisti mikrofonÄ… -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = AtÅ¡aukti -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = AtÅ¡aukti prisijungimÄ… prie garso konferencijos -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Pagalba bbb.mainToolbar.logoutBtn = Atsijungti -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Pasirinkti kalbÄ… bbb.mainToolbar.settingsBtn = Nustatymai bbb.mainToolbar.settingsBtn.toolTip = Atidaryti nustatymus -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = bbb.window.closeBtn.toolTip = Uždaryti -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = bbb.users.title = Vartotojai{0} {1} -bbb.users.titleBar = Users Window title bar +bbb.users.titleBar = bbb.users.quickLink.label = Vartotojų langas -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = bbb.users.settings.buttonTooltip = Nustatymai -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = Vaizdo kameros nustatymai bbb.users.settings.muteAll = Nutildyti visus dalyvius -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter +bbb.users.settings.muteAllExcept = bbb.users.settings.unmuteAll = Ä®jungti garsÄ… visiems vartotojams -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = bbb.users.pushToMute.toolTip = Nutildyti save -bbb.users.muteMeBtnTxt.talk = Unmute +bbb.users.muteMeBtnTxt.talk = bbb.users.muteMeBtnTxt.mute = Nutildyti bbb.users.muteMeBtnTxt.muted = Nutildytas -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Dalyvių sÄ…raÅ¡as. Naudokite rodyklių klaviÅ¡us, kad naviguoti. bbb.users.usersGrid.nameItemRenderer = Vardas bbb.users.usersGrid.nameItemRenderer.youIdentifier = JÅ«s -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = bbb.users.usersGrid.statusItemRenderer.moderator = Moderatorius -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = bbb.users.usersGrid.mediaItemRenderer.micOff = IÅ¡jungti mikrofonÄ… bbb.users.usersGrid.mediaItemRenderer.micOn = Ä®jungti mikrofonÄ… -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentacija bbb.presentation.titleWithPres = Prezentacija: {0} bbb.presentation.quickLink.label = Pristatymo langas -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = BuvÄ™s puslapis. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = PažymÄ—ti skaidrÄ™ bbb.presentation.forwardBtn.toolTip = Sekantis puslapis bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. @@ -255,486 +257,494 @@ bbb.presentation.uploadcomplete = Ä®kÄ—limas baigtas. PraÅ¡ome palaukti, vyksta bbb.presentation.uploaded = įkeltas. bbb.presentation.document.supported = Ä®keltas dokumentas yra tinkamas. bbb.presentation.document.converted = SÄ—kmingai konvertuotas Office dokumentas. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Klaida: Susisiekite su administratoriumi. bbb.presentation.error.security = Apsaugos klaida: Susisiekite su administratoriumi. bbb.presentation.error.convert.notsupported = Klaida: įkelto dokumento tipas yra nepalaikomas. bbb.presentation.error.convert.nbpage = Klaida: Nepavyko nustati įkelto dokumento puslapių skaiÄiaus. bbb.presentation.error.convert.maxnbpagereach = Klaida: įkeltas dokumentas turi per daug puslapių. bbb.presentation.converted = Konvertuojamas {0} iÅ¡ {1} puslapių. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Prezentacijos failas bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT bbb.presentation.uploadwindow.image = PaveikslÄ—lis -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = bbb.fileupload.title = PridÄ—ti failus į JÅ«sų pristatymÄ… -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = PažymÄ—ti failÄ… bbb.fileupload.selectBtn.toolTip = Surasti failÄ… bbb.fileupload.uploadBtn = Ä®kelti bbb.fileupload.uploadBtn.toolTip = Ä®kelti failÄ… bbb.fileupload.deleteBtn.toolTip = IÅ¡trinti prezentacijÄ… bbb.fileupload.showBtn = Parodyti -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Parodyti prezentacijÄ… -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Kuriama.. bbb.fileupload.progBarLbl = Progresas: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Pokalbiai bbb.chat.quickLink.label = Pokalbių langas bbb.chat.cmpColorPicker.toolTip = Teksto spalva -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = Siųsti žinutÄ™ -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopijuoti visÄ… tekstÄ… bbb.chat.publicChatUsername = Visiems bbb.chat.optionsTabName = Parinktys bbb.chat.privateChatSelect = Pasirinkite asmenį kalbÄ—tis privaÄiai -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = bbb.chat.closeBtn.accessibilityName = Uždaryti pokalbių langÄ… bbb.chat.chatTabs.accessibleNotice = Naujos žinutÄ—s Å¡ioje kortelÄ—je. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Pakeisti vaizdo kamerÄ… -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = bbb.publishVideo.startPublishBtn.labelText = PradÄ—ti bendrinti bbb.publishVideo.startPublishBtn.toolTip = PradÄ—ti vaizdo transliacijÄ… -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = InternetinÄ—s kameros bbb.videodock.quickLink.label = Interneto kamerų langas -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = bbb.video.publish.hint.noCamera = NÄ—ra galimos kameros bbb.video.publish.hint.cantOpenCamera = Nepavyko atidaryti JÅ«sų kameros -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = bbb.video.publish.closeBtn.label = AtÅ¡aukti -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = PieÅ¡tukas -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = Apskritimas -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = StaÄiakampis -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = Pasirinkti spalvÄ… -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Gerai -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Patvirtinti atsijungimÄ… bbb.logout.confirm.message = Ar JÅ«s tikras, kad norite atsijungti? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Taip bbb.logout.confirm.no = Ne -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = bbb.notes.cmpColorPicker.toolTip = Teksto spalva bbb.notes.saveBtn = IÅ¡saugoti -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash versijos klaida -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = bbb.settings.warning.label = Ä®spÄ—jimas -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Trikampis -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = ltbcustom.bbb.highlighter.toolbar.line = Linija -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = ltbcustom.bbb.highlighter.toolbar.text = Tekstas -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Teksto spalva ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Å rifto dydis -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window +bbb.shortcutkey.general.minimize.function = bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone +bbb.shortcutkey.users.muteme.function = bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field +bbb.shortcutkey.chat.chatinput.function = bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide +bbb.shortcutkey.present.focusslide.function = bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.whiteboard.undo.function = bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window +bbb.shortcutkey.focus.users.function = bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window +bbb.shortcutkey.focus.video.function = bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window +bbb.shortcutkey.focus.presentation.function = bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window +bbb.shortcutkey.share.desktop.function = bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.webcam.function = bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window +bbb.shortcutkey.shortcutWindow.function = bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting +bbb.shortcutkey.logout.function = bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Pakelti rankÄ… -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Ä®kelti pateiktį bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide +bbb.shortcutkey.present.previous.function = bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides +bbb.shortcutkey.present.select.function = bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide +bbb.shortcutkey.present.next.function = bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person +bbb.shortcutkey.users.mute.function = bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users +bbb.shortcutkey.users.muteall.function = bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. +bbb.shortcutkey.chat.changeColour.function = bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.explanation.function = bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message +bbb.shortcutkey.chat.chatbox.advance.function = bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message +bbb.shortcutkey.chat.chatbox.goback.function = bbb.shortcutkey.chat.chatbox.repeat = 32 bbb.shortcutkey.chat.chatbox.repeat.function = Kartoti dabartinÄ™ žinutÄ™ bbb.shortcutkey.chat.chatbox.golatest = 39 @@ -744,40 +754,41 @@ bbb.shortcutkey.chat.chatbox.gofirst.function = Pereiti prie pirmos žinutÄ—s bbb.shortcutkey.chat.chatbox.goread = 75 bbb.shortcutkey.chat.chatbox.goread.function = Pereiti prie naujausios žinutÄ—s, kuriÄ… perskaitÄ—te bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = Skelbti bbb.polling.closeButton.label = Uždaryti -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Taip bbb.polling.answer.No = Ne -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = PradÄ—ti bendrinti bbb.publishVideo.changeCameraBtn.labelText = Pakeisti vaizdo kamerÄ… bbb.accessibility.alerts.madePresenter = JÅ«s dabar esate PraneÅ¡Ä—jas. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madeViewer = bbb.shortcutkey.specialKeys.space = Tarpo klaviÅ¡as bbb.shortcutkey.specialKeys.left = RodyklÄ— kairÄ—n @@ -787,117 +798,74 @@ bbb.shortcutkey.specialKeys.down = RodyklÄ— žemyn bbb.shortcutkey.specialKeys.plus = Plius bbb.shortcutkey.specialKeys.minus = Minus -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = AtÅ¡aukti -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/lv_LV/bbbResources.properties b/bigbluebutton-client/locale/lv_LV/bbbResources.properties index 0c069d4b8408af04c302f4033233b123068e3503..070037d9c2ad0ab1a9c61a4c180534ccabb107b8 100644 --- a/bigbluebutton-client/locale/lv_LV/bbbResources.properties +++ b/bigbluebutton-client/locale/lv_LV/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Pievienojas serverim -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Atvainojiet, pieslÄ“gties serverim neizdevÄs. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = AtvÄ“rt logus @@ -10,16 +10,16 @@ bbb.mainshell.resetLayoutBtn.toolTip = AtiestatÄ«t izkÄrtojumu bbb.mainshell.notification.tunnelling = TunelÄ“Å¡ana bbb.mainshell.notification.webrtc = WebRTC Audio bbb.mainshell.fullscreenBtn.toolTip = AtvÄ“rt pilnekrÄnÄ -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = IespÄ“jams, ka tulkojums ir novecojis. bbb.oldlocalewindow.reminder2 = IztÄ«riet pÄrlÅ«ka keÅ¡atmiņu un mÄ“Ä£iniet vÄ“lreiz. bbb.oldlocalewindow.windowTitle = BrÄ«dinÄjums: Tulkojums ir novecojis. @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Savienojas bbb.micSettings.webrtc.transferring = PÄrcelt bbb.micSettings.webrtc.endingecho = Pievienojies Audio bbb.micSettings.webrtc.endedecho = Eho tests pabeigts. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox mikrofona atļaujas bbb.micPermissions.firefox.message = Spied 'Allow', lai atļautu Firefox pÄrlÅ«kÄ izmantot tavu mikrofonu. bbb.micPermissions.chrome.title = Chrome mikrofona atļaujas @@ -100,7 +101,7 @@ bbb.inactivityWarning.cancel = Atcelt bbb.mainToolbar.helpBtn = PalÄ«dzÄ«ba bbb.mainToolbar.logoutBtn = Iziet bbb.mainToolbar.logoutBtn.toolTip = Iziet -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = IzvÄ“lies valodu bbb.mainToolbar.settingsBtn = UzstÄdÄ«jumi bbb.mainToolbar.settingsBtn.toolTip = AtvÄ“rt uzstÄdÄ«jumus @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Å o sesiju nav iespÄ“jams ierakst bbb.mainToolbar.recordBtn.confirm.title = ApstiprinÄt ierakstÄ«Å¡anu bbb.mainToolbar.recordBtn.confirm.message.start = Vai esi pÄrliecinÄts, ka vÄ“lies ierakstÄ«t Å¡o sesiju? bbb.mainToolbar.recordBtn.confirm.message.stop = Vai esi pÄrliecinÄts, ka vÄ“lies pÄrtraukt sesijas ierakstÄ«Å¡anu? -bbb.mainToolbar.recordBtn..notification.title = Ieraksta notifikÄcijas -bbb.mainToolbar.recordBtn..notification.message1 = Tu vari ierakstÄ«t Å¡o sesiju. -bbb.mainToolbar.recordBtn..notification.message2 = Spied SÄkt/Beigt ieraksta pogu, lai sÄktu sesijas ieraksta palaiÅ¡anu/pÄrtraukÅ¡anu. +bbb.mainToolbar.recordBtn.notification.title = Ieraksta notifikÄcijas +bbb.mainToolbar.recordBtn.notification.message1 = Tu vari ierakstÄ«t Å¡o sesiju. +bbb.mainToolbar.recordBtn.notification.message2 = Spied SÄkt/Beigt ieraksta pogu, lai sÄktu sesijas ieraksta palaiÅ¡anu/pÄrtraukÅ¡anu. bbb.mainToolbar.recordingLabel.recording = (Ieraksta) bbb.mainToolbar.recordingLabel.notRecording = Nenotiek ieraksts bbb.waitWindow.waitMessage.message = Tu esi viesis, lÅ«dzu sagaidi moderatora apstiprinÄjumu @@ -214,7 +215,7 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = PieslÄ“gt skaņu {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = AtslÄ“gt skaņu {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = SlÄ“gt {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = AtslÄ“gt {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = IzraidÄ«t {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = DalÄ«ties ar webkameru bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofons izslÄ“gts bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofons ieslÄ“gts @@ -246,6 +247,7 @@ bbb.presentation.fitToWidth.toolTip = PielÄgot prezentÄciju platumam bbb.presentation.fitToPage.toolTip = PielÄgot prezentÄciju lapas izmÄ“ram bbb.presentation.uploadPresBtn.toolTip = AugÅ¡upielÄdÄ“t prezentÄcij bbb.presentation.downloadPresBtn.toolTip = LejupielÄdÄ“t prezentÄcijas +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = IepriekÅ¡Ä“jais slaids. bbb.presentation.btnSlideNum.accessibilityName = Slaids {0} no {1} bbb.presentation.btnSlideNum.toolTip = IzvÄ“lÄ“ties slaidu @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = AugÅ¡upielÄde pabeigta. Uzgaidiet kamÄ“r doku bbb.presentation.uploaded = augÅ¡upielÄdÄ“ts. bbb.presentation.document.supported = AugÅ¡upielÄdÄ“tais documents ir atbalstÄ«ts. UzsÄkta konvertÄcija... bbb.presentation.document.converted = Dokuments veiksmÄ«gi konvertÄ“ts. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = Pirms turpiniet, konvÄ“rtÄ“jiet Å¡o dokumentu kÄ PDF failu. bbb.presentation.error.io = IO Kļūda: Sazinies ar administratoru. bbb.presentation.error.security = DroÅ¡Ä«bas kļūda: Sazinies ar administratoru. @@ -283,18 +285,18 @@ bbb.fileupload.uploadBtn = AugÅ¡upielÄdÄ“t bbb.fileupload.uploadBtn.toolTip = AugÅ¡upielÄdÄ“t failu bbb.fileupload.deleteBtn.toolTip = DzÄ“st prezentÄciju bbb.fileupload.showBtn = RÄdÄ«t -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = RÄdÄ«t prezentÄciju -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Veido priekÅ¡skatÄ«jumus.. bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. +bbb.fileupload.fileFormatHint = bbb.fileupload.letUserDownload = IespÄ“jot prezentÄcijas lejupielÄdi bbb.fileupload.letUserDownload.tooltip = AtzÄ«mÄ“ Å¡eit, vai vÄ“lies atļaut lietotÄjiem lejupielÄdÄ“t tavu prezentÄciju bbb.filedownload.title = LejupielÄdÄ“t prezentÄcijas -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = bbb.filedownload.fileLbl = IzvÄ“lies failu lejupielÄdei: bbb.filedownload.downloadBtn = LejupielÄdÄ“t bbb.filedownload.downloadBtn.toolTip = LejupielÄdÄ“ prezentÄciju @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = SaglabÄt Äatu bbb.chat.saveBtn.accessibilityName = SaglabÄt Äatu failÄ bbb.chat.saveBtn.label = SaglabÄt bbb.chat.save.complete = ÄŒats veiksmÄ«gi saglabÄts +bbb.chat.save.ioerror = bbb.chat.save.filename = publiskais Äats bbb.chat.copyBtn.toolTip = KopÄ“t Äatu bbb.chat.copyBtn.accessibilityName = KopÄ“t Äatu savÄ keÅ¡atmiÅ†Ä @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = AizvÄ“rt webkameras uzstÄdÄ«juma dialog bbb.video.publish.closeBtn.label = Atcelt bbb.video.publish.titleBar = PublicÄ“t webkameras logu bbb.video.streamClose.toolTip = AizvÄ“rt straumÄ“Å¡anu: {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = Darbvirsmas pÄrraide: PrezentÄ“tÄja skats bbb.screensharePublish.pause.tooltip = PauzÄ“t ekrÄna raidÄ«Å¡anu bbb.screensharePublish.pause.label = PauzÄ“t @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = PÄrtraukt ekrÄna rÄdÄ«Å¡anu bbb.toolbar.sharednotes.toolTip = AtvÄ“rt kopÄ«gos pierakstus bbb.toolbar.video.toolTip.start = RaidÄ«t ar webkameru bbb.toolbar.video.toolTip.stop = PÄrtraukt raidÄ«t ar webkameru +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Pievienot pielÄgotu izkÄrtojumu sarakstam bbb.layout.overwriteLayoutName.title = PÄrrakstÄ«Å¡anas izkÄrtojums bbb.layout.overwriteLayoutName.text = Å is vÄrds jau tiek izmantots. Vai vÄ“laties to pÄrrakstÄ«t? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * PielÄgotais izkÄrtojums bbb.layout.combo.customName = PielÄgots izkÄrtojums bbb.layout.combo.remote = AttÄlinÄti bbb.layout.window.name = IzkÄrtojuma nosaukums +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = IzkÄrtojumi ir veiksmÄ«gi saglabÄti +bbb.layout.save.ioerror = bbb.layout.load.complete = IzkÄrtojumi ir veiksmÄ«gi ielÄdÄ“ti bbb.layout.load.failed = Nav iespÄ“jÄms ielÄdÄ“t izkÄrtojumus bbb.layout.sync = Tavs izkÄrtojums nosÅ«tÄ«ts visiem dalÄ«bniekiem @@ -468,7 +476,7 @@ bbb.layout.name.closedcaption = SlÄ“gtais Apraksts bbb.layout.name.videochat = Video Äats bbb.layout.name.webcamsfocus = Webkameras sapulce bbb.layout.name.presentfocus = PrezentÄcijas sapulce -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Lekcijas asistÄ“Å¡ana bbb.layout.name.lecture = Lekcija bbb.layout.name.sharednotes = KopÄ«gotie pieraksti @@ -493,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = TÄfeles marÄ·iera krÄsa bbb.highlighter.toolbar.thickness = MainÄ«t biezumu bbb.highlighter.toolbar.thickness.accessibilityName = TÄfeles zÄ«mÄ“Å¡anas biezums bbb.highlighter.toolbar.multiuser = Multi-lietotÄju zÄ«mÄ“Å¡ana -bbb.logout.title = Iziet bbb.logout.button.label = OK bbb.logout.appshutdown = Servera aplikÄcija ir izslÄ“gta bbb.logout.asyncerror = KonstatÄ“ta sinhronizÄcijas kļūda @@ -505,9 +512,11 @@ bbb.logout.unknown = Tava klienta savienojums ar serveri ir zudis bbb.logout.guestkickedout = Moderators neļaut tev pievienoties Å¡ai sapulcei bbb.logout.usercommand = Tu esi izgÄjis no konferences bbb.logour.breakoutRoomClose = Tavs pÄrlÅ«ks logs tiks aizvÄ“rts -bbb.logout.ejectedFromMeeting = Moderators ir izraidÄ«jis Tevi ÄrÄ no Å¡Ä«s sapulces. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ja izieÅ¡ana no sesijas notika kļūdas pÄ“c, spied uz zemÄk redzamas pogas un pievienojies konferencei atpakaļ bbb.logout.refresh.label = Pievienoties atkÄrtoti +bbb.logout.feedback.hint = +bbb.logout.feedback.label = bbb.settings.title = UzstÄdÄ«jumi bbb.settings.ok = OK bbb.settings.cancel = Atcelt @@ -532,32 +541,33 @@ bbb.notes.saveBtn = SaglabÄt bbb.notes.saveBtn.toolTip = SaglabÄt pierakstu bbb.sharedNotes.title = KopÄ«gotie pieraksti bbb.sharedNotes.quickLink.label = KopÄ«go pierakstu logs -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = bbb.sharedNotes.typing.single = {0} raksta... bbb.sharedNotes.typing.double = {0} un {1} raksta... bbb.sharedNotes.typing.multiple = VairÄki cilvÄ“ki raksta... bbb.sharedNotes.save.toolTip = SaglabÄt piezÄ«mes failÄ bbb.sharedNotes.save.complete = PiezÄ«mes tika veiksmÄ«gi saglabÄtas +bbb.sharedNotes.save.ioerror = bbb.sharedNotes.save.htmlLabel = FormatÄ“ts teksts (.html) bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = bbb.sharedNotes.undo.toolTip = Atcelt modifikÄciju bbb.sharedNotes.redo.toolTip = Atgriezt modifikÄciju bbb.sharedNotes.toolbar.toolTip = Teksta formatÄ“Å¡anas rÄ«kjosla -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = bbb.sharedNotes.additionalNotes.closeWarning.title = AizvÄ“rt kopÄ«gos pierakstus bbb.sharedNotes.additionalNotes.closeWarning.message = Å Ä« darbÄ«ba pilnÄ«bÄ izdzÄ“sÄ«s pierakstus visiem un tos nebÅ«s iespÄ“jams atjaunot. Vai esi pÄrliecinÄts, ka vÄ“lies aizvÄ“rt Å¡os pierakstus? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = IzvÄ“lies Atļaut (Allow), lai izlecoÅ¡ie logi strÄdÄtu un varÄ“tu nodroÅ¡inÄt darbavirsmas pÄrraidi bbb.settings.deskshare.start = PÄrbaudÄ«t darbavirsmas pÄrraidi bbb.settings.voice.volume = Mikrofona aktivitÄte @@ -568,7 +578,7 @@ bbb.settings.flash.label = Flash versijas kļūda bbb.settings.flash.text = Tev ir instalÄ“ta Flash versija {0} , bet Tev jÄbÅ«t instalÄ“tai jaunÄkajai versijai {1}, lai BigBlueButton darbotos. Spied uz zemÄk redzamÄs pogas, lai instalÄ“tu jaunÄko Adobe Flash versiju. bbb.settings.flash.command = InstalÄ“t jaunÄko Flash versiju bbb.settings.isight.label = iSight webkameras kļūda -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = InstallÄ“t Flash 10.2 RC2 bbb.settings.warning.label = BrÄ«dinÄjums bbb.settings.warning.close = AizvÄ“rt Å¡o brÄ«dinÄjumu @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = PielÄgot slaidus lapai bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = PadarÄ«t izvÄ“lÄ“to personu par prezentÄ“tÄju bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = IzraidÄ«t izvÄ“lÄ“to personu no sanÄksmes +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = AtslÄ“gt un pieslÄ“gt skaņu izvÄ“lÄ“tajai personai bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = PublicÄ“t bbb.polling.closeButton.label = AizvÄ“rt bbb.polling.customPollOption.label = PielÄgota aptauja... bbb.polling.pollModal.title = DzÄ«vÄs aptaujas rezultÄti +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Ievadi aptaujas izvÄ“lnes bbb.polling.respondersLabel.novotes = GaidÄm respondentu atbildes bbb.polling.respondersLabel.text = {0} atbildÄ“juÅ¡i @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = PiemÄ“rot aizslÄ“gÅ¡anas uzstÄdÄ«jumus bbb.lockSettings.cancel = Atcelt bbb.lockSettings.cancel.toolTip = AizvÄ“rt Å¡o logu bez saglabÄÅ¡anas +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderatora atslÄ“gÅ¡ana bbb.lockSettings.privateChat = PrivÄtais Äats bbb.lockSettings.publicChat = Publiskais Äats bbb.lockSettings.webcam = Webkamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofons bbb.lockSettings.layout = IzkÄrtojums bbb.lockSettings.title=SlÄ“gt skatÄ«tÄjus @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=SlÄ“gt uzreiz pÄ“c pievienoÅ¡anÄs bbb.users.breakout.breakoutRooms = IndividuÄlÄs istabas bbb.users.breakout.updateBreakoutRooms = Atjaunot IndividuÄlÄs istabas +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = AtlikuÅ¡ais laiks individuÄlajÄs istabÄs bbb.users.breakout.calculatingRemainingTime = AprÄ“Ä·inÄt atlikuÅ¡o laiku... bbb.users.breakout.closing = Aizveras +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Istabas bbb.users.breakout.roomsCombo.accessibilityName = Istabu skaits, ko nepiecieÅ¡ams izveidot bbb.users.breakout.room = Istaba -bbb.users.breakout.randomAssign = SadalÄ«t lietotÄjus pÄ“c nejauÅ¡Ä«bas principa bbb.users.breakout.timeLimit = Laika ierobežojums bbb.users.breakout.durationStepper.accessibilityName = Laika limits minÅ«tÄ“s bbb.users.breakout.minutes = MinÅ«tes @@ -836,11 +850,11 @@ bbb.users.breakout.closeAllRooms = AizvÄ“rt visas individuÄlÄs istabas bbb.users.breakout.insufficientUsers = Nepietiekams lietotÄju skaits. Tev nepiecieÅ¡ams ievietot vismaz vienu lietotÄju katrÄ individuÄlajÄ istabÄ. bbb.users.breakout.confirm = Pievienoties individuÄlajai istabai bbb.users.breakout.invited = Tu esi uzaicinÄts pievienoties <b>IndividuÄlajÄ istabÄ </b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. +bbb.users.breakout.accept = bbb.users.breakout.joinSession = Pievienoties sesijai -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = bbb.users.breakout.youareinroom = Tu esi individuÄlajÄ istabÄ {0} bbb.users.roomsGrid.room = Istaba bbb.users.roomsGrid.users = LietotÄji @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Pievienoties bbb.users.roomsGrid.noUsers = Å ajÄ istabÄ nav neviena lietotÄja bbb.langSelector.default=Valoda pÄ“c noklusÄ“jama -bbb.langSelector.ar=ArÄbu -bbb.langSelector.az_AZ=AzerbaidžÄnu -bbb.langSelector.eu_EU=Baski -bbb.langSelector.bn_BN=BengÄļu -bbb.langSelector.bg_BG=BulgÄru -bbb.langSelector.ca_ES=KatalÄnieÅ¡u -bbb.langSelector.zh_CN=ĶīnieÅ¡u (vienkÄrÅ¡otÄ) -bbb.langSelector.zh_TW=ĶīnieÅ¡u (tradicionÄlais) -bbb.langSelector.hr_HR=HorvÄtu -bbb.langSelector.cs_CZ=ÄŒehu -bbb.langSelector.da_DK=DÄņu -bbb.langSelector.nl_NL=HolandieÅ¡u -bbb.langSelector.en_US=Angļu -bbb.langSelector.et_EE=Igauņu -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Somu -bbb.langSelector.fr_FR=FranÄu -bbb.langSelector.fr_CA=FranÄu (KanÄda) -bbb.langSelector.ff_SN=Fula -bbb.langSelector.de_DE=VÄciski -bbb.langSelector.el_GR=GrieÄ·u -bbb.langSelector.he_IL=EbrejieÅ¡u -bbb.langSelector.hu_HU=UngÄru -bbb.langSelector.id_ID=IndonÄ“zieÅ¡u -bbb.langSelector.it_IT=ItÄļu -bbb.langSelector.ja_JP=JapÄņu -bbb.langSelector.ko_KR=KorejieÅ¡u -bbb.langSelector.lv_LV=LatvieÅ¡u -bbb.langSelector.lt_LT=Lietuva -bbb.langSelector.mn_MN=Mongoļu -bbb.langSelector.ne_NE=NepÄļu -bbb.langSelector.no_NO=NorvÄ“Ä£u -bbb.langSelector.pl_PL=Poļu -bbb.langSelector.pt_BR=PortugÄļu (brazÄ«liski) -bbb.langSelector.pt_PT=PortugÄļu -bbb.langSelector.ro_RO=RumÄņu -bbb.langSelector.ru_RU=Krievu -bbb.langSelector.sr_SR=SerbieÅ¡u (kirilicÄ) -bbb.langSelector.sr_RS=SerbieÅ¡u (LatÄ«niski) -bbb.langSelector.si_LK=SingalieÅ¡u -bbb.langSelector.sk_SK=SlovÄku -bbb.langSelector.sl_SL=Slovēņu -bbb.langSelector.es_ES=SpÄņu -bbb.langSelector.es_LA=SpÄņu (Dienvidamerika) -bbb.langSelector.sv_SE=Zviedru -bbb.langSelector.th_TH=TaizemieÅ¡u -bbb.langSelector.tr_TR=Turku -bbb.langSelector.uk_UA=Ukraiņu -bbb.langSelector.vi_VN=VjetnamieÅ¡u -bbb.langSelector.cy_GB=VelsieÅ¡u -bbb.langSelector.oc=OksitÄņu + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/mk/bbbResources.properties b/bigbluebutton-client/locale/mk/bbbResources.properties index 2d4d4ab7ddb7a9095517edb3aaa70d315fbfd51f..f852241203822676aa20f7e6aeac1de83bcff479 100644 --- a/bigbluebutton-client/locale/mk/bbbResources.properties +++ b/bigbluebutton-client/locale/mk/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Поврзување Ñо Ñерверот -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/mk_MK/bbbResources.properties b/bigbluebutton-client/locale/mk_MK/bbbResources.properties index e2a8294dc37a88044e630624bb5b4582651f70cb..6b9fb20ddf3ccda3165c15298cca3d61c8d1721f 100644 --- a/bigbluebutton-client/locale/mk_MK/bbbResources.properties +++ b/bigbluebutton-client/locale/mk_MK/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = \nПоврзување Ñо Ñерверот -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Извинете, не можете да Ñе поврзете Ñо Ñерверот. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Отвори прозорец за логови bbb.mainshell.meetingNotFound = Ðе е пронајдена Ñредба bbb.mainshell.invalidAuthToken = Ðеправилен автентикациÑки токен bbb.mainshell.resetLayoutBtn.toolTip = реÑетирање на ПодеÑувањето bbb.mainshell.notification.tunnelling = Тунелирање bbb.mainshell.notification.webrtc = WebRTC Ðудио -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Вие можеби имате Ñтар јазик за преведување на BigBlueButton. bbb.oldlocalewindow.reminder2 = Ве молиме, иÑчиÑтете го кешот на пребарувачот и обидете Ñе повторно. bbb.oldlocalewindow.windowTitle = Предупредување: Стар јазик за преведување @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Откажи bbb.micSettings.connectingtoecho = Поврзување bbb.micSettings.connectingtoecho.error = Ехо теÑÑ‚ грешка: Ве молиме контактирајте го админиÑтраторот. bbb.micSettings.cancel.toolTip = Откажете Ñе од вклучување на аудио конференција -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Ðудио поÑтавки. ФокуÑот ќе оÑтане во главниот прозорец додека прозорецот не Ñе затвори. bbb.micSettings.webrtc.title = WebRTC подршка bbb.micSettings.webrtc.capableBrowser = Вашиот пребарувач подржува WebRTC @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Поврзување bbb.micSettings.webrtc.transferring = ПренеÑување bbb.micSettings.webrtc.endingecho = Приклучување на аудио bbb.micSettings.webrtc.endedecho = Ехо теÑтот заврши. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox микрофон дозвола -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome микрофон дозвола -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Ðудио предупредување bbb.micWarning.joinBtn.label = Приклучете Ñе во Ñекој Ñлучај bbb.micWarning.testAgain.label = ТеÑÑ‚ повторно @@ -86,21 +87,21 @@ bbb.webrtcWarning.failedError.1007 = Грешка 1007: ICE неуÑпешен bbb.webrtcWarning.failedError.1008 = Грешка 1008: ТранÑферот е неуÑпешен bbb.webrtcWarning.failedError.1009 = Грешка 1009: Ðеможе да Ñе пренеÑи ÐЖУРИРÐЈ / ВКЛУЧИ ÑерверÑката информација bbb.webrtcWarning.failedError.1010 = Грешка 1010: ICE преговорот иÑтече -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = Грешка {0}: Ðепознат код на грешка bbb.webrtcWarning.failedError.mediamissing = Ðеможе да Ñе добие вашиот микрофон за WebRTC повик bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC ехо теÑтот заврши неочекувано -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Помош bbb.mainToolbar.logoutBtn = Одјава bbb.mainToolbar.logoutBtn.toolTip = Одјава -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Избери јазик bbb.mainToolbar.settingsBtn = ПоÑтавувања bbb.mainToolbar.settingsBtn.toolTip = Отвори ПоÑтавувања @@ -110,34 +111,34 @@ bbb.mainToolbar.recordBtn.toolTip.start = Започни Ñнимање bbb.mainToolbar.recordBtn.toolTip.stop = Стопирај Ñнимање bbb.mainToolbar.recordBtn.toolTip.recording = Оваа ÑеÑија е Ñнимена bbb.mainToolbar.recordBtn.toolTip.notRecording = Оваа ÑеÑија не е Ñнимена -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Потврди Ñнимање bbb.mainToolbar.recordBtn.confirm.message.start = Дали Ñте Ñигурни дека Ñакате да започнете Ñнимање на ÑеÑијата? bbb.mainToolbar.recordBtn.confirm.message.stop = Дали Ñте Ñигурни дека Ñакате да го Ñтопирате Ñнимањете на ÑеÑијата? -bbb.mainToolbar.recordBtn..notification.title = ИзвеÑтување за Ñнимање -bbb.mainToolbar.recordBtn..notification.message1 = Вие можете да ја Ñнимите оваа Ñредба. -bbb.mainToolbar.recordBtn..notification.message2 = Вие мора да кликнете Старт/Стоп на копчето за Ñнимање во наÑловната лента во започни/заврши Ñнимање. +bbb.mainToolbar.recordBtn.notification.title = ИзвеÑтување за Ñнимање +bbb.mainToolbar.recordBtn.notification.message1 = Вие можете да ја Ñнимите оваа Ñредба. +bbb.mainToolbar.recordBtn.notification.message2 = Вие мора да кликнете Старт/Стоп на копчето за Ñнимање во наÑловната лента во започни/заврши Ñнимање. bbb.mainToolbar.recordingLabel.recording = (Снимање) bbb.mainToolbar.recordingLabel.notRecording = Ðе Снимај -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = КонфигурациÑко извеÑтување bbb.clientstatus.notification = Ðепрочитани извеÑтувања -bbb.clientstatus.close = Close +bbb.clientstatus.close = bbb.clientstatus.tunneling.title = Firewall bbb.clientstatus.tunneling.message = Firewall Ñпречува вашиот клиент директно да Ñе поврзи на порта 1935 до далечинÑкиот Ñервер. Препорачано е приклучување на помала реÑтриктивна мрежа за поÑтабилна конекција. bbb.clientstatus.browser.title = Верзија на пребарувач @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Вашиот пребарувач ({0}) не bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Вашиот Flash Player приклучок ({0}) е изминат. Препорачано е ажурирање до најновата верзија. bbb.clientstatus.webrtc.title = Ðудио -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Препорачано е кориÑтење на Firefox или Chrome за подобро аудио. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Ðамали bbb.window.maximizeRestoreBtn.toolTip = Зголеми bbb.window.closeBtn.toolTip = Затвори @@ -188,21 +189,21 @@ bbb.users.usersGrid.statusItemRenderer = СтатуÑти bbb.users.usersGrid.statusItemRenderer.changePresenter = Кликнете за да креирате презентер bbb.users.usersGrid.statusItemRenderer.presenter = Презентер bbb.users.usersGrid.statusItemRenderer.moderator = Модератор -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Гледач bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Делење на камера bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Презентер. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Вклучете звук {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = ИÑклучете звук {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Заклучи {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Отклучи {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = ИÑфрли {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Делење на камера bbb.users.usersGrid.mediaItemRenderer.micOff = Микрофон иÑклучен bbb.users.usersGrid.mediaItemRenderer.micOn = Микрофон вклучен bbb.users.usersGrid.mediaItemRenderer.noAudio = Ðе Ñте вклучени во аудио конференцијата -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = ИÑчиÑти -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Презентација bbb.presentation.titleWithPres = Презентација : {0} bbb.presentation.quickLink.label = ПрезентациÑки прозорец bbb.presentation.fitToWidth.toolTip = Прилагодете ја презентацијата Ñо ширината bbb.presentation.fitToPage.toolTip = Прилагодете ја презентацијата на Ñтраната bbb.presentation.uploadPresBtn.toolTip = Прикачете презентација -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Претходен Ñлајд bbb.presentation.btnSlideNum.accessibilityName = Слајд {0} од {1} bbb.presentation.btnSlideNum.toolTip = Селектирајте Ñлајд @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Прикачувањето е уÑпешно. bbb.presentation.uploaded = Прикачено. bbb.presentation.document.supported = Прикачувањето на документот е дозволено. Започнете Ñо конвертирањето ... bbb.presentation.document.converted = УÑпешно е конвертиран канцелариÑкиот документ. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Грешка: Ве молиме контактирајте го админиÑтраторот. bbb.presentation.error.security = БезбедноÑна грешка: Ве молиме контактирајте го админиÑтраторот. bbb.presentation.error.convert.notsupported = Грешка: Прикачениот документ е недозволен. Ве молиме прикачете компатибилен фајл. @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = Прикачете bbb.fileupload.uploadBtn.toolTip = Прикачете го Ñелектираниот фајл bbb.fileupload.deleteBtn.toolTip = Избришете презентација bbb.fileupload.showBtn = Приказ -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Прикажи презентација -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Генерирање на Ñликички bbb.fileupload.progBarLbl = Ðапредување: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Разговор bbb.chat.quickLink.label = Разговорен прозорец bbb.chat.cmpColorPicker.toolTip = Боја на текÑÑ‚ bbb.chat.input.accessibilityName = Поле за едитирање на разговорните пораки bbb.chat.sendBtn.toolTip = ИÑпрати порака bbb.chat.sendBtn.accessibilityName = ИÑпрати чат порака -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Копирај го целиот текÑÑ‚ bbb.chat.publicChatUsername = Јавно bbb.chat.optionsTabName = Опции bbb.chat.privateChatSelect = Селектирајте личноÑÑ‚ за разговор Ñо приватноÑÑ‚ bbb.chat.private.userLeft = КориÑникот е заминат bbb.chat.private.userJoined = КориÑникот Ñе приклучи. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Селектирајте за да отворите приватен разговор -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Опции за разговор bbb.chat.fontSize = Големина на фонт за порака bbb.chat.cmbFontSize.toolTip = Селектирајте големина на фонт за порака -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Минимизирајте го прозорецот за пораки bbb.chat.maximizeRestoreBtn.accessibilityName = МакÑимизирајте го прозорецот за пораки bbb.chat.closeBtn.accessibilityName = Затворете го прозорецот за пораки bbb.chat.chatTabs.accessibleNotice = Ðови пораки во ова јазиче bbb.chat.chatMessage.systemMessage = СиÑтем -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Пораката е {0} карактер(и) подолга bbb.publishVideo.changeCameraBtn.labelText = Промена на веб камера bbb.publishVideo.changeCameraBtn.toolTip = Отворете го дијалог прозорецот за промента на веб камерата bbb.publishVideo.cmbResolution.tooltip = Селектирајте ја резолуцијата на веб камерата bbb.publishVideo.startPublishBtn.labelText = Започнете Ñподелување bbb.publishVideo.startPublishBtn.toolTip = Започнете Ñподелување на веб камерата -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Chrome веб камера дозвола -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Веб камери bbb.videodock.quickLink.label = Прозорец за веб камера bbb.video.minimizeBtn.accessibilityName = Минимизирајте го прозорецот за веб камера @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = Објавување ... bbb.video.publish.closeBtn.accessName = Затворете го прозорецот за подеÑувања на веб камерата bbb.video.publish.closeBtn.label = Откажи bbb.video.publish.titleBar = Прозорец за објавување на веб камера -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Стопирајте го Ñлушањето на конференцијата bbb.toolbar.phone.toolTip.unmute = Започнете го Ñлушањето на конференцијата bbb.toolbar.phone.toolTip.nomic = Ðе е пронајден микрофон -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Споделете ја Вашата веб камера bbb.toolbar.video.toolTip.stop = Стопирајте го Ñподелувањето на Вашата веб камера +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Додадете ÑопÑтвен раÑпоред на лиÑтата -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Изменете го Вашиот раÑпоред bbb.layout.loadButton.toolTip = Превземете раÑпореди од фајл bbb.layout.saveButton.toolTip = Зачувај раÑпореди во фајл @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Примени раÑпоред bbb.layout.combo.custom = * СопÑтвен раÑпоред bbb.layout.combo.customName = СопÑтвен раÑпоред bbb.layout.combo.remote = ДалечинÑко -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = РаÑпоредите беа уÑпешно зачувани +bbb.layout.save.ioerror = bbb.layout.load.complete = РаÑпоредите беа уÑпешно превземени -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Стандарден раÑпоред -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Видео разговор bbb.layout.name.webcamsfocus = Веб камера Ñредба bbb.layout.name.presentfocus = ПрезентациÑка Ñредба -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = ÐÑиÑтент на предавање bbb.layout.name.lecture = Предавање -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Молив bbb.highlighter.toolbar.pencil.accessibilityName = Сменете курÑор Ñо молив bbb.highlighter.toolbar.ellipse = Круг @@ -492,33 +500,34 @@ bbb.highlighter.toolbar.color = Избери Боја bbb.highlighter.toolbar.color.accessibilityName = Боја на маркер за цртање bbb.highlighter.toolbar.thickness = Промени дебелина bbb.highlighter.toolbar.thickness.accessibilityName = Дебелина на цртање на табла -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Одјавени +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Ок bbb.logout.appshutdown = Сервер апликацијата беше иÑклучена bbb.logout.asyncerror = Се Ñлучи аÑинхрона грешка bbb.logout.connectionclosed = Конекцијата до Ñерверот е затворена -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Конекцијата до Ñерверот е отфрлена bbb.logout.invalidapp = red5 апликацијата не поÑтои bbb.logout.unknown = Вашиот клиент ја изгуби конекцијата Ñо Ñерверот -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Вие Ñе одјавивте од конференцијата -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ðко оваа одјава беше неочекувана, кликнете на копчето подолу за да Ñе конектирате повторно. bbb.logout.refresh.label = Конектирајте Ñе повторно -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Потврдете ја одјавата bbb.logout.confirm.message = Дали Ñте Ñигурни дека Ñакате да Ñе одјавите? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Да bbb.logout.confirm.no = Ðе -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Детектирани Ñе конекциÑки проблеми bbb.connection.reconnecting=Повторна конекција bbb.connection.reestablished=Конекцијата е Ñтабилизирана @@ -530,59 +539,60 @@ bbb.notes.title = Белешки bbb.notes.cmpColorPicker.toolTip = Боја на текÑÑ‚ bbb.notes.saveBtn = Зачувај bbb.notes.saveBtn.toolTip = Зачувај забелешка -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Одберете "Дозволи" на предупредувањата што Ñе појавуваат за да Ñе провери дали Ñподелувањето на работната површина работи правилно за Ð’Ð°Ñ bbb.settings.deskshare.start = Проверете го Ñподелувањето на работната површина bbb.settings.voice.volume = ÐктивноÑÑ‚ на микрофон -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Грешка на Флеш верзија bbb.settings.flash.text = Имате Флеш {0} инÑталирано, но Ви е потребна барем {1} верзијата за кориÑтење на Ñподелувањето на работна површина. Копчето подолу ќе ја инÑталира најновата Adobe Flash верзија bbb.settings.flash.command = ИнÑталирајте ја најновата верзија на Флеш bbb.settings.isight.label = iSight грешка на веб камерата -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = ИнÑталирајте Флеш 10.2 RC2 bbb.settings.warning.label = Предупредување bbb.settings.warning.close = Затворете го предупредувањето bbb.settings.noissues = Ðема пронајдено иÑклучителни грешки bbb.settings.instructions = Прифатете го предупредувањето на Flash кое Ве прашува за дозвола за веб камера. Ðко излезот Ñе Ñовпаѓа Ñо тоа што е очекувано, Вашиот пребаруват е поÑтавен коректно. Други потенцијални грешки Ñе подолу.Прегледајте ги за да Ñе најде можно решение. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Триаголник ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Сменете го курÑот на белата табла Ñо триаголник ltbcustom.bbb.highlighter.toolbar.line = Линија @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = ТекÑÑ‚ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Сменете го курÑот на белата табла Ñо текÑÑ‚ ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Боја на текÑÑ‚ ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Големина на фонт -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Подготвено @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Вие Ñте позицион bbb.accessibility.chat.chatBox.navigatedLatest = Вие Ñте позиционирани до поÑледната порака bbb.accessibility.chat.chatBox.navigatedLatestRead = Вие Ñте позиционирани на најчеÑто читаната порака bbb.accessibility.chat.chatwindow.input = Влез за разговор -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Ве молиме кориÑтете ги копчињта Ñо Ñтрелки за да Ñе позиционирате низ разговорните пораки bbb.accessibility.notes.notesview.input = Влез за забелешки bbb.shortcuthelp.title = Кратенки -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Минимизирајте го прозорецот Ñо кратенка за помош bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = МакÑимизирајте го прозорецот Ñо кратенка за помош bbb.shortcuthelp.closeBtn.accessibilityName = Затворете го прозорецот Ñо кратенка за помош -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Глобални кратенки bbb.shortcuthelp.dropdown.presentation = ПрезентациÑки кратенки bbb.shortcuthelp.dropdown.chat = Разговорни кратенки bbb.shortcuthelp.dropdown.users = КориÑнички кратенки -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Кратенка bbb.shortcuthelp.headers.function = Функција @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Минимизирајте го Ñе bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = МакÑимизирајте го Ñегашниот прозорец -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = ФокуÑирајте Ñе надвор од Flash прозорецот bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Вклучете и иÑклучете звук на Вашиот микрофон @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = ПремеÑтете го фокуÑот на презентациÑкиот прозорец bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = ПремеÑтете го фокуÑот на разговорниот прозорец -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Отворете Ñподелувачки прозорец @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Одјавете Ñе од оваа Ñредб bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Подигнете рака -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Прикачете презентација bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Претходниот Ñлајд @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Следниот Ñлајд bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Вклопете ги Ñлајдовите Ñо ширината -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Вклопете ги Ñлајдовите Ñо Ñтраната -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Ðаправете ја Ñелектираната личноÑÑ‚ презентер -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = ИÑфрлете ја Ñелектираната личноÑÑ‚ од Ñредбата +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Вклучи или иÑклучи звук на Ñелектираната личноÑÑ‚ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Вклучи или иÑклучи звук на Ñите кориÑници bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = ИÑклучи звук на Ñите оÑвен на презентерот -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = ФокуÑирај на јазичето за разговор -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = ФокуÑирај на избирачот за боја на фонт bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = ИÑпрати чат порака -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = За навигација на пораките, Вие мора да Ñе фокуÑирате на разговорниот прозорец @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Позиционирај на н bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Привремена кратенка за дебагирање -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Ðаправете анкета bbb.polling.startButton.label = Ðаправете анкета bbb.polling.publishButton.label = ПоÑтирај bbb.polling.closeButton.label = Затвори -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Моментални резултати од анкета +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = ВнеÑете анкетирачки избори bbb.polling.respondersLabel.novotes = Чекање на одговори bbb.polling.respondersLabel.text = {0} кориÑници одговориле @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Затвори ги Ñите ви bbb.users.settings.lockAll = Заклучи ги Ñите кориÑници bbb.users.settings.lockAllExcept = Закличи ги кориÑниците оÑвен презентерот bbb.users.settings.lockSettings = Заклучи ги гледачите ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Отклучи ги Ñите гледачи bbb.users.settings.roomIsLocked = Стандардно заклучен bbb.users.settings.roomIsMuted = Стандардно иÑклучен звук @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Примени ги подеÑувањата з bbb.lockSettings.cancel = Откажи bbb.lockSettings.cancel.toolTip = Затвори го прозорецот без зачувувања +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = МодераторÑко заклучување bbb.lockSettings.privateChat = Приватен Разговор bbb.lockSettings.publicChat = Јавен разговор bbb.lockSettings.webcam = Веб камера +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Микрофон bbb.lockSettings.layout = Рапоред bbb.lockSettings.title=Заклучи ги гледачите @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Функција bbb.lockSettings.locked=Заклучен bbb.lockSettings.lockOnJoin=Заклучување на Приклучување -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ml_IN/bbbResources.properties b/bigbluebutton-client/locale/ml_IN/bbbResources.properties index 9b14c1d483448804067bba4f1484c6c32cfd6afe..a2823b10c78059d3bd8952fd5058480ceacb2a8b 100644 --- a/bigbluebutton-client/locale/ml_IN/bbbResources.properties +++ b/bigbluebutton-client/locale/ml_IN/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = സെരàµâ€à´µà´°àµâ€ കണകàµà´Ÿàµ ചെയàµà´¯à´ªàµà´ªàµ†à´Ÿàµà´¨àµà´¨àµ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = à´•àµà´·à´®à´¿à´•àµà´•à´£à´‚, സെരàµâ€à´µà´°àµâ€ കണകàµà´Ÿàµ ചെയàµà´¯à´¾à´¨àµâ€ സാദികàµà´•àµà´¨àµà´¨à´¿à´²àµà´² -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = ലോഗൠവിനàµâ€à´¡àµ‹ à´¤àµà´±à´•àµà´•àµà´¨àµà´¨àµ -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = à´ªàµà´¨à´•àµà´°à´®àµ€à´•à´°àµ€à´•à´°à´¿à´•àµà´•à´¾à´‚ -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = പരീകàµà´·à´£ ശബàµà´¦à´‚ à´¶àµà´°à´µà´¿à´•àµà´•à´¾à´‚ -bbb.micSettings.playSound.toolTip = Play music to test your speakers +bbb.micSettings.playSound.toolTip = bbb.micSettings.hearFromHeadset = à´•à´®àµà´ªàµà´¯àµ‚à´Ÿàµà´Ÿà´°àµâ€ à´¸àµà´ªàµ€à´•àµà´•à´°àµâ€à´¨àµ പകരം ഹെഡàµà´¸àµ†à´±àµà´±à´¿à´²àµâ€ ശബàµà´¦à´‚ കേളàµâ€à´•àµ‡à´£àµà´Ÿà´¤àµà´£àµà´Ÿàµ -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = മൈകàµà´°àµ‹à´«àµ‹à´£àµâ€ മാറàµà´±à´¾à´‚ -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = സംസാരതàµà´¤à´¿à´²àµâ€ ചേരാം -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = സഹായം bbb.mainToolbar.logoutBtn = ലോഗàµà´”à´Ÿàµà´Ÿàµâ€Œ -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = bbb.mainToolbar.settingsBtn = സെറàµà´±à´¿à´‚à´—àµà´¸àµ bbb.mainToolbar.settingsBtn.toolTip = സെറàµà´±à´¿à´‚à´—àµà´¸àµ à´¤àµà´±à´•àµà´•à´¾à´‚ -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = അവതരണം -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = കാനàµâ€à´¸àµ†à´²àµâ€ ചെയàµà´¯à´¾à´‚ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/mn_MN/bbbResources.properties b/bigbluebutton-client/locale/mn_MN/bbbResources.properties index fc7b38df9e1ec8bd2e31b4dae8378b2b659e784c..4b379a7b763eb609ea6e32f6b89631fc47a0324b 100644 --- a/bigbluebutton-client/locale/mn_MN/bbbResources.properties +++ b/bigbluebutton-client/locale/mn_MN/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Сервер луу холбогдож байна. -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Уучилаарай, бид Ñервер лүү холбогдож чадÑангүй -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Лог цонхийг нÑÑÑ… bbb.mainshell.meetingNotFound = Уулзалт олдÑонгүй bbb.mainshell.invalidAuthToken = Ðууцлалын түлхүүр буруу байна bbb.mainshell.resetLayoutBtn.toolTip = Байршилыг шинÑчилÑÑ… bbb.mainshell.notification.tunnelling = Холбож байна bbb.mainshell.notification.webrtc = WebRTC Дуу -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Таны толь бичиг хуучирÑан байна bbb.oldlocalewindow.reminder2 = хөтөчийнхөө каш - ийг цÑвÑрлÑÐ½Ñ Ò¯Ò¯ bbb.oldlocalewindow.windowTitle = Ðнхааруулга: ХуучирÑан толь байна @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Цуцлах bbb.micSettings.connectingtoecho = Холбогдож байна bbb.micSettings.connectingtoecho.error = Цуурай Шалгалтын Ðлдаа: Ðдминд хандана уу. bbb.micSettings.cancel.toolTip = Дууг хаах -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Дууны тохиргоо. ÐнÑÑ…Ò¯Ò¯ цонхыг хаах хүртÑл ÑÐ½Ñ Ð½ÑŒ байÑаар байна. bbb.micSettings.webrtc.title = WebRTC ДÑмжлÑг bbb.micSettings.webrtc.capableBrowser = Таны веб хөтөч WebRTC.дÑмжиж байна @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Холбогдож байна bbb.micSettings.webrtc.transferring = Дамжуулах bbb.micSettings.webrtc.endingecho = Ðудио идÑвхижүүлж байна bbb.micSettings.webrtc.endedecho = Цуурай шалгалт дууÑлаа +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox микрофоны Ñрх -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome микрофоны Ñрх -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Дууны анхааруулга bbb.micWarning.joinBtn.label = Ямар ч тохиолдолд оролцох bbb.micWarning.testAgain.label = Дахин шалгах @@ -86,21 +87,21 @@ bbb.webrtcWarning.failedError.1007 = Ðлдаа 1007: ICE negotiation алдла bbb.webrtcWarning.failedError.1008 = Ðлдаа 1008: Дамжуулж чадÑангүй bbb.webrtcWarning.failedError.1009 = Ðлдаа 1009: STUN/TURN Ñерверийн мÑдÑÑллийг авч чадÑангүй bbb.webrtcWarning.failedError.1010 = Ðлдаа 1010: ICE дамжуулах хугацаа дууÑÑан -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = Ðлдаа {0}: Үл мÑдÑгдÑÑ… алдааны код bbb.webrtcWarning.failedError.mediamissing = WebRTC залгахын тулд таны микрофоныг авч чадÑангүй bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC Цуурай шалгалт гÑнÑÑ‚ зогÑлоо -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = ТуÑламж bbb.mainToolbar.logoutBtn = Гарах bbb.mainToolbar.logoutBtn.toolTip = Гарах -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Ð¥ÑлÑÑ Ñонгох bbb.mainToolbar.settingsBtn = Тохиргоо bbb.mainToolbar.settingsBtn.toolTip = Тохиргоог нÑÑÑ… @@ -110,34 +111,34 @@ bbb.mainToolbar.recordBtn.toolTip.start = БичлÑгийг ÑхлүүлÑÑ… bbb.mainToolbar.recordBtn.toolTip.stop = БичлÑгийг зогÑоох bbb.mainToolbar.recordBtn.toolTip.recording = ÐÐ½Ñ Ñ…Ð¸Ñ‡ÑÑл бичÑгдÑÑн bbb.mainToolbar.recordBtn.toolTip.notRecording = ÐÐ½Ñ Ñ…Ð¸Ñ‡ÑÑл бичигдÑÑгүй -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = БичигдÑж буйг баталгаажуулна уу bbb.mainToolbar.recordBtn.confirm.message.start = БичлÑгийг ÑхлүүлÑÑ… Ò¯Ò¯? bbb.mainToolbar.recordBtn.confirm.message.stop = БичлÑгийг зогÑоох уу? -bbb.mainToolbar.recordBtn..notification.title = БичлÑгийн мÑдÑгдÑл -bbb.mainToolbar.recordBtn..notification.message1 = Та ÑÐ½Ñ ÑƒÑƒÐ»Ð·Ð°Ð»Ñ‚Ñ‹Ð³ бичиж болно -bbb.mainToolbar.recordBtn..notification.message2 = Та бичлÑг хийж ÑхлүүлÑÑ…/зогÑоохын тулд дÑÑÑ€ байгаа БичлÑг ÐхлүүлÑÑ…/ЗогÑоох товчлуурыг дарах Ñ…ÑÑ€ÑгтÑй. +bbb.mainToolbar.recordBtn.notification.title = БичлÑгийн мÑдÑгдÑл +bbb.mainToolbar.recordBtn.notification.message1 = Та ÑÐ½Ñ ÑƒÑƒÐ»Ð·Ð°Ð»Ñ‚Ñ‹Ð³ бичиж болно +bbb.mainToolbar.recordBtn.notification.message2 = Та бичлÑг хийж ÑхлүүлÑÑ…/зогÑоохын тулд дÑÑÑ€ байгаа БичлÑг ÐхлүүлÑÑ…/ЗогÑоох товчлуурыг дарах Ñ…ÑÑ€ÑгтÑй. bbb.mainToolbar.recordingLabel.recording = (Бичиж байна) bbb.mainToolbar.recordingLabel.notRecording = Бичихгүй байна -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = ÐœÑдÑгдлүүдийн тохиргоо bbb.clientstatus.notification = Уншаагүй мÑдÑгдÑл -bbb.clientstatus.close = Close +bbb.clientstatus.close = bbb.clientstatus.tunneling.title = Галт хана bbb.clientstatus.tunneling.message = Галт хана Ñервер лүү холбогдох 1935 портыг хааж байна. Галт ханы тохиргоог Ñнзлах ÑÑвÑл Ó©Ó©Ñ€ ÑүлжÑÑнÑÑÑ Ñ…Ð¾Ð»Ð±Ð¾Ð³Ð´Ð¾Ð¶ үзÑхийг Ñанал болгож байна bbb.clientstatus.browser.title = Ð’Ñб хөтөчийн хувилбар @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Таны вÑб хөтөч ({0}) шинÑчл bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Таны Flash Player ({0}) шинÑчлÑгдÑÑгүй байна. Сүүлийн хувилбарыг татахыг Ñанал болгож байна. bbb.clientstatus.webrtc.title = Дуу -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Дууны чанарыг Ñайн байлгахын тулд Firefox ÑÑвÑл Chrome ашиглахыг Ñанал болгож байна. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Буулгах bbb.window.maximizeRestoreBtn.toolTip = Өргөх bbb.window.closeBtn.toolTip = Хаах @@ -188,21 +189,21 @@ bbb.users.usersGrid.statusItemRenderer = Төлөв bbb.users.usersGrid.statusItemRenderer.changePresenter = Хөтлөгч болгох bbb.users.usersGrid.statusItemRenderer.presenter = Хөтлөгч bbb.users.usersGrid.statusItemRenderer.moderator = Зохицуулагч -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = ҮзÑгч bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Камераа хуваалцах bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = ИлтгÑгч Ò¯Ò¯ @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Дуу нÑÑгдÑÑн {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Дуу хаагдÑан {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Түгжих {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = ÐÑÑÑ… {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = ХаÑах {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Камерыг түгÑÑж байна bbb.users.usersGrid.mediaItemRenderer.micOff = Микрофон унтарÑан bbb.users.usersGrid.mediaItemRenderer.micOn = Микрофон аÑаалттай bbb.users.usersGrid.mediaItemRenderer.noAudio = Ðудиод холбогдоогүй байна -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = ЦÑвÑрлÑÑ… -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Танилцуулга файл bbb.presentation.titleWithPres = Танилцуулга файл {0} bbb.presentation.quickLink.label = Танилцуулга bbb.presentation.fitToWidth.toolTip = Танилцуулгыг өргөнөөр багтаах bbb.presentation.fitToPage.toolTip = Танилцуулгыг хуудÑанд багтаах bbb.presentation.uploadPresBtn.toolTip = Танилцуулга файл илгÑÑÑ… -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Өмнөх Ñ…ÑƒÑƒÐ´Ð°Ñ bbb.presentation.btnSlideNum.accessibilityName = Ðийт {1} Ñлайдын {0} bbb.presentation.btnSlideNum.toolTip = ХуудÑаа Ñонгоно уу @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = ИлгÑÑж дууÑлаа. Файлыг Ñ…Ó© bbb.presentation.uploaded = ИлгÑÑгдÑÑн bbb.presentation.document.supported = ИлгÑÑгдÑÑн файл зөв байна. Хөрвүүлж ÑÑ…ÑллÑÑ... bbb.presentation.document.converted = ÐžÑ„Ñ„Ð¸Ñ Ð±Ð¸Ñ‡Ð¸Ð³ баримтыг хөрвүүлж дууÑлаа -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Оролт гаралтийн алдаа: ÑиÑтем админд хандана уу. bbb.presentation.error.security = Ðууцлалын алдаа: СиÑтемийн админд хандана уу bbb.presentation.error.convert.notsupported = Ðлдаа: Таны илгÑÑÑÑн файл буруу файл байна. Зөв файлыг илгÑÑÐ½Ñ Ò¯Ò¯ @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = ИлгÑÑÑ… bbb.fileupload.uploadBtn.toolTip = Файл илгÑÑÑ… bbb.fileupload.deleteBtn.toolTip = Танилцуулга уÑтгах bbb.fileupload.showBtn = ДүрÑлÑÑ… -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Танилцуулга -ийг үзүүлÑÑ… -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Зургийг бий болгож байна bbb.fileupload.progBarLbl = Явц -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Чат bbb.chat.quickLink.label = Чат bbb.chat.cmpColorPicker.toolTip = Бичгийн өнгө bbb.chat.input.accessibilityName = Ð—ÑƒÑ€Ð²Ð°Ñ Ð±Ð¸Ñ‡Ð¸Ñ… Ñ…ÑÑÑг bbb.chat.sendBtn.toolTip = Захидал илгÑÑÑ… bbb.chat.sendBtn.accessibilityName = Ð—ÑƒÑ€Ð²Ð°Ñ Ð¸Ð»Ð³ÑÑÑ… -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Бүх текÑтыг хуулах bbb.chat.publicChatUsername = Бүгд bbb.chat.optionsTabName = Тохиргоо bbb.chat.privateChatSelect = Чатлах хүнÑÑ Ñонгоно уу bbb.chat.private.userLeft = Ð¥ÑÑ€ÑглÑгч гарлаа bbb.chat.private.userJoined = Ð¥ÑÑ€ÑглÑгч холбогдлоо -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Харилцах хүнÑÑ Ñонгоно уу -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Чат тохиргоо bbb.chat.fontSize = Фонт Ñ…ÑмжÑÑ bbb.chat.cmbFontSize.toolTip = Фонт Ñ…ÑмжÑÑ -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = ЗурваÑын тавцанг буулгах bbb.chat.maximizeRestoreBtn.accessibilityName = ЗурваÑын тавцанг өргөх bbb.chat.closeBtn.accessibilityName = ЗурваÑын тавцанг хаах bbb.chat.chatTabs.accessibleNotice = Ð¨Ð¸Ð½Ñ Ð·ÑƒÑ€Ð²Ð°Ñ bbb.chat.chatMessage.systemMessage = СиÑтем -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long bbb.publishVideo.changeCameraBtn.labelText = Камер Ñолих bbb.publishVideo.changeCameraBtn.toolTip = Камер тохиргоо хийх bbb.publishVideo.cmbResolution.tooltip = Камерын Ñ…ÑмжÑÑг тодорхойлно уу bbb.publishVideo.startPublishBtn.labelText = ТүгÑÑж ÑхлÑÑ… bbb.publishVideo.startPublishBtn.toolTip = Хуваалтыг ÑхлүүлÑÑ… -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Chrome камерны Ñрх -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Камер тавцан bbb.videodock.quickLink.label = Камерны цонх bbb.video.minimizeBtn.accessibilityName = Камерны тавцанг буулгах @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = ÐийтлÑж байна bbb.video.publish.closeBtn.accessName = Камер тохиргоо цонхыг хаах bbb.video.publish.closeBtn.label = Цуцлах bbb.video.publish.titleBar = Камер тавцанг түгÑÑÑ… -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Уулзалтыг ÑонÑохоо болих bbb.toolbar.phone.toolTip.unmute = Уулзалтыг ÑонÑож ÑхлÑÑ… bbb.toolbar.phone.toolTip.nomic = Микрофон байхгүй байна -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Камераа тараах bbb.toolbar.video.toolTip.stop = Камер тараахыг зогÑоох +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = ӨөрчилÑөн байрлалыг лиÑÑ‚ Ñ€Ò¯Ò¯ нÑмÑÑ… -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Байрлалаа Ñолих bbb.layout.loadButton.toolTip = Байрлалыг файлаах унших bbb.layout.saveButton.toolTip = Байрлалыг файлд хадгалах @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Байрлалыг идÑвхжүүлÑÑ… bbb.layout.combo.custom = * ӨөрчилÑөн байрлал bbb.layout.combo.customName = ӨөрчилÑөн байрлал bbb.layout.combo.remote = Удирдах -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Байрлалууд амжилттай хадгалагдлаа +bbb.layout.save.ioerror = bbb.layout.load.complete = Байрлалууд амжилттай уншигдлаа -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = ЗаÑмал байршил -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Видео чат bbb.layout.name.webcamsfocus = Камертай уулзалт bbb.layout.name.presentfocus = Танилцуулгатай уулзалт -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = ИлтгÑгчийн туÑлах bbb.layout.name.lecture = ИлтгÑгч -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Тодруулагч bbb.highlighter.toolbar.pencil.accessibilityName = КурÑорыг харандаа болгох bbb.highlighter.toolbar.ellipse = Бөөрөнхий @@ -492,33 +500,34 @@ bbb.highlighter.toolbar.color = Өнгөө Ñонгоно уу bbb.highlighter.toolbar.color.accessibilityName = Өнгө Ñонгоно уу bbb.highlighter.toolbar.thickness = Үе давхраа Ñолих bbb.highlighter.toolbar.thickness.accessibilityName = ҮзÑгний Ñ…ÑмжÑÑ -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = ГарÑан +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ОК bbb.logout.appshutdown = Сервер програм унтарÑан байна bbb.logout.asyncerror = Дуу дүрÑийг дамжуулах үед алдаа гарлаа bbb.logout.connectionclosed = Сервер лүү холбогдох холболт хаагдлаа -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Серверийн холболт буцаагдлаа bbb.logout.invalidapp = Ред5 про байхгүй байна bbb.logout.unknown = Та ÑерверÑÑÑ Ñ…Ð¾Ð»Ð±Ð¾Ð¾ таÑарлаа -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Та конференÑÑÑÑ Ð³Ð°Ñ€Ð»Ð°Ð° -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ð¥ÑрвÑÑ Ð³ÑнÑÑ‚ гарÑан бол доорх товчлуурыг дарж ÑргÑн холбогдоно уу bbb.logout.refresh.label = Дахин холбогдох -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Гарах bbb.logout.confirm.message = Ó¨Ñ€Ó©Ó©Ð½Ó©Ó©Ñ Ð³Ð°Ñ€Ð°Ñ… уу? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Тийм bbb.logout.confirm.no = Үгүй -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Холболтын алдаа гарлаа bbb.connection.reconnecting=Дахин холбогдох bbb.connection.reestablished=Холболт хийгдÑÑн @@ -530,59 +539,60 @@ bbb.notes.title = ТÑмдÑглÑл bbb.notes.cmpColorPicker.toolTip = ТекÑÑ‚ өнгө bbb.notes.saveBtn = Хадгалах bbb.notes.saveBtn.toolTip = ТÑмдÑглÑл хадгалах -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Поп ап ийг зөвшөөрч ДÑлгÑц түгÑÑлтийг ÑÑ…Ð»Ò¯Ò¯Ð»Ð½Ñ Ò¯Ò¯ bbb.settings.deskshare.start = ДÑлгÑц хуваах функцийг шалгах bbb.settings.voice.volume = Микрофонийн идÑвхи -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Флаш хувилбарийн алдаа bbb.settings.flash.text = Таньд флаш {0} ÑууÑан байна, гÑвч таньд доор хаÑж {1} ÑууÑан байж BigBlueButton ийг ажиллуулана. Ðнд дараад Флаш татаж авна уу. bbb.settings.flash.command = Ð¨Ð¸Ð½Ñ Ð¤Ð»Ð°Ñˆ Ñуулгах bbb.settings.isight.label = iSight камерт алдаа гарлаа -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Флаш 11.2 RC2 Ñуулгах bbb.settings.warning.label = Ðнхаар bbb.settings.warning.close = ÐÐ½Ñ Ð°Ð½Ñ…Ð°Ð°Ñ€ÑƒÑƒÐ»Ð³Ð¸Ð¹Ð³ хаах bbb.settings.noissues = Ямар нÑгÑн дууÑгаагүй төлөв илÑÑ€ÑÑнгүй bbb.settings.instructions = Флаш Ñ‚Ð°Ð½Ð¸Ð°Ñ ÐºÐ°Ð¼ÐµÑ€Ð¸Ð¹Ð³ чинь буÑдад тараах зөвшөөрөл авах цонх гарч ирнÑ. Ð¥ÑрвÑÑ Ñ‚Ð° өөрийнхөө камерийг харж, өөрийгөө ÑонÑож болж байвал зүгÑÑÑ€ байна гÑÑÑн үг. БуÑад Ñмар нÑгÑн алдаа байвал хайж олно уу -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Гурвалжин ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = КурÑорийг гурвалжин дүрÑÑ‚ шилжүүлÑÑ… ltbcustom.bbb.highlighter.toolbar.line = Ð—ÑƒÑ€Ð°Ð°Ñ @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = ТекÑÑ‚ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = КурÑорийг ТекÑÑ‚ шилжүүлÑÑ… ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = ТекÑÑ‚ өнгө ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Фонт Ñ…ÑмжÑÑ -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = БÑлÑн @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Ðхний зурваÑд Ñ…Ò¯ bbb.accessibility.chat.chatBox.navigatedLatest = Сүүлчийн зурваÑд хүрлÑÑ bbb.accessibility.chat.chatBox.navigatedLatestRead = Хамгийн Ñхний уншÑан зурваÑд хүрлÑÑ bbb.accessibility.chat.chatwindow.input = Чат оролт -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Гаран дÑÑрхи Ñумны товчлуурыг ашиглан чатны зурваÑыг Ñолино уу bbb.accessibility.notes.notesview.input = Тайлбарын оролт bbb.shortcuthelp.title = Товчилборууд -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Товчилуурын туÑламж тавцанг буулгах bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Товчилуурын туÑламж тавцанг өргөх bbb.shortcuthelp.closeBtn.accessibilityName = Товчилуурын туÑламж цонхыг хаах -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Богино Ñ…Ð¾Ð»Ð±Ð¾Ð¾Ñ bbb.shortcuthelp.dropdown.presentation = Танилцуулгын Ñ…Ð¾Ð»Ð±Ð¾Ð¾Ñ bbb.shortcuthelp.dropdown.chat = Чатны Ñ…Ð¾Ð»Ð±Ð¾Ð¾Ñ bbb.shortcuthelp.dropdown.users = Ð¥ÑÑ€ÑглÑгчийн Ñ…Ð¾Ð»Ð±Ð¾Ð¾Ñ -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Ð¥Ð¾Ð»Ð±Ð¾Ð¾Ñ bbb.shortcuthelp.headers.function = Функц @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Уг тавцанг буулгах bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Уг тавцанг өргөх -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Флаш Ñ†Ð¾Ð½Ñ…Ð½Ð¾Ð¾Ñ Ñ„Ð¾ÐºÑƒÑ Ð³Ð°Ñ€Ð³Ð°Ñ… bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Дуугаа хаах ÑÑвÑл нÑÑÑ… @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Танилцуулга тавцан bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Чат тавцан -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = ДÑлгÑц түгÑÑлт @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Гарах bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Гараа өргөх -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Файл илгÑÑÑ… bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Өмнөх Ñ…ÑƒÑƒÐ´Ð°Ñ @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Дараагийн Ñ…ÑƒÑƒÐ´Ð°Ñ bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Танилцуулгыг өргөнөөр багтаах -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Танилцуулгыг хуудÑанд багтаах -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = СонгогдÑон хүнийг хөтлөгч болгох -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Ó¨Ñ€Ó©Ó©Ð½Ó©Ó©Ñ Ð³Ð°Ñ€Ð³Ð°Ñ… +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = СонгогдÑон хүний дууг хаах нÑÑÑ… bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Бүх хүмүүÑийн дууг хаах нÑÑÑ… bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Ð¥Ó©Ñ‚Ð»Ó©Ð³Ñ‡Ó©Ó©Ñ Ð±ÑƒÑад хүмүүÑийн дууг хаах -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Чат -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Өнгө Ñонгогч bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Ð—ÑƒÑ€Ð²Ð°Ñ Ð¸Ð»Ð³ÑÑÑ… -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = ЗурваÑуудыг үзÑхийн тулд чатны цонхийг Ñ„Ð¾ÐºÑƒÑ Ñ…Ð¸Ð¹Ð½Ñ Ò¯Ò¯. @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Сүүлд уншÑан зурв bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Түр дебаг товчлуур -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Санал аÑуулга ÑхлүүлÑÑ… bbb.polling.startButton.label = Санал аÑуулга ÑхлүүлÑÑ… bbb.polling.publishButton.label = ÐийтлÑÑ… bbb.polling.closeButton.label = Хаах -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Санал аÑуулгын одоогийн үр дүн +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Санал аÑуулгад орох bbb.polling.respondersLabel.novotes = Хариу хүлÑÑж байна bbb.polling.respondersLabel.text = {0} Ð¥ÑÑ€ÑглÑгч хариулÑан байна @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Бүх Видеог хаах bbb.users.settings.lockAll = Бүх хүмүүÑийг түгжих bbb.users.settings.lockAllExcept = Ð¥Ó©Ñ‚Ð»Ó©Ð³Ñ‡Ó©Ó©Ñ Ð±ÑƒÑад хүмүүÑийг түгжих bbb.users.settings.lockSettings = Цоожлох ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = ҮзÑгчдийг Ñ†Ð¾Ð¾Ð¶Ð½Ð¾Ð¾Ñ Ð¼ÑƒÐ»Ñ‚Ð»Ð°Ñ… bbb.users.settings.roomIsLocked = ТүгжигдÑÑн bbb.users.settings.roomIsMuted = Дуу хаагдÑан @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Цоожлох тохиргоог идÑвхжү bbb.lockSettings.cancel = Цуцлах bbb.lockSettings.cancel.toolTip = ХадгалахгүйгÑÑÑ€ хаах +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Зохицуулагч түгжиж байна bbb.lockSettings.privateChat = Хувийн чат bbb.lockSettings.publicChat = Ðийтийн чат bbb.lockSettings.webcam = Камер +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Микрофон bbb.lockSettings.layout = Байршил bbb.lockSettings.title=ҮзÑгчдийг цоожлох ... @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Онцлог bbb.lockSettings.locked=ТүгжигдÑÑн bbb.lockSettings.lockOnJoin=ХолбогдÑоны дараа түгжих -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/mr/bbbResources.properties b/bigbluebutton-client/locale/mr/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/mr/bbbResources.properties +++ b/bigbluebutton-client/locale/mr/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ms_MY/bbbResources.properties b/bigbluebutton-client/locale/ms_MY/bbbResources.properties index 8ef0b49da9b69dbab8c0557307f61a611f6749af..056c11a98443f36edb32c7bd540521738e319953 100644 --- a/bigbluebutton-client/locale/ms_MY/bbbResources.properties +++ b/bigbluebutton-client/locale/ms_MY/bbbResources.properties @@ -1,33 +1,33 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Penyambungan kepada server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Maaf, server tidak dapat disambungkan. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Buka Log Window bbb.mainshell.meetingNotFound = perkumpulan tidak ditemui bbb.mainshell.invalidAuthToken = Pengesahan Token Tidak sah bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling +bbb.mainshell.notification.tunnelling = bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Anda mungkin menggunakan terjemahan bahasa yang lama untuk BigblueButton. bbb.oldlocalewindow.reminder2 = Sila kosongkan cache browser dan cuba sekali lagi. bbb.oldlocalewindow.windowTitle = Perhatian: Bahasa Terjemahan yang lama. bbb.audioSelection.title = Bagaimana anda ingin sertai audio? bbb.audioSelection.btnMicrophone.label = mikrofon -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone +bbb.audioSelection.btnMicrophone.toolTip = bbb.audioSelection.btnListenOnly.label = Hanya mendengar -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only +bbb.audioSelection.btnListenOnly.toolTip = bbb.audioSelection.txtPhone.text = Bagi sertai mesyuarat melalui telefon, dail: {0} diikuti {1} sebagai pin nombor persidangan bbb.micSettings.title = Ujian Audio bbb.micSettings.speakers.header = Cubaan Pembesar Suara @@ -47,7 +47,7 @@ bbb.micSettings.comboMicList.toolTip = Pilihan mikrofon bbb.micSettings.micRecordVolume.label = Gema bbb.micSettings.micRecordVolume.toolTip = Aturan gema mikrofon anda bbb.micSettings.nextButton = selanjutnya -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Sertai Audio bbb.micSettings.join.toolTip = \n\nSertai persidangan audio bbb.micSettings.cancel = Batal @@ -61,46 +61,47 @@ bbb.micSettings.webrtc.capableBrowser = Carian Sokongan WebRTC bbb.micSettings.webrtc.capableBrowser.dontuseit = Klik untuk tidak mengunakan WebRTC bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Klik disini jika anda tidak mengunakan teknologi WebRTC (saranan jika anda mempunyai masalah mengunakannya). bbb.micSettings.webrtc.notCapableBrowser = WebRTC tidak berfungis dalam carian anda. Sila gunakan Google Chrome (versi 32 and keatas); atau Mozila Firefox (versi 26 dan ke atas). Anda masih boleh sertai persidangan suara mengunakan platform Adobe Flash. -bbb.micSettings.webrtc.connecting = Calling +bbb.micSettings.webrtc.connecting = bbb.micSettings.webrtc.waitingforice = Sambungan -bbb.micSettings.webrtc.transferring = Transferring +bbb.micSettings.webrtc.transferring = bbb.micSettings.webrtc.endingecho = Sertai Audio bbb.micSettings.webrtc.endedecho = Percubaan Gema tamat. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = kebenaran Mikrofon Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = kebenaran Mikrofon Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Amaran Audio bbb.micWarning.joinBtn.label = Sertai bbb.micWarning.testAgain.label = Percubaan semula bbb.micWarning.message = mikrofon anda tidak menunjukan sebarang aktiviti, kemungkinan anda tidak dapat mendengar semasa sesi. bbb.webrtcWarning.message = WebRTC isu dikesan: {0}. Anda ingain mengunakan Flash? bbb.webrtcWarning.title = WebRTC Audio Gagal -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = bbb.webrtcWarning.failedError.1008 = Ralat 1008: hantar gagal -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Bantuan bbb.mainToolbar.logoutBtn = Keluar bbb.mainToolbar.logoutBtn.toolTip = Keluar -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Pilih bahasa bbb.mainToolbar.settingsBtn = Tetapan bbb.mainToolbar.settingsBtn.toolTip = Buka Tetapan @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = Mulakan rakamaan bbb.mainToolbar.recordBtn.toolTip.stop = Tamatkan rakamaan bbb.mainToolbar.recordBtn.toolTip.recording = Sesi telah mula dirakam bbb.mainToolbar.recordBtn.toolTip.notRecording = sesi belum mula dirakam -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = sahkan rakaman bbb.mainToolbar.recordBtn.confirm.message.start = Anda pasti ingin mulakan sasi rakaman? bbb.mainToolbar.recordBtn.confirm.message.stop = Anda pasti ingin hentikan sesi rakaman? -bbb.mainToolbar.recordBtn..notification.title = Pemberitahuan Rakaman -bbb.mainToolbar.recordBtn..notification.message1 = Anda boleh rakaman mesyuarat ini. -bbb.mainToolbar.recordBtn..notification.message2 = Anda boleh menekan butang rakaman Mula/Henti pada bar tajuk untuk Mula/tamatkan rakaman. +bbb.mainToolbar.recordBtn.notification.title = Pemberitahuan Rakaman +bbb.mainToolbar.recordBtn.notification.message1 = Anda boleh rakaman mesyuarat ini. +bbb.mainToolbar.recordBtn.notification.message2 = Anda boleh menekan butang rakaman Mula/Henti pada bar tajuk untuk Mula/tamatkan rakaman. bbb.mainToolbar.recordingLabel.recording = (Rakaman) bbb.mainToolbar.recordingLabel.notRecording = Tidak Dirakam -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = bbb.clientstatus.close = batal -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = sambungan Flash Player Anda ({0}) adalah tamat. Saranan untuk mengemaskini ke versi terbaru bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Kecilkan bbb.window.maximizeRestoreBtn.toolTip = Besarkan bbb.window.closeBtn.toolTip = Tutup @@ -171,8 +172,8 @@ bbb.users.settings.webcamSettings = Tetapan Webcam bbb.users.settings.muteAll = Senyapkan Semua Pengguna bbb.users.settings.muteAllExcept = Senyapkan Semua Pengguna Kecuali Penyampai bbb.users.settings.unmuteAll = Suarakan Semua Pengguna -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = bbb.users.roomMuted.text = Pemerhati disenyapkan bbb.users.roomLocked.text = Pemerhati dikunci bbb.users.pushToTalk.toolTip = Cakap @@ -180,7 +181,7 @@ bbb.users.pushToMute.toolTip = Senyapkan diri sendiri bbb.users.muteMeBtnTxt.talk = Suarakan bbb.users.muteMeBtnTxt.mute = Senyapkan bbb.users.muteMeBtnTxt.muted = Disenyapkan -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Senarai Pengguna. Gunakan kekunci anak panah. bbb.users.usersGrid.nameItemRenderer = Nama bbb.users.usersGrid.nameItemRenderer.youIdentifier = anda @@ -188,24 +189,24 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Tekan untuk pembentangan bbb.users.usersGrid.statusItemRenderer.presenter = Penyampai bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Media bbb.users.usersGrid.mediaItemRenderer.talking = Bercakap bbb.users.usersGrid.mediaItemRenderer.webcam = Berkongsi Webcam @@ -214,40 +215,41 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Suarakan {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Senyapkan {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Kunci {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Buka {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Berkongsi Webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon tutup bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon buka bbb.users.usersGrid.mediaItemRenderer.noAudio = Tidak di dalam sidang audio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentation bbb.presentation.titleWithPres = Presentation: {0} bbb.presentation.quickLink.label = Window pembentangan -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = bbb.presentation.uploadPresBtn.toolTip = Muat naik pembentangan -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Slide sebelumnya -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = Pilih slide bbb.presentation.forwardBtn.toolTip = Slide seterusnya bbb.presentation.maxUploadFileExceededAlert = Error: File lebih besar daripada yang dibenarkan. @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Muatnaik telah selesai. Sila tunggu sementara bbb.presentation.uploaded = dimuatnaik. bbb.presentation.document.supported = Dokumen yang dimuatnaik adalah disokong. Bermula untuk menukar... bbb.presentation.document.converted = Berjaya menukar dokumen office. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = Tolong tukar document kepada PDF dahulu. bbb.presentation.error.io = IO Error: Sila hubungi administrator. bbb.presentation.error.security = Security Error: Sila hubungi administrator. @@ -283,51 +285,52 @@ bbb.fileupload.uploadBtn = Muatnaik bbb.fileupload.uploadBtn.toolTip = Muatnaik fail yang dipilih bbb.fileupload.deleteBtn.toolTip = Padam Presentation bbb.fileupload.showBtn = Papar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Papar Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Menjana image.. bbb.fileupload.progBarLbl = Progres: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat bbb.chat.quickLink.label = Window chat bbb.chat.cmpColorPicker.toolTip = Warna teks bbb.chat.input.accessibilityName = Mesej Chat Editing Field bbb.chat.sendBtn.toolTip = Hantar Mesej bbb.chat.sendBtn.accessibilityName = Hantar mesej chat -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = salin semua teks bbb.chat.publicChatUsername = Public bbb.chat.optionsTabName = Options bbb.chat.privateChatSelect = Pilih seseorang untuk chat secara peribadi bbb.chat.private.userLeft = Penguna telah keluar -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = pilih penguna ke dalam Chat persendirian -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Chat Options bbb.chat.fontSize = Mesej Chat Font Size bbb.chat.cmbFontSize.toolTip = Pilih saiz font untuk mesej chat @@ -336,24 +339,24 @@ bbb.chat.minimizeBtn.accessibilityName = Kecilkan Chat Window bbb.chat.maximizeRestoreBtn.accessibilityName = Besarkan Chat Window bbb.chat.closeBtn.accessibilityName = Tutupkan Chat Window bbb.chat.chatTabs.accessibleNotice = Mesej baru dalam tab -bbb.chat.chatMessage.systemMessage = System +bbb.chat.chatMessage.systemMessage = bbb.chat.chatMessage.stringRespresentation = Dari {0} {1} pada {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Tukar Webcam bbb.publishVideo.changeCameraBtn.toolTip = Buka perubahan kekotak dialog webcam bbb.publishVideo.cmbResolution.tooltip = Pilih resolusi webcam bbb.publishVideo.startPublishBtn.labelText = Mulakan Perkongsian bbb.publishVideo.startPublishBtn.toolTip = Mulakan berkongsi webcam anda -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Webcam bbb.videodock.quickLink.label = Window webcams bbb.video.minimizeBtn.accessibilityName = Kecilkan Webcam Window bbb.video.maximizeRestoreBtn.accessibilityName = Besarkan Webcam Window bbb.video.controls.muteButton.toolTip = Suara or disuarakan {0} bbb.video.controls.switchPresenter.toolTip = Jadi {0} pebentang -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting +bbb.video.controls.ejectUserBtn.toolTip = bbb.video.controls.privateChatBtn.toolTip = Chat bersama {0} bbb.video.publish.hint.noCamera = Tiada webcam tersedia bbb.video.publish.hint.cantOpenCamera = Tidak boleh memulakan webcam anda @@ -366,19 +369,20 @@ bbb.video.publish.hint.publishing = Terbitkan... bbb.video.publish.closeBtn.accessName = Tutup tetapan kotak dialog webcam bbb.video.publish.closeBtn.label = Batal bbb.video.publish.titleBar = Terbitkan tetingkap Webcam -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = bbb.screensharePublish.restart.label = semula -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = bbb.screensharePublish.closeBtn.accessibilityName = hentikan perkongsian dan tutup perkosian paparan pada tetingkap -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = bbb.screensharePublish.helpButton.toolTip = Bantuan bbb.screensharePublish.helpButton.accessibilityName = Bantuan (Buka tutorial dalam tetingkap baru) bbb.screensharePublish.helpText.PCIE1 = 1. Pilih 'Buka' @@ -391,15 +395,15 @@ bbb.screensharePublish.helpText.PCChrome1 = 1. Tetapkan 'screenshare.jnlp' bbb.screensharePublish.helpText.PCChrome2 = klik untuk buka bbb.screensharePublish.helpText.PCChrome3 = 3. sijil diterima bbb.screensharePublish.helpText.MacSafari1 = 1. Tetapkan 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' +bbb.screensharePublish.helpText.MacSafari2 = bbb.screensharePublish.helpText.MacSafari3 = Klik-kanan and pilih 'Buka' bbb.screensharePublish.helpText.MacSafari4 = 4. Pilih 'Buka' (jika diperlu) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = bbb.screensharePublish.helpText.MacFirefox3 = Klik-kanan and pilih 'Buka' bbb.screensharePublish.helpText.MacFirefox4 = 4. Pilih 'Buka' (jika diperlu) bbb.screensharePublish.helpText.MacChrome1 = 1. Tetapkan 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' +bbb.screensharePublish.helpText.MacChrome2 = bbb.screensharePublish.helpText.MacChrome3 = 3. Klik-kanan and pilih 'Buka' bbb.screensharePublish.helpText.MacChrome4 = 4. Pilih 'Buka' (jika diperlu) bbb.screensharePublish.helpText.LinuxFirefox1 = Klik 'OK' untuk proses @@ -421,35 +425,36 @@ bbb.screensharePublish.tunnelingErrorMessage.two = kemaskini semula pelanggan (k bbb.screensharePublish.cancelButton.label = batalkan bbb.screensharePublish.startButton.label = mula bbb.screensharePublish.stopButton.label = Henti -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Skrin perkongsian bbb.screenshareView.fitToWindow = Tetingkap sepenuhnya bbb.screenshareView.actualSize = Paparan saiz sebenar -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = bbb.screenshareView.closeBtn.accessibilityName = Tutup Skrin perkongsian tetingkap -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Henti mendengar persidangan bbb.toolbar.phone.toolTip.unmute = Mula mendengar persidangan bbb.toolbar.phone.toolTip.nomic = Mikrofon tidak dikenalpasti bbb.toolbar.deskshare.toolTip.start = Buka paparan perkongsian terbitan tetingkap bbb.toolbar.deskshare.toolTip.stop = Hentikan perkongsian paparan Anda -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Kongsi Webcam Anda bbb.toolbar.video.toolTip.stop = Berhenti Kongsi Webcam Anda +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Tambah aturan ke dalam senarai -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Tukar Aturan Anda bbb.layout.loadButton.toolTip = muat aturan dari fail bbb.layout.saveButton.toolTip = Simpan aturan ke dalam fail @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Pohon Aturan bbb.layout.combo.custom = * Reka aturan bbb.layout.combo.customName = Reka aturan bbb.layout.combo.remote = Kawal -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Auturan susunan telah berjaya disimpan +bbb.layout.save.ioerror = bbb.layout.load.complete = Auturan susunan telah berjaya masukan bbb.layout.load.failed = Aturan susun Tidak boleh dimaksukan -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Pensil bbb.highlighter.toolbar.pencil.accessibilityName = Tukar Konsur papar putih kepada pensil bbb.highlighter.toolbar.ellipse = Bulatan @@ -489,11 +497,10 @@ bbb.highlighter.toolbar.clear.accessibilityName = Kosongkan Semua halaman papan bbb.highlighter.toolbar.undo = undur Anotasi bbb.highlighter.toolbar.undo.accessibilityName = unduran keapda paparan papan putih yang terakhir bbb.highlighter.toolbar.color = Pilih Warna -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = Tukar ketebalan bbb.highlighter.toolbar.thickness.accessibilityName = lukis ketebalan papan putih -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Log telah keluar +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Aplikasi pelayan telah ditutup bbb.logout.asyncerror = Ansync ralat @@ -502,249 +509,252 @@ bbb.logout.connectionfailed = Sambungan server berakhir bbb.logout.rejected = Penyambungan ke server telah ditolak bbb.logout.invalidapp = Aplikasi red5 tidak wujud bbb.logout.unknown = Pelangan anda telah terputus sambungan dengan server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Anda telah logout dari persidangan bbb.logour.breakoutRoomClose = tetingkap carian akan ditutup -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = bbb.logout.refresh.label = Putus -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = sahkan Logout bbb.logout.confirm.message = Anda pasti untuk logout? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ya bbb.logout.confirm.no = Tidak -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= bbb.connection.reconnecting=Sambungan semula -bbb.connection.reestablished=Connection reestablished +bbb.connection.reestablished= bbb.connection.bigbluebutton=BigBlueButton bbb.connection.sip=SIP bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.connection.deskshare= bbb.notes.title = Nota bbb.notes.cmpColorPicker.toolTip = Warna teks bbb.notes.saveBtn = Simpan bbb.notes.saveBtn.toolTip = Simpan Nota -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = bbb.settings.deskshare.start = Periksa Desktop Sharing bbb.settings.voice.volume = Aktiviti Mikrofon -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. +bbb.settings.flash.text = bbb.settings.flash.command = Instal Flash yang terkini -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.label = +bbb.settings.isight.text = bbb.settings.isight.command = Instal Flash 10.2 RC2 bbb.settings.warning.label = Amaran bbb.settings.warning.close = Tutup Warning ini -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Segitiga -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = ltbcustom.bbb.highlighter.toolbar.text = Teks -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Warna Teks ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Saiz font -bbb.caption.window.title = Closed Caption +bbb.caption.window.title = bbb.caption.quickLink.label = Tutup kapsyen tetingkap -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = bbb.caption.transcript.noowner = tiada bbb.caption.transcript.youowner = anda -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = bbb.caption.transcript.inputArea.toolTip = kepsyen sekitar imput bbb.caption.transcript.outputArea.toolTip = kepsyen sekitar output bbb.caption.option.label = pilihan -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Anda telah mencapai mesej yang pertama. bbb.accessibility.chat.chatBox.reachedLatest = Anda telah mencapai mesej yang terkini. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = bbb.accessibility.chat.chatwindow.input = chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = bbb.accessibility.notes.notesview.input = nota input bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Shortcut global bbb.shortcuthelp.dropdown.presentation = Shortcut pembentangan bbb.shortcuthelp.dropdown.chat = Shortcut chat bbb.shortcuthelp.dropdown.users = Shortcut pengguna bbb.shortcuthelp.dropdown.caption = Tutup kapstion pintas -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.headers.function = bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window +bbb.shortcutkey.general.minimize.function = bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.maximize.function = bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window +bbb.shortcutkey.flash.exit.function = bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone +bbb.shortcutkey.users.muteme.function = bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field +bbb.shortcutkey.chat.chatinput.function = bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide +bbb.shortcutkey.present.focusslide.function = bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.whiteboard.undo.function = bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window +bbb.shortcutkey.focus.users.function = bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window +bbb.shortcutkey.focus.video.function = bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window +bbb.shortcutkey.focus.presentation.function = bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window +bbb.shortcutkey.focus.chat.function = bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window +bbb.shortcutkey.share.desktop.function = bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.webcam.function = bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window +bbb.shortcutkey.shortcutWindow.function = bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting +bbb.shortcutkey.logout.function = bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide +bbb.shortcutkey.present.previous.function = bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides +bbb.shortcutkey.present.select.function = bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide +bbb.shortcutkey.present.next.function = bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person +bbb.shortcutkey.users.mute.function = bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users +bbb.shortcutkey.users.muteall.function = bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter +bbb.shortcutkey.users.muteAllButPres.function = bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window +bbb.shortcutkey.users.breakoutRooms.function = bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list +bbb.shortcutkey.users.focusBreakoutRooms.function = bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. +bbb.shortcutkey.chat.changeColour.function = bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Hantar mesej chat -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.explanation.function = bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message +bbb.shortcutkey.chat.chatbox.advance.function = bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message +bbb.shortcutkey.chat.chatbox.goback.function = bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message +bbb.shortcutkey.chat.chatbox.repeat.function = bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message +bbb.shortcutkey.chat.chatbox.golatest.function = bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message +bbb.shortcutkey.chat.chatbox.gofirst.function = bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read +bbb.shortcutkey.chat.chatbox.goread.function = bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.debug.function = bbb.shortcutkey.caption.takeOwnership = 79 bbb.shortcutkey.caption.takeOwnership.function = Pilih bahasa untuk pemilikan @@ -753,151 +763,109 @@ bbb.polling.startButton.tooltip = mula suara bbb.polling.startButton.label = mula suara bbb.polling.publishButton.label = terbit bbb.polling.closeButton.label = Tutup -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Ya bbb.polling.answer.No = Tidak -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Mulakan Perkongsian bbb.publishVideo.changeCameraBtn.labelText = Tukar Webcam -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = bbb.shortcutkey.specialKeys.space = Spacebar bbb.shortcutkey.specialKeys.left = Arrow Kiri bbb.shortcutkey.specialKeys.right = Arrow Kanan bbb.shortcutkey.specialKeys.up = Arrow Atas bbb.shortcutkey.specialKeys.down = Arrow Bawah -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = bbb.toolbar.videodock.toolTip.closeAllVideos = Tutup semua video bbb.users.settings.lockAll = kunci semua penguna bbb.users.settings.lockAllExcept = kunci penguna tidak dikenali bbb.users.settings.lockSettings = kunci pemerhati... bbb.users.settings.breakoutRooms = Bilik Pelarian ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Buka kepada semua pemerhati -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = bbb.lockSettings.save = Mohon bbb.lockSettings.save.tooltip = kunci aturan Permohonan bbb.lockSettings.cancel = Batal bbb.lockSettings.cancel.toolTip = Tutup tetingkap tanpa dikemaskini +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Kekunci Sederhana bbb.lockSettings.privateChat = Chat peribadi bbb.lockSettings.publicChat = Chat Umum bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = mikrofon bbb.lockSettings.layout = Aturan bbb.lockSettings.title=Kunci pemerhati bbb.lockSettings.feature=Ciri -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= bbb.users.breakout.breakoutRooms = Bilik Pelarian -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = bbb.users.breakout.closing = Tutup -bbb.users.breakout.rooms = Rooms +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = bbb.users.breakout.roomsCombo.accessibilityName = Reka nombor bilik -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users +bbb.users.breakout.room = bbb.users.breakout.timeLimit = limit masa bbb.users.breakout.durationStepper.accessibilityName = had Masa dalam seminit bbb.users.breakout.minutes = minit -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = bbb.users.breakout.notAssigned = tidak disambungkan -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms +bbb.users.breakout.dragAndDropToolTip = bbb.users.breakout.start = mula bbb.users.breakout.invite = Jemput bbb.users.breakout.close = batal -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ne_NP/bbbResources.properties b/bigbluebutton-client/locale/ne_NP/bbbResources.properties index 9abdd465b79d8e9a56a8463bb8eec67c72947e84..405f98a11e6c5d7d91943727637b083427c36f63 100644 --- a/bigbluebutton-client/locale/ne_NP/bbbResources.properties +++ b/bigbluebutton-client/locale/ne_NP/bbbResources.properties @@ -1,271 +1,273 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = सरà¥à¤à¤°à¤¸à¤à¤— जडान गरà¥à¤¦à¥ˆ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = माफगरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥, सरà¥à¤à¤°à¤¸à¤à¤— जडान हà¥à¤¨ सकेन -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = लग सञà¥à¤à¥à¤¯à¤¾à¤² खोलà¥à¤¨à¥‡ -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = सà¥à¤µà¤°à¥à¤ª पूरà¥à¤µà¤°à¥à¤ªà¤®à¤¾ फरà¥à¤•à¤¾à¤‰à¤¨à¥‡ -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = तपाईको बिगबà¥à¤²à¥ à¤à¤¾à¤·à¤¾ अनà¥à¤µà¤¾à¤¦ पà¥à¤°à¤¾à¤¨à¥‹ à¤à¤à¤•à¥‹ हà¥à¤¨à¤¸à¤•à¥à¤› bbb.oldlocalewindow.reminder2 = बà¥à¤°à¤‰à¤œà¤° अनà¥à¤ªà¥à¤°à¤¯à¥‹à¤—को कà¥à¤¯à¤¾à¤¶ सफा गरेर पà¥à¤¨: पà¥à¤°à¤¯à¤¾à¤¸ गरà¥à¤¨à¥à¤¹à¥‹à¤¸ bbb.oldlocalewindow.windowTitle = सावधान : पà¥à¤°à¤¾à¤¨à¥‹ à¤à¤¾à¤·à¤¾à¤¨à¥à¤µà¤¾à¤¦ -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = परीकà¥à¤·à¤£ धà¥à¤µà¤¨à¥€ बजाउने -bbb.micSettings.playSound.toolTip = Play music to test your speakers +bbb.micSettings.playSound.toolTip = bbb.micSettings.hearFromHeadset = तपाईले हेडफोनबाट आवाज सà¥à¤¨à¥à¤¨à¥ परà¥à¤› , कमà¥à¤ªà¥à¤¯à¥à¤Ÿà¤°à¤¬à¤¾à¤Ÿ हैन -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = माइकà¥à¤°à¥‹à¤«à¥‹à¤¨ परिवरà¥à¤¤à¤¨ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = आवाज सà¥à¤šà¤¾à¤°à¥ गरà¥à¤¨à¥‡ -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Audio instellingen. Enkel dit venster is editeerbaar tot wanneer dit venster gesloten wordt. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = सहायता bbb.mainToolbar.logoutBtn = निरà¥à¤—मन -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Selecteer taal bbb.mainToolbar.settingsBtn = मिलान bbb.mainToolbar.settingsBtn.toolTip = अà¤à¤¿à¤°à¥à¤šà¥€à¤¹à¤°à¥ मिलान गरà¥à¤¨à¥‡ -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimaliseer bbb.window.maximizeRestoreBtn.toolTip = Maximaliseer bbb.window.closeBtn.toolTip = Sluit -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = bbb.users.title = Gebruikers{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window +bbb.users.titleBar = +bbb.users.quickLink.label = bbb.users.minimizeBtn.accessibilityName = Minimaliseer het gebruikers venster bbb.users.maximizeRestoreBtn.accessibilityName = Maximaliseer het gebruikers venster bbb.users.settings.buttonTooltip = Instellingen -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = Webcam instellingen bbb.users.settings.muteAll = Demp allen bbb.users.settings.muteAllExcept = Demp allen behalve presentator bbb.users.settings.unmuteAll = Iedereen dempen uit -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = Klik om te praten bbb.users.pushToMute.toolTip = Klik om jezelf te dempen bbb.users.muteMeBtnTxt.talk = Dempen uit bbb.users.muteMeBtnTxt.mute = Dempen -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = bbb.users.usersGrid.nameItemRenderer = Naam -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you +bbb.users.usersGrid.nameItemRenderer.youIdentifier = bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter +bbb.users.usersGrid.statusItemRenderer.changePresenter = bbb.users.usersGrid.statusItemRenderer.presenter = Presentator bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Kijker\n -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam gedeeld bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Klik om de webcam te bekijken -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam gedeeld bbb.users.usersGrid.mediaItemRenderer.micOff = Microfoon uit\n bbb.users.usersGrid.mediaItemRenderer.micOn = Microfoon aan\n -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¥€ -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = पहिलो सà¥à¤²à¤¾à¤‡à¤¡ -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = पछिलà¥à¤²à¥‹ सà¥à¤²à¤¾à¤‡à¤¡ bbb.presentation.maxUploadFileExceededAlert = Fout: Het bestand is groter dan de toegelaten limiet. bbb.presentation.uploadcomplete = Upload gelukt. Gelieve even te wachten terwijl we het document converteren. bbb.presentation.uploaded = verstuurd. bbb.presentation.document.supported = Het geüpload bestand wordt ondersteund. bbb.presentation.document.converted = Het office bestand is succesvol omgezet. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Fout: Gelieve de beheerder te contacteren. bbb.presentation.error.security = Beveiligingsfout: Gelieve de beheerder te contacteren. bbb.presentation.error.convert.notsupported = Fout: het geüpload bestand wordt niet ondersteund, gelieve een compatibel bestand te uploaden. bbb.presentation.error.convert.nbpage = Fout tijdens het tellen van het aantal geüploade bestanden. Gelieve de beheerder te contacteren. bbb.presentation.error.convert.maxnbpagereach = Het geüpload bestand heeft teveel slides/pagina's ( >100 ) en dit is niet toegelaten: Gelieve een bestand met minder slides/pagina's te uploaden. bbb.presentation.converted = {0} van {1} pagina's zijn geconverteerd. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = PRESENTATIE BESTAND bbb.presentation.uploadwindow.pdf = पिडिà¤à¤« bbb.presentation.uploadwindow.word = वरà¥à¤¡ @@ -276,79 +278,80 @@ bbb.presentation.minimizeBtn.accessibilityName = Minimaliseer het presentatie ve bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximaliseer het presentatie venster bbb.presentation.closeBtn.accessibilityName = Sluit het presentatie venster bbb.fileupload.title = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¥€ उरà¥à¤§à¥à¤µà¤à¤°à¤£ गरà¥à¤¨à¥‡ -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = Selecteer bestand bbb.fileupload.selectBtn.toolTip = बà¥à¤°à¤¾à¤‰à¤œà¤°à¤•à¥‹ नाम bbb.fileupload.uploadBtn = उरà¥à¤§à¥à¤µà¤à¤°à¤£ bbb.fileupload.uploadBtn.toolTip = फाइल उरà¥à¤§à¥à¤µà¤à¤°à¤£ bbb.fileupload.deleteBtn.toolTip = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¥€à¤•à¤°à¤£ मेटà¥à¤¨à¥‡ bbb.fileupload.showBtn = देखाउने -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = पà¥à¤°à¤¸à¥à¤¤à¥à¤¤à¥€ देखाउने -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = थमà¥à¤¬à¤¨à¥‡à¤²à¤¹à¤°à¥(सानो अनà¥à¤°à¥à¤ª) बनाउà¤à¤¦à¥ˆ bbb.fileupload.progBarLbl = Voortgang: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = Tekst Kleur -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = Stuur bericht -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Iedereen -bbb.chat.optionsTabName = Options +bbb.chat.optionsTabName = bbb.chat.privateChatSelect = Selecteer een persoon om een privé chat mee te starten -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Chat opties bbb.chat.fontSize = Tekst grootte -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimaliseer het chat venster bbb.chat.maximizeRestoreBtn.accessibilityName = Maximaliseer het chat venster bbb.chat.closeBtn.accessibilityName = Sluit het chat venster -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Wijzig camera -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = bbb.publishVideo.startPublishBtn.labelText = Start delen bbb.publishVideo.startPublishBtn.toolTip = verstuur je webcam-beeld -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = videoschermen rangschikken -bbb.videodock.quickLink.label = Webcams Window +bbb.videodock.quickLink.label = bbb.video.minimizeBtn.accessibilityName = Minimaliseer het video dock venster bbb.video.maximizeRestoreBtn.accessibilityName = Maximaliseer het video dock venster bbb.video.controls.muteButton.toolTip = Dempen of dempen opheffen voor {0} @@ -361,543 +364,508 @@ bbb.video.publish.hint.waitingApproval = Wachtend op toestemming bbb.video.publish.hint.videoPreview = Video preview bbb.video.publish.hint.openingCamera = Camera aan het openen... bbb.video.publish.hint.cameraDenied = Camera toegang ontzegd -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Publiceren... bbb.video.publish.closeBtn.accessName = Sluit webcam venster -bbb.video.publish.closeBtn.label = Cancel +bbb.video.publish.closeBtn.label = bbb.video.publish.titleBar = Publiceer webcam venster -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Stift -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = वृत -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = आयतन -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = रङ छानà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = Wijzig dikte -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = De server applicatie werd afgesloten bbb.logout.asyncerror = Een asynchrone fout is opgetreden bbb.logout.connectionclosed = De verbinding met de server werd gesloten -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = De connectie naar de server is geweigerd bbb.logout.invalidapp = De red5 applicatie bestaat niet bbb.logout.unknown = Uw toepassing heeft de connectie met de server verbroken -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = U bent uitgelogd uit de conferentie -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klik op toelaten in het pop-up venster dat nakijkt of desktop delen correct werkt voor jou bbb.settings.deskshare.start = Controleer desktop delen bbb.settings.voice.volume = Microfoon activiteit -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash versie fout bbb.settings.flash.text = U heeft Flash {0} geinstalleerd, maar u moet ten minste versie {1} hebben om BigBlueButton te gebruiken. Klik op de knop hieronder om de recentste versie van Adobe Flash te installeren. bbb.settings.flash.command = Installeer recentste Flash bbb.settings.isight.label = ISight camera fout -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Installeer Flash 10.2 RC2 bbb.settings.warning.label = चेतावनी bbb.settings.warning.close = यो चेतावनी बनà¥à¤¦ गरà¥à¤¨à¥à¤¹à¥‹à¤¸à¥ bbb.settings.noissues = Geen openstaande problemen werden ontdekt. bbb.settings.instructions = Ga akkoord met de flash pop-up die je naar camera permissies vraagt. Als je jezelf kan zien en horen is je browser correct afgesteld. Andere mogelijke oorzaken worden onderaan weergegeven. Klik op iedere mogelijke oorzaak om een oplossing te vinden. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = रदà¥à¤¦ गरà¥à¤¨à¥‡ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Start delen bbb.publishVideo.changeCameraBtn.labelText = Wijzig camera -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/nl/bbbResources.properties b/bigbluebutton-client/locale/nl/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/nl/bbbResources.properties +++ b/bigbluebutton-client/locale/nl/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/nl_BE/bbbResources.properties b/bigbluebutton-client/locale/nl_BE/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/nl_BE/bbbResources.properties +++ b/bigbluebutton-client/locale/nl_BE/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/nl_NL/bbbResources.properties b/bigbluebutton-client/locale/nl_NL/bbbResources.properties index b7b4fb4e908dd31a9029e6b8989ce93969966af5..0d3428a4b503293663906c565fa375d945367292 100644 --- a/bigbluebutton-client/locale/nl_NL/bbbResources.properties +++ b/bigbluebutton-client/locale/nl_NL/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Verbinding aan het maken met de server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = We kunnen geen verbinding maken met de server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Open log scherm bbb.mainshell.meetingNotFound = Meeting kan niet worden gevonden bbb.mainshell.invalidAuthToken = Ongeldig authenticatie Token bbb.mainshell.resetLayoutBtn.toolTip = Herstel de scherm-indeling bbb.mainshell.notification.tunnelling = Tunnel opzetten bbb.mainshell.notification.webrtc = WebRTC geluid -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = U hebt misschien een verouderde vertaling van BigBlueButton. bbb.oldlocalewindow.reminder2 = Gelieve de cache van uw browser te wissen en opnieuw te proberen. bbb.oldlocalewindow.windowTitle = Waarschuwing: verouderde vertalingen @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Annuleren bbb.micSettings.connectingtoecho = Verbinding aan het maken bbb.micSettings.connectingtoecho.error = Echo test fout: contacteer alsjebleift de beheerder bbb.micSettings.cancel.toolTip = Annuleer het meedoen aan de audio conferentie -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Audio instellingen. De focus blijft op dit scherm totdat het scherm gesloten wordt. bbb.micSettings.webrtc.title = WebRTC ondersteuning bbb.micSettings.webrtc.capableBrowser = Je internet browser ondersteunt WebRTC @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Verbinding aan het maken bbb.micSettings.webrtc.transferring = Overdracht loopt bbb.micSettings.webrtc.endingecho = Participeren in geluid bbb.micSettings.webrtc.endedecho = Echo test beeindigd +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox microfoon instellingen -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome microfoon toestemming -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Audio waarschuwing bbb.micWarning.joinBtn.label = Doe in ieder geval mee bbb.micWarning.testAgain.label = Nogmaals testen @@ -90,17 +91,17 @@ bbb.webrtcWarning.failedError.1011 = Error 1011: ICE verzamel timeout bbb.webrtcWarning.failedError.unknown = Fout {0} : Onbekende fout bbb.webrtcWarning.failedError.mediamissing = We kunnen je microfoon niet vionden voor een WebRTC gesprek bbb.webrtcWarning.failedError.endedunexpectedly = De WebRTC echo test is onverwacht beeindigd -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Help bbb.mainToolbar.logoutBtn = Afmelden bbb.mainToolbar.logoutBtn.toolTip = Afmelden -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Selecteer taal bbb.mainToolbar.settingsBtn = Instellingen bbb.mainToolbar.settingsBtn.toolTip = Open instellingen @@ -110,34 +111,34 @@ bbb.mainToolbar.recordBtn.toolTip.start = Begin met opnemen bbb.mainToolbar.recordBtn.toolTip.stop = Opnemen beeindigen bbb.mainToolbar.recordBtn.toolTip.recording = De sessie wordt opgenomen bbb.mainToolbar.recordBtn.toolTip.notRecording = De sessie wordt niet opgenomen -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Bevestig opnemen bbb.mainToolbar.recordBtn.confirm.message.start = Weet je zeker dat je deze sessie wilt opnemen? bbb.mainToolbar.recordBtn.confirm.message.stop = Weet je zeker dat je het opnemen van deze sessie wilt beeindigen? -bbb.mainToolbar.recordBtn..notification.title = Opname melding -bbb.mainToolbar.recordBtn..notification.message1 = Je kunt deze meeting opnemen -bbb.mainToolbar.recordBtn..notification.message2 = Alsjeblieft op de Start /Stop knop klikken in de titel balk om opnemen te starten / stoppen. +bbb.mainToolbar.recordBtn.notification.title = Opname melding +bbb.mainToolbar.recordBtn.notification.message1 = Je kunt deze meeting opnemen +bbb.mainToolbar.recordBtn.notification.message2 = Alsjeblieft op de Start /Stop knop klikken in de titel balk om opnemen te starten / stoppen. bbb.mainToolbar.recordingLabel.recording = (Aan het opnemen) bbb.mainToolbar.recordingLabel.notRecording = Niet aan het opnemen -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Configuratie berichten bbb.clientstatus.notification = Ongelezen berichten -bbb.clientstatus.close = Close +bbb.clientstatus.close = bbb.clientstatus.tunneling.title = Firewall bbb.clientstatus.tunneling.message = Een firewall zorgt ervoor dat je client geen verbinding kan maken met de externe server op poort 1935. We adviseren een minder afgescherm netwerk voor een stabielere verbinding bbb.clientstatus.browser.title = Internet browser versie @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Je Internet browser ({0}) is niet up to date. bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Je Flash Player ({0}) is niet up to date. We adviseren om hiervan de laatste versie te gebruiken. bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = We adviseren om Firefox of Chrome te gebruiken voor een betere geluids kwaliteit. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimaliseer bbb.window.maximizeRestoreBtn.toolTip = Maximaliseer bbb.window.closeBtn.toolTip = Sluiten @@ -188,21 +189,21 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Wijzig presentator bbb.users.usersGrid.statusItemRenderer.presenter = Presentator bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Kijker\n bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Webcam delen bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is presentator @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Dempen uit {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Dempen {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Vergrendelen {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Ontgrendelen {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Verwijderen {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam gedeeld bbb.users.usersGrid.mediaItemRenderer.micOff = Microfoon uit\n bbb.users.usersGrid.mediaItemRenderer.micOn = Microfoon aan\n bbb.users.usersGrid.mediaItemRenderer.noAudio = Niet in conferentie gesprek -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Helder -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentatie bbb.presentation.titleWithPres = Presentatie {0} bbb.presentation.quickLink.label = Presentatie venster bbb.presentation.fitToWidth.toolTip = Pas de presentatie aan naar breedte bbb.presentation.fitToPage.toolTip = Pas presentatie aan naar de pagina grootte bbb.presentation.uploadPresBtn.toolTip = Verzend een document om te presenteren. -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Vorige pagina. bbb.presentation.btnSlideNum.accessibilityName = Pagina {0} of {1} bbb.presentation.btnSlideNum.toolTip = Selecteer een pagina @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Upload gelukt. Gelieve even te wachten terwijl bbb.presentation.uploaded = Verzonden. bbb.presentation.document.supported = Het verzondenbestand wordt ondersteund en wordt nu geconverteerd. bbb.presentation.document.converted = Het Office bestand is succesvol geconverteerd. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Fout: Gelieve de beheerder te contacteren. bbb.presentation.error.security = Beveiligingsfout: Gelieve de beheerder te contacteren. bbb.presentation.error.convert.notsupported = Fout: het gverzonden bestand wordt niet ondersteund, gelieve een compatibel bestand te uploaden. @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = Upload bbb.fileupload.uploadBtn.toolTip = Bestand uploaden naar de server bbb.fileupload.deleteBtn.toolTip = Verwijder presentatie bbb.fileupload.showBtn = Weergeven -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Geef presentatie weer -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Bezig met aanmaken van thumbnails.. bbb.fileupload.progBarLbl = Voortgang: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat bbb.chat.quickLink.label = Chat venster bbb.chat.cmpColorPicker.toolTip = Tekst Kleur bbb.chat.input.accessibilityName = Chat booschap invul veld bbb.chat.sendBtn.toolTip = Stuur bericht bbb.chat.sendBtn.accessibilityName = Verzend chat bericht -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopieer alle tekst bbb.chat.publicChatUsername = Iedereen bbb.chat.optionsTabName = Opties bbb.chat.privateChatSelect = Selecteer een persoon om een privé chat mee te starten bbb.chat.private.userLeft = De gebruiker is uitgelogd bbb.chat.private.userJoined = De gebruiker is ingelogd -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Selecteer gebruiker oim een prive chat te beginnen -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Chat opties bbb.chat.fontSize = Chat tekst grootte bbb.chat.cmbFontSize.toolTip = Selecteer chat boodschap letter grootte -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimaliseer het chat venster bbb.chat.maximizeRestoreBtn.accessibilityName = Maximaliseer het chat venster bbb.chat.closeBtn.accessibilityName = Sluit het chat venster bbb.chat.chatTabs.accessibleNotice = Nieuwe berichten in deze tab bbb.chat.chatMessage.systemMessage = Systeem -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Het bericht is {0} karakter(s) te lang bbb.publishVideo.changeCameraBtn.labelText = Wijzig camera bbb.publishVideo.changeCameraBtn.toolTip = Open het webcam aanpassen venster bbb.publishVideo.cmbResolution.tooltip = Selecteer een webcam resolutie bbb.publishVideo.startPublishBtn.labelText = Start delen bbb.publishVideo.startPublishBtn.toolTip = Verstuur beelden vanaf je webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Chrome webcam toestemming -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = videoschermen rangschikken bbb.videodock.quickLink.label = Webcam venster bbb.video.minimizeBtn.accessibilityName = Minimaliseer het webcam venster @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = Publiceren... bbb.video.publish.closeBtn.accessName = Sluit webcam instellingen venster bbb.video.publish.closeBtn.label = Annuleren bbb.video.publish.titleBar = Publiceer webcam venster -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Stop naar de meeting te luisteren bbb.toolbar.phone.toolTip.unmute = Begin met luisteren naar de meeting bbb.toolbar.phone.toolTip.nomic = Geen microfoon gevonden -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Deel je webcam bbb.toolbar.video.toolTip.stop = Stop met het delen van je webcam +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Voeg de aangepaste weergave toe aan de lijst -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Pas de weergave aan bbb.layout.loadButton.toolTip = Laad weergave uit een bestand bbb.layout.saveButton.toolTip = Sla de weergave op in een bestand @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Pa een weergave toe bbb.layout.combo.custom = *Aangepaste weergave bbb.layout.combo.customName = Aangepaste weergave bbb.layout.combo.remote = Vanaf afstand -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Weergave is succesvol opgeslagen +bbb.layout.save.ioerror = bbb.layout.load.complete = Weergave is succesvol geladen -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Standaard weergave -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Video chat bbb.layout.name.webcamsfocus = Webcam meeting bbb.layout.name.presentfocus = Presentatie meeting -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Docent assistent bbb.layout.name.lecture = Docent -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Stift bbb.highlighter.toolbar.pencil.accessibilityName = Verander de whiteboard cursor in een stift bbb.highlighter.toolbar.ellipse = Cirkel @@ -492,33 +500,34 @@ bbb.highlighter.toolbar.color = Selecteer kleur bbb.highlighter.toolbar.color.accessibilityName = Whiteboard teken kleur bbb.highlighter.toolbar.thickness = Wijzig dikte bbb.highlighter.toolbar.thickness.accessibilityName = Whietboard teken dikte -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Uitgelogd +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = De server applicatie werd afgesloten bbb.logout.asyncerror = Een asynchrone fout is opgetreden bbb.logout.connectionclosed = De verbinding met de server werd gesloten -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = De connectie naar de server is geweigerd bbb.logout.invalidapp = De red5 applicatie bestaat niet bbb.logout.unknown = Uw toepassing heeft de connectie met de server verbroken -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = U bent uitgelogd uit de conferentie -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Als het uitloggen onverwacht was klik dan op onderstaande knop om weer verbinding te maken. bbb.logout.refresh.label = Weer verbinding maken -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Bevestig uitloggen bbb.logout.confirm.message = Weet je zeker dat je wilt uitloggen? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ja bbb.logout.confirm.no = Nee -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Verbindings problemen gedetecteerd bbb.connection.reconnecting=Opnieuw verbinden bbb.connection.reestablished=Verbinding gerealiseerd @@ -530,59 +539,60 @@ bbb.notes.title = Notities bbb.notes.cmpColorPicker.toolTip = Tekst kleur bbb.notes.saveBtn = Opslaan bbb.notes.saveBtn.toolTip = Sla notitie op -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klik op toelaten in het pop-up venster dat controleert of scherm delen goed werkt bbb.settings.deskshare.start = Controleer scherm delen bbb.settings.voice.volume = Microfoon activiteit -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash versie fout bbb.settings.flash.text = U heeft Flash {0} geinstalleerd, maar u moet ten minste versie {1} hebben om deze applicatie te kunnen gebruiken. Klik op de knop hieronder om de recentste versie van Adobe Flash te installeren. bbb.settings.flash.command = Installeer recentste Flash versie bbb.settings.isight.label = ISight webcam fout -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Installeer Flash 10.2 RC2 bbb.settings.warning.label = Waarschuwing bbb.settings.warning.close = Sluit deze waarschuwing bbb.settings.noissues = Geen openstaande problemen werden ontdekt. bbb.settings.instructions = Ga akkoord met de flash pop-up die je naar camera permissies vraagt. Als je jezelf kan zien en horen is je browser correct afgesteld. Andere mogelijke oorzaken worden onderaan weergegeven. Klik op iedere mogelijke oorzaak om een oplossing te vinden. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Driehoek ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Verander de whiteboard cursor in een driehoek ltbcustom.bbb.highlighter.toolbar.line = Lijn @@ -591,25 +601,25 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Verander de whiteboard cursor naar tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Tekst kleur ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Tekst grootte -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = bbb.caption.option.fontsize = Tekstgrootte: bbb.caption.option.fontsize.tooltip = Tekstgrootte bbb.caption.option.backcolor = Achtergrondkleur: @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Je hebt naar het eerste bericht bbb.accessibility.chat.chatBox.navigatedLatest = Je hebt naar het laatste bericht genavigeerd bbb.accessibility.chat.chatBox.navigatedLatestRead = Je hebt naar het laatst gelezen bericht genavigeerd bbb.accessibility.chat.chatwindow.input = Chat invoer -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Gebruik de pijltjes toetsen om door de chat berichten te navigeren bbb.accessibility.notes.notesview.input = Notities invoer bbb.shortcuthelp.title = Sneltoetsen -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimaliseer het sneltoetsen help venster bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximaliseer het sneltoetsen help venster bbb.shortcuthelp.closeBtn.accessibilityName = Sluit het sneltoetsen help venster -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Algemene sneltoetsen bbb.shortcuthelp.dropdown.presentation = Presentatie sneltoetsen bbb.shortcuthelp.dropdown.chat = Chat sneltoetsen bbb.shortcuthelp.dropdown.users = Gebruikers sneltoetsen -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Sneltoets bbb.shortcuthelp.headers.function = Functie @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Focus op het presentatie venster bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Focus op het chat vernster -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Open het scherm delen venster @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Deze meeting verlaten bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Hand opsteken -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Presentatie uploaden bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Ga naar vorige pagina @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Ga naar de volgende pagina bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Pas de pagina's aan op de breedte -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Pas de pagina's aan naar scherm grootte -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Activeer voor geselecteerde gebruiker de presentator modus -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Verwijder geselecteerde gebruiker uit de meeting +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Dempen of niet dempen van geselecteerde gebruiker bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Dempen of niet dempen van alle gebruikers bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Demp iedereen behalve de presentator -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Focus op de chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Focus op letter kleuren selectie bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Verzend chat bericht -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = Voor de navigatie door berichten moet je focussen op de chat box @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Navigeer naar het laatst gelezen bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Tijdelijk probleem met sneltoets -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Start een enquete bbb.polling.startButton.label = Start enquete bbb.polling.publishButton.label = Publiceren bbb.polling.closeButton.label = Sluiten -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Enquete resulaten +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Voer enquete vragen in bbb.polling.respondersLabel.novotes = Wacht op antwoord bbb.polling.respondersLabel.text = {0} Gebruikers hebben gereageerd @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Sluit alle video's bbb.users.settings.lockAll = Vergrendel alle gebruikers bbb.users.settings.lockAllExcept = Vergrendel alle gebruikers behalve de presentator bbb.users.settings.lockSettings = Vergrendel kijkers -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Ontgrendel alle kijkers bbb.users.settings.roomIsLocked = Standaard vergrendeld bbb.users.settings.roomIsMuted = Standaard gedempt @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Vergendeling instellingen toepassen bbb.lockSettings.cancel = Annuleren bbb.lockSettings.cancel.toolTip = Sluit dit venster zonder op te slaan +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderator vergrendeling bbb.lockSettings.privateChat = Prive chat bbb.lockSettings.publicChat = Publieke chat bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microfoon bbb.lockSettings.layout = Weergave bbb.lockSettings.title=Vergrendel kijkers @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Optie bbb.lockSettings.locked=Gesloten bbb.lockSettings.lockOnJoin=Op slot na meedoen -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = bbb.users.breakout.record = Neem op -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/no_NO/bbbResources.properties b/bigbluebutton-client/locale/no_NO/bbbResources.properties index a955b4a0fc1abcf5d5cfcbe13c549b99202ce534..678e0567ea3f0bfb3da0a227c190b37c52de963b 100644 --- a/bigbluebutton-client/locale/no_NO/bbbResources.properties +++ b/bigbluebutton-client/locale/no_NO/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Kobler opp til serveren -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Beklager, vi kan ikke koble til serveren -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Ã…pne loggvindu bbb.mainshell.meetingNotFound = Finner ikke møtet bbb.mainshell.invalidAuthToken = Ugyldig identifikasjon bbb.mainshell.resetLayoutBtn.toolTip = Nullstill layout bbb.mainshell.notification.tunnelling = Tunnelling bbb.mainshell.notification.webrtc = WebRTC lyd -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Du har kanskje en gammel sprÃ¥kfil bbb.oldlocalewindow.reminder2 = Vennligst slett nettleserens mellomlager og prøv igjen. bbb.oldlocalewindow.windowTitle = Advarsel: Gammel sprÃ¥kfil @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Avbryt bbb.micSettings.connectingtoecho = Lager forbindelse bbb.micSettings.connectingtoecho.error = Ekkotest feil: Vennligst kontakt administrator. bbb.micSettings.cancel.toolTip = Avbryt Ã¥ delta i lydkonferanse -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Lydinnstillinger. Fokus er pÃ¥ dette vinduet til det lukkes. bbb.micSettings.webrtc.title = WebRTC støtte bbb.micSettings.webrtc.capableBrowser = Din nettleser støtter WebRTC @@ -63,44 +63,45 @@ bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Klikk her hvis du ikke bbb.micSettings.webrtc.notCapableBrowser = WebRTC støttes ikke av din nettleser. Vennligst bruk Google Chrome (versjon 32 eller nyere) eller Mozilla Firefox (versjon 26 eller nyere). Du kan fortsatt delta i lydkonferansen ved Ã¥ bruke Adobe Flash Platform. bbb.micSettings.webrtc.connecting = Ringer bbb.micSettings.webrtc.waitingforice = Lager forbindelse -bbb.micSettings.webrtc.transferring = Transferring +bbb.micSettings.webrtc.transferring = bbb.micSettings.webrtc.endingecho = Deltar med lyd bbb.micSettings.webrtc.endedecho = Ekkotest er over. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox mikrofon tillatelser -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome mikrofon tillatelser -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Lyd advarsel bbb.micWarning.joinBtn.label = Delta likevel bbb.micWarning.testAgain.label = Test pÃ¥ nytt bbb.micWarning.message = Mikrofonen viste ingen aktivitet, andre kan antakelig ikke høre deg i denne sesjonen. bbb.webrtcWarning.message = Følgende WebRTC hendelse ble detektert: {0}. Vil du prøve Flash i stedet? -bbb.webrtcWarning.title = WebRTC Audio Failure +bbb.webrtcWarning.title = bbb.webrtcWarning.failedError.1001 = Feil 1001: WebSocket ble koplet fra bbb.webrtcWarning.failedError.1002 = Feil 1002: Greide ikke Ã¥ fÃ¥ WebSocket oppkopling bbb.webrtcWarning.failedError.1003 = Feil 1003: Nettleser versjon er ikke støttet -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) +bbb.webrtcWarning.failedError.1004 = bbb.webrtcWarning.failedError.1005 = Feil 1005: Samtalen ble uventet avsluttet bbb.webrtcWarning.failedError.1006 = Feil 1006: Samtalen ble tidsavbrutt bbb.webrtcWarning.failedError.1007 = Feil 1007: ICE kontroll feilet -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = Feil {0}: Ukjent feilkode -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Hjelp bbb.mainToolbar.logoutBtn = Logg ut bbb.mainToolbar.logoutBtn.toolTip = Logg ut -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Velg sprÃ¥k bbb.mainToolbar.settingsBtn = Innstillinger bbb.mainToolbar.settingsBtn.toolTip = Ã…pne Innstillinger @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = Start opptak bbb.mainToolbar.recordBtn.toolTip.stop = Stopp opptak bbb.mainToolbar.recordBtn.toolTip.recording = Det blir gjort opptak av denne sesjonen bbb.mainToolbar.recordBtn.toolTip.notRecording = Det blir ikke gjort opptak av denne sesjonen -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Bekreft opptak bbb.mainToolbar.recordBtn.confirm.message.start = Er du sikker pÃ¥ at du vil gjøre opptak av sesjonen? bbb.mainToolbar.recordBtn.confirm.message.stop = Er du sikker pÃ¥ at du vil stoppe optaket av sesjonen? -bbb.mainToolbar.recordBtn..notification.title = Innspilling markør -bbb.mainToolbar.recordBtn..notification.message1 = Du kan gjøre opptak av dette møtet. -bbb.mainToolbar.recordBtn..notification.message2 = Du mÃ¥ klikke Start/Stopp innspillingsknapp i tittelfeltet for Ã¥ begynne/avslutte innspilling. +bbb.mainToolbar.recordBtn.notification.title = Innspilling markør +bbb.mainToolbar.recordBtn.notification.message1 = Du kan gjøre opptak av dette møtet. +bbb.mainToolbar.recordBtn.notification.message2 = Du mÃ¥ klikke Start/Stopp innspillingsknapp i tittelfeltet for Ã¥ begynne/avslutte innspilling. bbb.mainToolbar.recordingLabel.recording = (Opptak) bbb.mainToolbar.recordingLabel.notRecording = Gjør ikke opptak -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimer bbb.window.maximizeRestoreBtn.toolTip = Maksimer bbb.window.closeBtn.toolTip = Lukk @@ -171,8 +172,8 @@ bbb.users.settings.webcamSettings = Webkamera innstillinger bbb.users.settings.muteAll = Demp alle bbb.users.settings.muteAllExcept = Demp alle unntatt presenterer bbb.users.settings.unmuteAll = SlÃ¥ lyd pÃ¥ for alle -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = bbb.users.roomMuted.text = Seere er dempet bbb.users.roomLocked.text = Seere er lÃ¥st bbb.users.pushToTalk.toolTip = Klikk for Ã¥ snakke @@ -180,7 +181,7 @@ bbb.users.pushToMute.toolTip = Klikk for Ã¥ dempe deg selv bbb.users.muteMeBtnTxt.talk = SlÃ¥ pÃ¥ lyd bbb.users.muteMeBtnTxt.mute = SlÃ¥ av lyd bbb.users.muteMeBtnTxt.muted = Lyd er slÃ¥tt av -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Brukerliste. Bla med piltaster. bbb.users.usersGrid.nameItemRenderer = Navn bbb.users.usersGrid.nameItemRenderer.youIdentifier = du @@ -188,24 +189,24 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Klikk for Ã¥ velge presenterer bbb.users.usersGrid.statusItemRenderer.presenter = Presenterer bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Seer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Media bbb.users.usersGrid.mediaItemRenderer.talking = Snakker bbb.users.usersGrid.mediaItemRenderer.webcam = Webkamera deles @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Klikk for Ã¥ slÃ¥ pÃ¥ lyd for bbb.users.usersGrid.mediaItemRenderer.pushToMute = Klikk for Ã¥ slÃ¥ lyd av for bruker bbb.users.usersGrid.mediaItemRenderer.pushToLock = LÃ¥s {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = LÃ¥s opp {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Vis bort bruker +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Webkamera deles bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon av bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon pÃ¥ bbb.users.usersGrid.mediaItemRenderer.noAudio = Ikke med i lydkonferanse -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentasjon bbb.presentation.titleWithPres = Presentasjon: {0} bbb.presentation.quickLink.label = Presentasjonsvindu bbb.presentation.fitToWidth.toolTip = Tilpass presentasjonen til bredden bbb.presentation.fitToPage.toolTip = Tilpass presentasjonen til siden bbb.presentation.uploadPresBtn.toolTip = Last opp presentasjonen -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Forrige lysark. bbb.presentation.btnSlideNum.accessibilityName = Slide {0} av {1} bbb.presentation.btnSlideNum.toolTip = Klikk for Ã¥ velge et lysark @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Opplasting er fullført bbb.presentation.uploaded = lastet opp. bbb.presentation.document.supported = Godkjent dokumenttype. Starter konvertering... bbb.presentation.document.converted = Vellykket konvertering av dokument. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO feil: Vennligst kontakt administrator. bbb.presentation.error.security = Sikkerhetsfeil: Vennligst kontakt administrator. bbb.presentation.error.convert.notsupported = Feil: Filtypen som ble lastet opp er støttet. Vennligst last opp en kompatibel type. @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = Last opp bbb.fileupload.uploadBtn.toolTip = Last opp valgt fil bbb.fileupload.deleteBtn.toolTip = Slett presentasjon bbb.fileupload.showBtn = Vis -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Vis presentasjon -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Lager ikoner.. bbb.fileupload.progBarLbl = Framdrift: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Meldinger bbb.chat.quickLink.label = Chat vindu bbb.chat.cmpColorPicker.toolTip = Tekstfarge bbb.chat.input.accessibilityName = Chat melding redigeringsfelt bbb.chat.sendBtn.toolTip = Send melding bbb.chat.sendBtn.accessibilityName = Send chat melding -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopier hele teksten bbb.chat.publicChatUsername = Alle bbb.chat.optionsTabName = Innstillinger bbb.chat.privateChatSelect = Velg person til privat chat -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Innstillinger for prat bbb.chat.fontSize = Chatvindu Fontstørrelse bbb.chat.cmbFontSize.toolTip = Velg fontstørrelse for chat -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimer chatvindu bbb.chat.maximizeRestoreBtn.accessibilityName = Maksimer chatvindu bbb.chat.closeBtn.accessibilityName = Lukk chatvindu bbb.chat.chatTabs.accessibleNotice = Ingen nye meldinger i denne fanen. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Endre kamera innstillinger bbb.publishVideo.changeCameraBtn.toolTip = Klikk for Ã¥ Ã¥pne dialogboks for kameravalg bbb.publishVideo.cmbResolution.tooltip = Velg oppløsning for webkamera bbb.publishVideo.startPublishBtn.labelText = Start deling bbb.publishVideo.startPublishBtn.toolTip = Start deling av webkamera -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Chrome webkamera tillatelser. -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Video dokk bbb.videodock.quickLink.label = Webkamera vindu bbb.video.minimizeBtn.accessibilityName = Minimer videodokk vindu @@ -361,95 +364,97 @@ bbb.video.publish.hint.waitingApproval = Venter pÃ¥ godkjenning bbb.video.publish.hint.videoPreview = Video forhÃ¥ndsvisning bbb.video.publish.hint.openingCamera = Starter kamera... bbb.video.publish.hint.cameraDenied = Kamera tilgang avvist -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Publiserer... bbb.video.publish.closeBtn.accessName = Lukk oppsettboksen for webkamera bbb.video.publish.closeBtn.label = Avbryt bbb.video.publish.titleBar = Webkamera deling Vindu -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Stopp Ã¥ lytte til konferansen bbb.toolbar.phone.toolTip.unmute = Start Ã¥ lytte til konferansen bbb.toolbar.phone.toolTip.nomic = Ingen mikrofon er detektert -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Del ut ditt webkamera bbb.toolbar.video.toolTip.stop = Stopp Ã¥ dele ut ditt webkamera +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Legg til egendefinert layout i liste -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Endre din layout bbb.layout.loadButton.toolTip = Last inn layout fra fil bbb.layout.saveButton.toolTip = Lagre layout til fil @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Ta i bruk layout bbb.layout.combo.custom = * Egendefinert layout bbb.layout.combo.customName = Egendefinert layout bbb.layout.combo.remote = Fjern -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Layout ble lagret +bbb.layout.save.ioerror = bbb.layout.load.complete = Layout ble lastet inn -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Standard utforming -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Video Chat bbb.layout.name.webcamsfocus = Webcam møte bbb.layout.name.presentfocus = Presentasjon møte -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Leksjon assistent bbb.layout.name.lecture = Leksjon -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Blyant bbb.highlighter.toolbar.pencil.accessibilityName = Endre tavlepeker til plyant bbb.highlighter.toolbar.ellipse = Sirkel @@ -492,97 +500,99 @@ bbb.highlighter.toolbar.color = Velg farge bbb.highlighter.toolbar.color.accessibilityName = Farge for tegning pÃ¥ tavla bbb.highlighter.toolbar.thickness = Velg tykkelse bbb.highlighter.toolbar.thickness.accessibilityName = Endre tykkelse av tegnestrek pÃ¥ tavla -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logget ut +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Appen server er lukket bbb.logout.asyncerror = Det oppstod en Async feil bbb.logout.connectionclosed = Forbindelsen med serveren er slÃ¥tt av -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Forbindelsen til serveren ble avvist bbb.logout.invalidapp = Appen red5 finnes ikke bbb.logout.unknown = Din klient har mistet forbindelsen til serveren -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Du har logget ut av konferansen -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Hvis denne utloggingen var uventet kan du klilkke nedenfor for Ã¥ logge inn igjen. bbb.logout.refresh.label = Kople opp igjen -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Bekreft utlogging bbb.logout.confirm.message = Er du sikker pÃ¥ at du vil logge ut? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ja bbb.logout.confirm.no = Nei -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Notater bbb.notes.cmpColorPicker.toolTip = Telstfarge bbb.notes.saveBtn = Lagre bbb.notes.saveBtn.toolTip = Lagre notat -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Klikk Tillat for Ã¥ teste skrivebordsdeling bbb.settings.deskshare.start = Sjekk skrivebordsdeling bbb.settings.voice.volume = Mikrofonaktivitet -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Feil versjon av Flash bbb.settings.flash.text = Du har installert versjon {0} av Flash, men trenger minst versjon {1}. Klikk nedenfor for Ã¥ installere siste Adobe Flash versjon. bbb.settings.flash.command = Installer nyeste Flash bbb.settings.isight.label = Feil med iSight kamera -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Installer Flash 10.2 RC2 bbb.settings.warning.label = Advarsel bbb.settings.warning.close = Lukk denne advarselen bbb.settings.noissues = Ingen alvorlige feil er oppdaget. bbb.settings.instructions = Tillat at Flash vil bruke ditt kamera. Hvis du kan se og høre deg selv er din nettleser satt opp korrekt. Nedenfor er det vist noen feilsituasjoner som kan undersøkes. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triangel ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Endre tavlepeker til triangel ltbcustom.bbb.highlighter.toolbar.line = Linje @@ -591,34 +601,34 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Endre tavlepeker til tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Skriftfarge ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Skriftstørelse -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Du er kommet til første melding. bbb.accessibility.chat.chatBox.reachedLatest = Du er kommet til siste melding. @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Du er kommet til første meldin bbb.accessibility.chat.chatBox.navigatedLatest = Du er kommet til siste melding. bbb.accessibility.chat.chatBox.navigatedLatestRead = Du er kommet til sist leste melding. bbb.accessibility.chat.chatwindow.input = Chatting -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Bruk piltaster til Ã¥ bla igjennom chat meldinger. bbb.accessibility.notes.notesview.input = Notater inntasting bbb.shortcuthelp.title = Hurtigtaster -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimer hurtigtast vindu bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maksimer hurtigtast vindu bbb.shortcuthelp.closeBtn.accessibilityName = Lukk hurtigtast vindu -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Generelle hurtigtaster bbb.shortcuthelp.dropdown.presentation = Hurtigtaster for presentasjon bbb.shortcuthelp.dropdown.chat = Hurtigtaster for chatt bbb.shortcuthelp.dropdown.users = Brukers snarveier -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Hurtitast bbb.shortcuthelp.headers.function = Funksjon @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Minimer gjeldende vindu bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Maksimer gjeldende vindu -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Fokuser ut fra Flash vindu bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = SlÃ¥ av eller pÃ¥ mikrofon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Endre fokus til presentasjonsvindu bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Endre fokus til chatvindu -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Ã…pne skrivebordsdeling vindu @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Logg ut av møtet bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Gjør hÃ¥ndsopprekking -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Last opp presentasjon bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = GÃ¥ til neste lysark @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = GÃ¥ til neste lysark bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Tilpass lysark til sidebredde -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Tilpass lysark til siden -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Gjør valgt person til presenterer -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Vis bort vlgte person fra møtet +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = SlÃ¥ ly av eller pÃ¥ for valgte person bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = SlÃ¥ lyd av eller pÃ¥ for alle personer bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = SlÃ¥ lyd av for alle unntatt presenterer -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Endre fokus til chat faner -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Endre fokus til fargeplukker bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Send chat melding -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = Endre fokus til chat boks for Ã¥ bla i meldinger @@ -746,32 +756,33 @@ bbb.shortcutkey.chat.chatbox.goread.function = GÃ¥ til siste leste melding bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Midlertidig debug hurtigtast -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = Publiser bbb.polling.closeButton.label = Lukk -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Ja bbb.polling.answer.No = Nei -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Start deling bbb.publishVideo.changeCameraBtn.labelText = Endre kamera innstillinger @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Lukk alle videoer bbb.users.settings.lockAll = LÃ¥s alle brukere bbb.users.settings.lockAllExcept = LÃ¥s brukere unntat presenterer bbb.users.settings.lockSettings = LÃ¥s seere... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Avslutt lÃ¥sing av seere bbb.users.settings.roomIsLocked = LÃ¥st som standardsetting bbb.users.settings.roomIsMuted = Dempet som standardsetting @@ -802,102 +813,59 @@ bbb.lockSettings.save.tooltip = Bruk lÃ¥sing bbb.lockSettings.cancel = Avbryt bbb.lockSettings.cancel.toolTip = Lukk alle vinduer uten Ã¥ lagre +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Moderator lÃ¥ser bbb.lockSettings.privateChat = Privat chat bbb.lockSettings.publicChat = Ã…pen chat bbb.lockSettings.webcam = Webkamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Layout bbb.lockSettings.title=LÃ¥s seere bbb.lockSettings.feature=Mulighet bbb.lockSettings.locked=LÃ¥st -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/nqo/bbbResources.properties b/bigbluebutton-client/locale/nqo/bbbResources.properties index acac361653411ab623c9afece37ba4f66228d452..5736a96f5ce2aa3946a9d5c410090d3cbf742ba9 100644 --- a/bigbluebutton-client/locale/nqo/bbbResources.properties +++ b/bigbluebutton-client/locale/nqo/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = ßœßŠß¬ß²ßžßŽß¬ß²ß ßŒß² ߌߘßß« ß›ßߘߊ ߟߊ߫ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = ߥߊߦߌߞߊ߬߸ ߊ߲ ß•ßß« ߛߴߊ߲ ߜߊ߲߬ߞߎ߲߬ ß ßŠß« ß›ßߘߊ ߟߊ߫. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = ߊ߬ߥߊ߬ bbb.micSettings.echoTestAudioNo = ß߲߬ß߲߫ -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = ߊ߬ ߘßߛߊ߬ -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = ߜߊ߬ߙߊ ß¡ß߲ߞߊ߲ ßœßŠß²ß¬ßžßŽß²ß¬ß ßŒß² ߘßߛߊ߬ -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = ߘß߬ߡßß²ß¬ß ßŒß² bbb.mainToolbar.logoutBtn = ߜߊ߲߬ߞߎ߲߬ߓß߬ߟߌ -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = ߞߊ߲ ߓߊߕßß¡ß߲߫ bbb.mainToolbar.settingsBtn = ߘß߬ߓßß²ß¬ß ßŒß² ß ßŽß¬ bbb.mainToolbar.settingsBtn.toolTip = ߘß߬ߓßß²ß¬ß ßŒß²ß¬ ß ßŽß¬ ߘߊߦߟß߬ -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = ߊ߬ ߟߊߘßߦߊ߫ bbb.window.maximizeRestoreBtn.toolTip = ߊ߬ ߟߊߓß߲߬ߧߊ߬ bbb.window.closeBtn.toolTip = ߊ߬ ߘߊߕߎ߲߯ @@ -162,742 +163,709 @@ bbb.presentation.titleBar = ߦߌ߬ߘߊ߬ߟߌ߬ ßߢßߘߊ ߡߙߎßß‹ ߛߟߊߟߊ bbb.chat.titleBar = ߓߊ߬ߙß߬ߘߊ߬ ßߢßߘߊ ߡߙߎßß‹ ߛߟߊߟߊ bbb.users.title = ߕߣß߬ߓß߬ߟߊ߬ {0} {1} bbb.users.titleBar = ߕߣß߬ߓß߬ߟߌ߬ ßߢßߘߊ ߡߙߎßß‹ ߛߟߊߟߊ -bbb.users.quickLink.label = Users Window +bbb.users.quickLink.label = bbb.users.minimizeBtn.accessibilityName = ߕߣß߬ߓß߬ߟߌ߬ ßߢßߘߊ ߟߎ߬ ߟߊߘßߦߊ߫ bbb.users.maximizeRestoreBtn.accessibilityName = ߕߣß߬ߓß߬ߟߌ߬ ßߢßߘߊ ߟߎ߬ ߟߊߓß߲߬ߧߊ߬ bbb.users.settings.buttonTooltip = ߘß߬ߓßß²ß¬ß ßŒß² ß ßŽß¬ -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = bbb.video.publish.closeBtn.label = ߊ߬ ߘßߛߊ߬ -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = ߌ ߜߊ߲߬ߞߎ߲߬ߓß߬ +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ߊ߬ߥߊ߬ -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = ߊ߬ߥߊ߬ bbb.logout.confirm.no = ß߲߬ß߲߫ -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = ߊ߬ ߘߊߕߎ߲߯ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = ߊ߬ߥߊ߬ bbb.polling.answer.No = ß߲߬ß߲߫ -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = ߊ߬ ߘßߛߊ߬ -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/oc/bbbResources.properties b/bigbluebutton-client/locale/oc/bbbResources.properties index bafd272ab486243e6f394145d5e95efb0be950e7..d20c2b4b9b6bae8a4935eb5974255219a14f0b62 100644 --- a/bigbluebutton-client/locale/oc/bbbResources.properties +++ b/bigbluebutton-client/locale/oc/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Connexion al servidor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = O planhèm, impossible d'establir una connexion al servidor. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (version {0}) bbb.mainshell.logBtn.toolTip = Dobrir la fenèstra de log @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = Geton d'autentificacion invalid bbb.mainshell.resetLayoutBtn.toolTip = Disposicion per defaut bbb.mainshell.notification.tunnelling = Tunèl bbb.mainshell.notification.webrtc = Àudio WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Avètz probablament d'ancianas traduccions de BigBlueButton. bbb.oldlocalewindow.reminder2 = Escafatz la memòria cache de vòstre navigador web e ensajatz tornamai. bbb.oldlocalewindow.windowTitle = Avertiment : Las traduccions son pas a jorn @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Connexion en cors bbb.micSettings.webrtc.transferring = Transferiment en cors bbb.micSettings.webrtc.endingecho = Jónher l'à udio bbb.micSettings.webrtc.endedecho = Tèst de resson acabat. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Permissions del microfòn de Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Permissions del microfòn de Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Avertissement à udio bbb.micWarning.joinBtn.label = Jónher de tot biais bbb.micWarning.testAgain.label = Testar tornamai @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Lo tèst de resson WebRTC s'es bbb.webrtcWarning.connection.dropped = Connexion a WebRTC fracassada bbb.webrtcWarning.connection.reconnecting = Ensag de reconnexion bbb.webrtcWarning.connection.reestablished = Connexion a WebRTC restablida -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Ajuda bbb.mainToolbar.logoutBtn = Desconnexion bbb.mainToolbar.logoutBtn.toolTip = Se desconnectar -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Seleccionar vòstra lenga bbb.mainToolbar.settingsBtn = Paramètres bbb.mainToolbar.settingsBtn.toolTip = Dobrir los paramètres @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Començar l'enregistrament bbb.mainToolbar.recordBtn.toolTip.stop = Arrestar l'enregistrament bbb.mainToolbar.recordBtn.toolTip.recording = Aquesta session es enregistrada bbb.mainToolbar.recordBtn.toolTip.notRecording = Aquesta session es pas enregistrada -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Confirmar l'enregistrament bbb.mainToolbar.recordBtn.confirm.message.start = Volètz començar l'enregistrament de la session ? bbb.mainToolbar.recordBtn.confirm.message.stop = Volètz arrestar l'enregistrament de la session ? -bbb.mainToolbar.recordBtn..notification.title = Enregistrar la notificacion -bbb.mainToolbar.recordBtn..notification.message1 = Podètz enregistrar aquesta conferéncia. -bbb.mainToolbar.recordBtn..notification.message2 = Vos cal clicar sul boton Aviar / Arrestar l'enregistrament dins la barra de tÃtol per començar / arrestar l’enregistrament. +bbb.mainToolbar.recordBtn.notification.title = Enregistrar la notificacion +bbb.mainToolbar.recordBtn.notification.message1 = Podètz enregistrar aquesta conferéncia. +bbb.mainToolbar.recordBtn.notification.message2 = Vos cal clicar sul boton Aviar / Arrestar l'enregistrament dins la barra de tÃtol per començar / arrestar l’enregistrament. bbb.mainToolbar.recordingLabel.recording = (Enregistrament en cors) bbb.mainToolbar.recordingLabel.notRecording = Enregistra pas -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Configuracion de las notificacions bbb.clientstatus.notification = Notificacions pas legidas bbb.clientstatus.close = Tampar @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Vòstre navigador ({0}) es pas a jorn. Es rec bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Vòstra extension Flash Player ({0}) es pas a jorn. Es recomandat d'installar la darrièra version. bbb.clientstatus.webrtc.title = Àudio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Vos recomandam d'utilizar Firefox o Chrome per una melhora qualitat sonòra. bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Reduire bbb.window.maximizeRestoreBtn.toolTip = Agrandir bbb.window.closeBtn.toolTip = Tampar @@ -188,16 +189,16 @@ bbb.users.usersGrid.statusItemRenderer = Estatut bbb.users.usersGrid.statusItemRenderer.changePresenter = Clicar per ne far lo presentador bbb.users.usersGrid.statusItemRenderer.presenter = Presentador bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = bbb.users.usersGrid.statusItemRenderer.confused = Confús bbb.users.usersGrid.statusItemRenderer.neutral = Neutre bbb.users.usersGrid.statusItemRenderer.happy = Urós @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Desactivar la sordina per {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Activar la sordina per {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Verrolhar {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desverrolhar {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Bandir {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Partejar la webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Microfòn tampat bbb.users.usersGrid.mediaItemRenderer.micOn = Microfòn dobèrt bbb.users.usersGrid.mediaItemRenderer.noAudio = Sètz pas en conferéncia à udio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Suprimir -bbb.users.emojiStatus.raiseHand = Raise hand +bbb.users.emojiStatus.raiseHand = bbb.users.emojiStatus.happy = Urós bbb.users.emojiStatus.neutral = Neutre bbb.users.emojiStatus.sad = Triste bbb.users.emojiStatus.confused = Confús -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentacion bbb.presentation.titleWithPres = Presentacion : {0} bbb.presentation.quickLink.label = Fenèstra de presentacion bbb.presentation.fitToWidth.toolTip = Ajustar la presentacion a la largor bbb.presentation.fitToPage.toolTip = Ajustar la presentacion a la pagina bbb.presentation.uploadPresBtn.toolTip = Mandatz un document de presentar -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Diapositiva precedenta. bbb.presentation.btnSlideNum.accessibilityName = Diapositiva {0} sus {1} bbb.presentation.btnSlideNum.toolTip = Seleccionar una pagina @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = MandadÃs del fichièr acabat. Mercé de pacie bbb.presentation.uploaded = mandat. bbb.presentation.document.supported = Lo document mandat es compatible. bbb.presentation.document.converted = Conversion del fichièr capitada. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = D'en primièr, convertissètz aqueste document en PDF. bbb.presentation.error.io = Error del servidor : Contactatz l'administrator. bbb.presentation.error.security = Error de seguretat : Contactatz l'administrator. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Mandar bbb.fileupload.uploadBtn.toolTip = Mandar lo fichièr seleccionat bbb.fileupload.deleteBtn.toolTip = Suprimir aquesta presentacion bbb.fileupload.showBtn = Afichar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Afichar aquesta presentacion -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Generacion dels apercebuts.. bbb.fileupload.progBarLbl = Progression : -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Discussion bbb.chat.quickLink.label = Fenèstra de discussion bbb.chat.cmpColorPicker.toolTip = Color del tèxte bbb.chat.input.accessibilityName = Camp de picada de messatge bbb.chat.sendBtn.toolTip = Mandar aqueste messatge bbb.chat.sendBtn.accessibilityName = Mandar aqueste messatge -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Copiar tot lo tèxte bbb.chat.publicChatUsername = Public bbb.chat.optionsTabName = Opcions @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Aviar lo partiment bbb.publishVideo.startPublishBtn.toolTip = Començar lo partiment de ma webcam bbb.publishVideo.startPublishBtn.errorName = Impossible de partejar la camèra. Rason: {0} bbb.webcamPermissions.chrome.title = Permissions de la webcam de Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Webcams bbb.videodock.quickLink.label = Fenèstra de las webcams bbb.video.minimizeBtn.accessibilityName = Reduire la fenèstra de las webcams @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Tampar la fenèstra de paramètres per l bbb.video.publish.closeBtn.label = Anullar bbb.video.publish.titleBar = Publicar la webcam bbb.video.streamClose.toolTip = Tampar l'emission de : {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = Partiment de burèu \: Apercebut del presentador bbb.screensharePublish.pause.tooltip = Metre lo partiment d'ecran en pause bbb.screensharePublish.pause.label = Pausa @@ -374,7 +378,7 @@ bbb.screensharePublish.restart.tooltip = Reprene lo partiment d'ecran bbb.screensharePublish.restart.label = Reprene bbb.screensharePublish.maximizeRestoreBtn.toolTip = Podètz pas agrandir aquesta fenèstra. bbb.screensharePublish.closeBtn.toolTip = Arrestar de partejar e tampar -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Reduire bbb.screensharePublish.minimizeBtn.accessibilityName = Reduire la fenèstra de partiment d'ecran bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Agrandir la fenèstra de partiment d'ecran @@ -421,35 +425,36 @@ bbb.screensharePublish.tunnelingErrorMessage.two = Ensajar de refrescar lo clien bbb.screensharePublish.cancelButton.label = Anullar bbb.screensharePublish.startButton.label = Aviar bbb.screensharePublish.stopButton.label = Arrestar -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Partiment d'ecran bbb.screenshareView.fitToWindow = Adaptar la talha a la fenèstra bbb.screenshareView.actualSize = Afichar a la talha normala bbb.screenshareView.minimizeBtn.accessibilityName = Reduire la fenèstra de partiment d'ecran bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Agrandir la fenèstra de partiment d'ecran bbb.screenshareView.closeBtn.accessibilityName = Tampar la fenèstra de partiment d'ecran -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Daissar d'escotar la conferéncia bbb.toolbar.phone.toolTip.unmute = Aviar l'escota la conferéncia bbb.toolbar.phone.toolTip.nomic = Cap de microfòn pas detectat bbb.toolbar.deskshare.toolTip.start = Dobrir la fenèstra de publicacion de partiment d'ecran bbb.toolbar.deskshare.toolTip.stop = Arrestar de partejar vòstre burèu -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Partejar vòstra webcam bbb.toolbar.video.toolTip.stop = Arrestar lo partiment de vòstra webcam +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Apondre la mesa en pagina personalizada a la lista -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Cambiar la disposicion bbb.layout.loadButton.toolTip = Telecargar de mesas en pagina dempuèi un fichièr bbb.layout.saveButton.toolTip = Salvar las mesas en pagina dins un fichièr @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplicar una mesa en pagina bbb.layout.combo.custom = * Mesa en pagina personalizada bbb.layout.combo.customName = Mesa en pagina personalizada bbb.layout.combo.remote = Distant -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Las mesas en pagina son estadas salvadas amb succès +bbb.layout.save.ioerror = bbb.layout.load.complete = Las mesas en pagina son estadas telecargadas amb succès bbb.layout.load.failed = Impossible de cargar las mesas en pagina -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Configuracion per defaut bbb.layout.name.closedcaption = Sostitolatge per sords e malentendents bbb.layout.name.videochat = Discussion vidèo bbb.layout.name.webcamsfocus = Webconferéncia bbb.layout.name.presentfocus = Visioconferéncia -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Assistent de lectura bbb.layout.name.lecture = Lectura -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Gredon bbb.highlighter.toolbar.pencil.accessibilityName = Cambiar lo cursor del tablèu pel gredon bbb.highlighter.toolbar.ellipse = Cercle @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Seleccionar una color bbb.highlighter.toolbar.color.accessibilityName = Color de la marca bbb.highlighter.toolbar.thickness = Cambiar l'espessor bbb.highlighter.toolbar.thickness.accessibilityName = Espessor del trait -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Desconnectat +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = D'acòrdi bbb.logout.appshutdown = L'aplicacion servidor es estada arrestada bbb.logout.asyncerror = Una error de sincronizacion s'es produita @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = La connexion al servidor es estada tampada bbb.logout.rejected = La connexion al servidor es estada refusada bbb.logout.invalidapp = L'aplicacion red5 existÃs pas bbb.logout.unknown = Vòstre client a perdut la connexion al servidor -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Ara, sètz desconnectat de la conferéncia bbb.logour.breakoutRoomClose = La fenèstra de vòstre navigador se va tampar -bbb.logout.ejectedFromMeeting = Un moderator vos a bandit de la reünion. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Se aquesta fin de session était involontaire, clicar lo boton çaijós per vos reconnectar. bbb.logout.refresh.label = Reconnectar +bbb.logout.feedback.hint = +bbb.logout.feedback.label = bbb.settings.title = Paramètres bbb.settings.ok = D'acòrdi -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Confirmar la desconnexion bbb.logout.confirm.message = Sètz segur que vos volètz desconnectar ? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ã’c bbb.logout.confirm.no = Non -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Problèmas de connectivitat detectats bbb.connection.reconnecting=Reconnexion en cors bbb.connection.reestablished=Connexion restablida @@ -530,59 +539,60 @@ bbb.notes.title = Nòtas bbb.notes.cmpColorPicker.toolTip = Color del tèxte bbb.notes.saveBtn = Salvar bbb.notes.saveBtn.toolTip = Salvar la nòta -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Clicatz sus Autorizar sul convit que s'aficha per verificar que lo partiment d'ecran fonciona corrèctament per vos bbb.settings.deskshare.start = Verificar lo partiment d'ecran bbb.settings.voice.volume = Activitat del microfòn -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Error de la version de Flash bbb.settings.flash.text = Avètz Flash {0} d'installat, mas vos cal aver al mens la version {1} per utilizar BigBlueButton convenablement. Per installar la version la mai recenta de Adobe Flash, clicatz sul boton çaijós. bbb.settings.flash.command = Installar la novèla version de Flash bbb.settings.isight.label = Error de webcam iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Installar Flash 10.2 RC2 bbb.settings.warning.label = Atencion bbb.settings.warning.close = Tampar aquesta alèrta bbb.settings.noissues = Cap de problèma seriós es pas estat detectat. bbb.settings.instructions = Acceptar la demanda de Flash per accedir a vòstra webcam. Se la sortida correspond a çò qu'esperà vetz, vòstre navigator es configurat corrèctament. Los problèmas potencials son descriches çaijós, i podètz getar un còp d’uèlh per trobar una solucion. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triangle ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Cambiar lo cursor del tablèu per un triangle ltbcustom.bbb.highlighter.toolbar.line = Linha @@ -600,8 +610,8 @@ bbb.caption.transcript.noowner = Pas cap bbb.caption.transcript.youowner = Vos bbb.caption.transcript.pastewarning.title = Avertiment de pegatge de sostÃtol bbb.caption.transcript.pastewarning.text = Impossible de pegar mai de {0} caractèrs. Avètz pegat {1} caractèrs. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = bbb.caption.option.label = Opcions bbb.caption.option.language = Lenga : bbb.caption.option.language.tooltip = Lenga\: @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Avètz navigat fins al darrièr bbb.accessibility.chat.chatBox.navigatedLatestRead = Avètz navigat fins al messatge lo mai recent qu'avètz legit. bbb.accessibility.chat.chatwindow.input = Picada de tèxte bbb.accessibility.chat.chatwindow.audibleChatNotification = Son de notificacion de chat -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Utilizar las sagetas per navigar entre los messatges. bbb.accessibility.notes.notesview.input = Picada de nòtas bbb.shortcuthelp.title = Acorchis de clavièr -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Reduire l'ajuda suls acorchis bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Agrandir l'ajuda suls acorchis bbb.shortcuthelp.closeBtn.accessibilityName = Tampar l'ajuda suls acorchis -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Acorchis globals bbb.shortcuthelp.dropdown.presentation = Acorchis de presentacion bbb.shortcuthelp.dropdown.chat = Acorchis de discussion bbb.shortcuthelp.dropdown.users = Acorchis utilizaires bbb.shortcuthelp.dropdown.caption = Acorchis de Sostitolatge -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Acorchi bbb.shortcuthelp.headers.function = Foncion @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajustar las paginas a la pagina bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Far de la persona seleccionada lo presentador bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Ejectar la persona seleccionada de la conferéncia +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Activar o desactivar la sordina per la persona seleccionada bbb.shortcutkey.users.muteall = 65 @@ -721,7 +731,7 @@ bbb.shortcutkey.users.joinBreakoutRoom.function = Jónher la sala de grop selecc bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Metre lo fòcus suls onglets de la fenèstra de discussion bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Metre lo fòcus sus la seleccion de la color de la poliça bbb.shortcutkey.chat.sendMessage = 83 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Publicar bbb.polling.closeButton.label = Tampar bbb.polling.customPollOption.label = Vòtes personalizats... bbb.polling.pollModal.title = Los resultats del vòte en dirècte +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Entrar las causidas del vòte bbb.polling.respondersLabel.novotes = En espèra de las responsas bbb.polling.respondersLabel.text = {0} Utilizaires an respondut @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Aplicar los paramètres de verrolhatge bbb.lockSettings.cancel = Anullar bbb.lockSettings.cancel.toolTip = Tampar aquesta fenèstra sens salvar +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Verrolhatge del moderator bbb.lockSettings.privateChat = Discussion privada bbb.lockSettings.publicChat = Discussion publica bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microfòn bbb.lockSettings.layout = Mesa en pagina bbb.lockSettings.title=Verrolhar los participants @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Verrolhar a la connexion bbb.users.breakout.breakoutRooms = Metre las salas en pausa bbb.users.breakout.updateBreakoutRooms = Metre a jorn las Salas de Grop +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = Temps impartit per las salas de grop bbb.users.breakout.calculatingRemainingTime = Calcul del temps restant... bbb.users.breakout.closing = Tampadura +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Salas bbb.users.breakout.roomsCombo.accessibilityName = Nombre de salas de crear bbb.users.breakout.room = Sala -bbb.users.breakout.randomAssign = Afectar los utilizaires aleatòriament bbb.users.breakout.timeLimit = Limit de temps bbb.users.breakout.durationStepper.accessibilityName = Limit de temps en minutas bbb.users.breakout.minutes = Minutas @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Convidar bbb.users.breakout.close = Tampar bbb.users.breakout.closeAllRooms = Tampar Totas las Salas de Grop bbb.users.breakout.insufficientUsers = Nombre d'utilizaires insufisent. Deuriatz apondre al mens un utilizaire per sala -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = bbb.users.breakout.joinSession = Rejónher la session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Sala bbb.users.roomsGrid.users = Utilizaires bbb.users.roomsGrid.action = Accion @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Transferiment à udio bbb.users.roomsGrid.join = Rejónher bbb.users.roomsGrid.noUsers = Pas cap d'utilizaire dins aquesta sala -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabi -bbb.langSelector.az_AZ=Azèri -bbb.langSelector.eu_EU=Basc -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgar -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinés (Simplificat) -bbb.langSelector.zh_TW=Chinés (Tradicional) -bbb.langSelector.hr_HR=Croat -bbb.langSelector.cs_CZ=Chèc -bbb.langSelector.da_DK=Danés -bbb.langSelector.nl_NL=Neerlandés -bbb.langSelector.en_US=Anglés -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finés -bbb.langSelector.fr_FR=Francés -bbb.langSelector.fr_CA=Francés (Quebèc) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=Alemand -bbb.langSelector.el_GR=Grèc -bbb.langSelector.he_IL=Ebrèu -bbb.langSelector.hu_HU=Ongrés -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japonés -bbb.langSelector.ko_KR=Corean -bbb.langSelector.lv_LV=Leton -bbb.langSelector.lt_LT=Lituanian -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepalés -bbb.langSelector.no_NO=Norvegian -bbb.langSelector.pl_PL=Polonés -bbb.langSelector.pt_BR=Portugués (Brasilièr) -bbb.langSelector.pt_PT=Portugués -bbb.langSelector.ro_RO=Romanés -bbb.langSelector.ru_RU=Rus -bbb.langSelector.sr_SR=Sèrbi (Cirillic) -bbb.langSelector.sr_RS=Sèrbi (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Eslovac -bbb.langSelector.sl_SL=Eslovèn -bbb.langSelector.es_ES=Espanhòl -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Suedés -bbb.langSelector.th_TH=Tai -bbb.langSelector.tr_TR=Turc -bbb.langSelector.uk_UA=Ucraïnian -bbb.langSelector.vi_VN=Vietnamian -bbb.langSelector.cy_GB=Galés -bbb.langSelector.oc=Occitan-Lengadocian +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/or_IN/bbbResources.properties b/bigbluebutton-client/locale/or_IN/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/or_IN/bbbResources.properties +++ b/bigbluebutton-client/locale/or_IN/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/pl_PL/bbbResources.properties b/bigbluebutton-client/locale/pl_PL/bbbResources.properties index 5d9eb5e46aef35e19e46e66c52d9e314d9513b3a..cbbfa04f62875c672020a612368126917d1bc282 100644 --- a/bigbluebutton-client/locale/pl_PL/bbbResources.properties +++ b/bigbluebutton-client/locale/pl_PL/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = ÅÄ…czenie z serwerem -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Przepraszamy, brak poÅ‚Ä…czenia z serwerem. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Otwórz okno dziennika bbb.mainshell.meetingNotFound = Nie Znaleziono Spotkania bbb.mainshell.invalidAuthToken = NieprawidÅ‚owe Potwierdzenie AutentycznoÅ›ci Å»etonu bbb.mainshell.resetLayoutBtn.toolTip = Resetuj ukÅ‚ad okien bbb.mainshell.notification.tunnelling = Tunelowanie bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Możliwe, że masz stare tÅ‚umaczenie dla BigBlueButton. bbb.oldlocalewindow.reminder2 = Prosimy wyczyÅ›cić cache przeglÄ…darki, a nastÄ™pnie spróbować ponownie. bbb.oldlocalewindow.windowTitle = Uwaga: Nieaktualne tÅ‚umaczenie @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = ÅÄ…czenie bbb.micSettings.webrtc.transferring = PrzesyÅ‚anie bbb.micSettings.webrtc.endingecho = PoÅ‚Ä…czenie audio bbb.micSettings.webrtc.endedecho = Test na echo zakoÅ„czony. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Pozwolenia Mikrofonu Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Pozwolenia Mikrofonu Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Ostrzeżenie Audio bbb.micWarning.joinBtn.label = Weź udziaÅ‚ w każdym razie bbb.micWarning.testAgain.label = Testuj ponownie @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Test echo dla WebRTC zostaÅ‚ n bbb.webrtcWarning.connection.dropped = PoÅ‚Ä…czenie WebRTC zostaÅ‚o przerwane bbb.webrtcWarning.connection.reconnecting = Próba ponownego poÅ‚Ä…czenia bbb.webrtcWarning.connection.reestablished = Ustanowiono ponownie poÅ‚Ä…czenie WebRTC -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Pomoc bbb.mainToolbar.logoutBtn = Wyloguj bbb.mainToolbar.logoutBtn.toolTip = Wyloguj -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Wybierz jÄ™zyk bbb.mainToolbar.settingsBtn = Ustawienia bbb.mainToolbar.settingsBtn.toolTip = Otwórz ustawienia @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Zacznij nagrywanie bbb.mainToolbar.recordBtn.toolTip.stop = ZakoÅ„cz nagrywanie bbb.mainToolbar.recordBtn.toolTip.recording = Sesja jest nagrywana bbb.mainToolbar.recordBtn.toolTip.notRecording = Sesja nie jest nagrywana -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Potwierdź nagrywanie bbb.mainToolbar.recordBtn.confirm.message.start = Czy jesteÅ› pewien, że chcesz zacząć nagrywanie tej sesji? bbb.mainToolbar.recordBtn.confirm.message.stop = Czy jesteÅ› pewien, że chcesz zakoÅ„czyć nagrywanie tej sesji? -bbb.mainToolbar.recordBtn..notification.title = Powiadomienia o nagraniu -bbb.mainToolbar.recordBtn..notification.message1 = Możesz nagrywać to spotkanie. -bbb.mainToolbar.recordBtn..notification.message2 = Musisz nacisnąć na przycisk Zacznij/ZakoÅ„cz Nagrywanie na belce tytuÅ‚owej, aby zacząć/zakoÅ„czyć nagrywanie. +bbb.mainToolbar.recordBtn.notification.title = Powiadomienia o nagraniu +bbb.mainToolbar.recordBtn.notification.message1 = Możesz nagrywać to spotkanie. +bbb.mainToolbar.recordBtn.notification.message2 = Musisz nacisnąć na przycisk Zacznij/ZakoÅ„cz Nagrywanie na belce tytuÅ‚owej, aby zacząć/zakoÅ„czyć nagrywanie. bbb.mainToolbar.recordingLabel.recording = (Nagrywanie) bbb.mainToolbar.recordingLabel.notRecording = Nie Nagrywa -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Konfiguracja powiadomieÅ„ bbb.clientstatus.notification = Powiadomienie o nieprzeczytaniu bbb.clientstatus.close = Zamknij @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Twoja przeglÄ…darka ({0}) jest nieaktualna. Z bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Wtyczka Flash ({0}) jest nieaktualna. Zalecana jest aktualizacja do najnowszej wersji. bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Zalecane jest użycie przeglÄ…darki Firefox lub Chrome dla lepszej jakoÅ›ci dźwiÄ™ku. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = ZwiÅ„ bbb.window.maximizeRestoreBtn.toolTip = PowiÄ™ksz bbb.window.closeBtn.toolTip = Zamknij @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = NaciÅ›nij by uczynić Prezenterem bbb.users.usersGrid.statusItemRenderer.presenter = Prezenter bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Wyczyść status bbb.users.usersGrid.statusItemRenderer.viewer = Uczestnik bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = UdostÄ™pnianie kamerki internetowej. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Kliknij aby dać gÅ‚os użytk bbb.users.usersGrid.mediaItemRenderer.pushToMute = Kliknij aby wyciszyć użytkownika bbb.users.usersGrid.mediaItemRenderer.pushToLock = Zablokuj {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Odblokuj {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Wyrzuć użytkownika +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = UdostÄ™pnij kamerÄ™ bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon wyÅ‚Ä…czony bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon wÅ‚Ä…czony bbb.users.usersGrid.mediaItemRenderer.noAudio = Nie w konferencji audio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Wyczyść -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentacja bbb.presentation.titleWithPres = Prezentacja: {0} bbb.presentation.quickLink.label = Okno Prezentacji bbb.presentation.fitToWidth.toolTip = Dopasuj PrezentacjÄ™ do SzerokoÅ›ci bbb.presentation.fitToPage.toolTip = Dopasuj PrezentacjÄ™ do Strony bbb.presentation.uploadPresBtn.toolTip = Wgraj PrezentacjÄ™ -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Poprzedni slajd bbb.presentation.btnSlideNum.accessibilityName = Slajd {0} z {1} bbb.presentation.btnSlideNum.toolTip = Kliknij aby wybrać slajd @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = WysyÅ‚anie zakoÅ„czone, prosimy czekać aż do bbb.presentation.uploaded = wysÅ‚any. bbb.presentation.document.supported = WysÅ‚any dokument jest obsÅ‚ugiwany, rozpoczynanie konwersji... bbb.presentation.document.converted = Poprawnie wykonano konwersjÄ™ dokumentu. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = BÅ‚Ä…d wejÅ›cia/wyjÅ›cia: Prosimy o kontakt z administratorem. bbb.presentation.error.security = BÅ‚Ä…d bezpieczeÅ„stwa: Prosimy o kontakt z administratorem. bbb.presentation.error.convert.notsupported = BÅ‚Ä…d: PrzesÅ‚any dokument nie jest obsÅ‚ugiwany, prosimy o przesÅ‚anie dokumentu kompatybilnego. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = WyÅ›lij bbb.fileupload.uploadBtn.toolTip = WyÅ›lij wybrany plik bbb.fileupload.deleteBtn.toolTip = UsuÅ„ prezentacjÄ™ bbb.fileupload.showBtn = Pokaż -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Pokaż prezentacjÄ™ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Generowanie miniatur... bbb.fileupload.progBarLbl = PostÄ™p: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Czat bbb.chat.quickLink.label = Okno Chatu bbb.chat.cmpColorPicker.toolTip = Kolor tekstu bbb.chat.input.accessibilityName = Pole Edycji WiadomoÅ›ci Chat bbb.chat.sendBtn.toolTip = WyÅ›lij wiadomość bbb.chat.sendBtn.accessibilityName = WyÅ›lij wiadomość czatu -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopiuj CaÅ‚y Tekst bbb.chat.publicChatUsername = Wszyscy bbb.chat.optionsTabName = Opcje @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = Wybierz użytkownika do prywatnego chatu. bbb.chat.chatOptions = Opcje czatu bbb.chat.fontSize = Rozmiar czcionki czatu bbb.chat.cmbFontSize.toolTip = Wybierz Rozmiar Czcionki dla WiadomoÅ›ci Chat -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = ZwiÅ„ okno czatu bbb.chat.maximizeRestoreBtn.accessibilityName = PowiÄ™ksz okno czatu bbb.chat.closeBtn.accessibilityName = Zamknij okno czatu bbb.chat.chatTabs.accessibleNotice = Nowa wiadomość w tej zakÅ‚adce. bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Wiadomość jest za dÅ‚uga o {0} znaków. bbb.publishVideo.changeCameraBtn.labelText = ZmieÅ„ kamerÄ™ bbb.publishVideo.changeCameraBtn.toolTip = Kliknij aby otworzyć okno zmiany kamery @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = RozpoczÄ™cie udostÄ™pniania bbb.publishVideo.startPublishBtn.toolTip = RozpoczÄ™cie udostÄ™pniania kamery bbb.publishVideo.startPublishBtn.errorName = Nie można udostÄ™pnić kamerki internetowej. Powód: {0} bbb.webcamPermissions.chrome.title = Pozwolenia Kamerki Internetowej Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Dokowanie wideo bbb.videodock.quickLink.label = Okno Kamerek Internetowych bbb.video.minimizeBtn.accessibilityName = ZwiÅ„ okno wideo @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = Zamknij okno dialogowe ustawieÅ„ kamery bbb.video.publish.closeBtn.label = Anuluj bbb.video.publish.titleBar = Okno publikacji kamery bbb.video.streamClose.toolTip = Zamknij strumieÅ„ dla: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = PrzestaÅ„ sÅ‚uchać konferencji bbb.toolbar.phone.toolTip.unmute = Zacznij sÅ‚uchać konferencji bbb.toolbar.phone.toolTip.nomic = Nie wykryto mikrofonu -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = UdostÄ™pnij Obraz Swojej Kamery Internetowej bbb.toolbar.video.toolTip.stop = WyÅ‚Ä…cz UdostÄ™pnianie Obrazu Swojej Kamery Internetowej +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Dodaj niestandardowy ukÅ‚ad do listy -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = ZmieÅ„ Swój UkÅ‚ad bbb.layout.loadButton.toolTip = Wczytaj ukÅ‚ady z pliku bbb.layout.saveButton.toolTip = Zapisz ukÅ‚ady do pliku @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Zastosuj ukÅ‚ad bbb.layout.combo.custom = * Niestandardowy ukÅ‚ad bbb.layout.combo.customName = Niestandardowy ukÅ‚ad bbb.layout.combo.remote = Zdalny -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = UkÅ‚ad zostaÅ‚ zapisany +bbb.layout.save.ioerror = bbb.layout.load.complete = UkÅ‚ad zostaÅ‚ wczytany bbb.layout.load.failed = Nie można zaÅ‚adować ukÅ‚adów -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Standardowy ukÅ‚ad -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Chat video bbb.layout.name.webcamsfocus = Kamerki internetowe bbb.layout.name.presentfocus = Prezentacja -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asystent bbb.layout.name.lecture = WykÅ‚ad -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Ołówek bbb.highlighter.toolbar.pencil.accessibilityName = ZamieÅ„ kursor na ołówek bbb.highlighter.toolbar.ellipse = OkrÄ…g @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Wybierz kolor bbb.highlighter.toolbar.color.accessibilityName = Wybierz kolor do rysowania bbb.highlighter.toolbar.thickness = ZmieÅ„ grubość bbb.highlighter.toolbar.thickness.accessibilityName = Zmiana gruboÅ›ci rysowania -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Wylogowany +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serwer aplikacji zostaÅ‚ wyÅ‚Ä…czony bbb.logout.asyncerror = WystÄ…piÅ‚ bÅ‚Ä…d Async @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = PoÅ‚Ä…czenie z serwerem zostaÅ‚o zakoÅ„czone bbb.logout.rejected = PoÅ‚Ä…czenie z serwerem zostaÅ‚o utracone bbb.logout.invalidapp = Aplikacja red5 nie istnieje bbb.logout.unknown = Twój klient straciÅ‚ poÅ‚Ä…czenie z serwerem -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = WylogowaÅ‚eÅ› siÄ™ z konferencji -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Moderator wyrzuciÅ‚ CiÄ™ ze spotkania. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = JeÅ›li to wylogowanie byÅ‚o niezamierzone, naciÅ›nij na przycisk poniżej by ponownie poÅ‚Ä…czyć. bbb.logout.refresh.label = PoÅ‚Ä…cz ponownie -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Potwierdź Wylogowanie SiÄ™ bbb.logout.confirm.message = Czy jesteÅ› pewien, że chcesz siÄ™ wylogować? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Tak bbb.logout.confirm.no = Nie -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Wykryto problemy z poÅ‚Ä…czeniem bbb.connection.reconnecting=Ponowne Å‚Ä…czenie bbb.connection.reestablished=Przywrócono poÅ‚Ä…czenie @@ -530,59 +539,60 @@ bbb.notes.title = Notatki bbb.notes.cmpColorPicker.toolTip = Kolor tekstu bbb.notes.saveBtn = Zapisz bbb.notes.saveBtn.toolTip = Zapisz notatkÄ™ -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Kliknij zezwalaj aby sprawdzić czy udostÄ™pnianie pulpitu dziaÅ‚a u Ciebie poprawnie bbb.settings.deskshare.start = Sprawdź udostÄ™pnianie pulpitu bbb.settings.voice.volume = Aktywność mikrofonu -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = BÅ‚Ä…d wersji Flash bbb.settings.flash.text = Posiadasz zainstalowany Flash w wersji {0}, ale nie masz najnowszej wersji {1} wymaganej do używania BigBlueButton. Kliknij aby zainstalować najnowszy Adobe Flash. bbb.settings.flash.command = Instaluj najnowszy Flash bbb.settings.isight.label = BÅ‚Ä…d kamery iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instaluj Flash 10.2 RC2 bbb.settings.warning.label = Ostrzeżenie bbb.settings.warning.close = Zamknij to ostrzeżenie bbb.settings.noissues = Nie wykryto żadnych problemów bbb.settings.instructions = Zaakceptuj zapytanie Flash. JeÅ›li siÄ™ widzisz i sÅ‚yszysz masz poprawne ustawienia, jeÅ›li coÅ› jest nie tak zobaczysz to poniżej. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = TrójkÄ…t ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = ZamieÅ„ kursor na trójkÄ…t ltbcustom.bbb.highlighter.toolbar.line = Linia @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ZamieÅ„ kursor na tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Kolor tekstu ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Wielkość czcionki -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Gotowe @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Idź do ostatniej wiadomoÅ›ci. bbb.accessibility.chat.chatBox.navigatedLatestRead = Idź do ostatniej przeczytanej wiadomoÅ›ci. bbb.accessibility.chat.chatwindow.input = Wpisz tekst bbb.accessibility.chat.chatwindow.audibleChatNotification = DźwiÄ™kowe powiadomienia chatu -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Użyj klawiszy strzaÅ‚ek aby poruszać siÄ™ po wiadomoÅ›ciach chat. bbb.accessibility.notes.notesview.input = Wpisz tekst bbb.shortcuthelp.title = Skróty klawiszowe -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = ZwiÅ„ okno sÅ‚ownika skrótów bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = PowiÄ™ksz okno sÅ‚ownika skrótów bbb.shortcuthelp.closeBtn.accessibilityName = Zamknij okno sÅ‚ownika skrótów -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Globalne skróty bbb.shortcuthelp.dropdown.presentation = Skróty prezentacji bbb.shortcuthelp.dropdown.chat = Skróty czatu bbb.shortcuthelp.dropdown.users = Skróty użytkownika -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Sktót bbb.shortcuthelp.headers.function = Funkcja @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = ZwiÅ„ aktualne okno bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = PowiÄ™ksz aktualne okno -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = A1 bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Wycisz i wÅ‚Ä…cz Twój mikrofon @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Aktywuj prezentacjÄ™ bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Aktywuj okno czatu -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Otwórz okno udostÄ™pniania pulpitu @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Wyloguj z meetingu bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = PodnieÅ› rÄ™kÄ™ -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Wczytaj prezentacjÄ™ bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Idź do poprzedniego slajdu @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Idź do nastÄ™pnego slajdu bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Dopasuj slajdy do szerokoÅ›ci -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Dopasuj slajdy do strony -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Zrób wybranÄ… osobÄ™ prezenterem -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Wyrzuć danÄ… osobÄ™ z meetingu +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Wycisz lub wÅ‚Ä…cz wybranÄ… osobÄ™ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Wycisz lub wÅ‚Ä…cz wszystkich użytkowników bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Wycisz wszystkich, ale nie prezentera -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Aktywuj zakÅ‚adkÄ™ czatu -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Pokaż wybór koloru czcionki. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Idź do najnowszej przeczytanej w bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Debugowanie -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Rozpocznij gÅ‚osowanie bbb.polling.startButton.label = Rozpocznij gÅ‚osowanie bbb.polling.publishButton.label = Publikuj bbb.polling.closeButton.label = Zamknij -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Wyniki gÅ‚osowania +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Wprowadź wybory gÅ‚osowania bbb.polling.respondersLabel.novotes = Oczekiwanie na odpowiedzi bbb.polling.respondersLabel.text = OdpowiedziaÅ‚o {0} użytkowników @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Zamknij Wszystkie Wideo bbb.users.settings.lockAll = Zablokuj Wszystkich Użytkowników bbb.users.settings.lockAllExcept = Zablokuj Użytkowników Oprócz Prezentera bbb.users.settings.lockSettings = Zablokuj Widzów -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Odblokuj Wszystkich Widzów bbb.users.settings.roomIsLocked = Zablokowany domyÅ›lnie bbb.users.settings.roomIsMuted = Wyciszony domyÅ›lnie @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Zastosuj ustawienia blokowania bbb.lockSettings.cancel = Anuluj bbb.lockSettings.cancel.toolTip = Zamknij okno bez zapisywania +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Blokowanie moderatora bbb.lockSettings.privateChat = Chat Prywatny bbb.lockSettings.publicChat = Chat Publiczny bbb.lockSettings.webcam = Kamerka Internetowa +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = UkÅ‚ad bbb.lockSettings.title=Zablokuj Widzów @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Cecha bbb.lockSettings.locked=Zablokowany bbb.lockSettings.lockOnJoin=Zablokuj podczas doÅ‚Ä…czania -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/pt_BR/bbbResources.properties b/bigbluebutton-client/locale/pt_BR/bbbResources.properties index 3c2a291e81282d74af03579741dfb1517a59ad47..12ae03e19e3d2201c3f413b2e15ff0b8ebe29fbe 100644 --- a/bigbluebutton-client/locale/pt_BR/bbbResources.properties +++ b/bigbluebutton-client/locale/pt_BR/bbbResources.properties @@ -1,6 +1,6 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Conectando ao servidor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = Carregando bbb.mainshell.statusProgress.cannotConnectServer = Desculpe, não foi possÃvel conectar ao servidor. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Abrir janela de log @@ -9,16 +9,16 @@ bbb.mainshell.invalidAuthToken = Token de autenticação inválido bbb.mainshell.resetLayoutBtn.toolTip = Restaurar layout bbb.mainshell.notification.tunnelling = Tunelando bbb.mainshell.notification.webrtc = Ãudio WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.fullscreenBtn.toolTip = Alternar para tela cheia +bbb.mainshell.quote.sentence.1 = Não há segredos para o sucesso. Ele é o resultado da preparação, do trabalho árduo e de aprender com as falhas. bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Diga-me e eu esquecerei. Ensina-me e eu lembrarei. Envolva-me e eu aprenderei. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = Eu aprendi o valor do trabalho duro trabalhando duro. bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = Desenvolva uma paixão pela aprendizagem. Se você fizer isso, você nunca deixará de crescer. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = Pesquisar é criar novo conhecimento. bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = Você deve ter uma versão antiga da tradução do BigBlueButton. bbb.oldlocalewindow.reminder2 = Por favor, apague os arquivos temporários do seu navegador e tente novamente. @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = Conectando bbb.micSettings.webrtc.transferring = Transferindo bbb.micSettings.webrtc.endingecho = Habilitando o áudio bbb.micSettings.webrtc.endedecho = Teste de eco encerrado. +bbb.micPermissions.message.browserhttp = Este servidor não está configurado com SSL. Portanto, {0} desativou o compartilhamento de seu microfone. bbb.micPermissions.firefox.title = Permissões de microfone do Firefox bbb.micPermissions.firefox.message = Clique em Permitir para dar ao Firefox permissão para utilizar seu microfone. bbb.micPermissions.chrome.title = Permissões de microfone do Chrome @@ -116,9 +117,9 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Esta sessão não pode ser gravad bbb.mainToolbar.recordBtn.confirm.title = Confirmar gravação bbb.mainToolbar.recordBtn.confirm.message.start = Você tem certeza que deseja iniciar a gravação? bbb.mainToolbar.recordBtn.confirm.message.stop = Você tem certeza que deseja parar a gravação? -bbb.mainToolbar.recordBtn..notification.title = Notificação de gravação -bbb.mainToolbar.recordBtn..notification.message1 = Você pode gravar esta sessão. -bbb.mainToolbar.recordBtn..notification.message2 = Você precisa clicar no botão de Iniciar/Encerrar gravação na barra superior para começar/terminar a gravação. +bbb.mainToolbar.recordBtn.notification.title = Notificação de gravação +bbb.mainToolbar.recordBtn.notification.message1 = Você pode gravar esta sessão. +bbb.mainToolbar.recordBtn.notification.message2 = Você precisa clicar no botão de Iniciar/Encerrar gravação na barra superior para começar/terminar a gravação. bbb.mainToolbar.recordingLabel.recording = (Gravando) bbb.mainToolbar.recordingLabel.notRecording = Não gravando bbb.waitWindow.waitMessage.message = Você é um convidado. Por favor, aguarde aprovação do moderador. @@ -129,10 +130,10 @@ bbb.guests.message.plural = {0} usuários desejam entrar nesta reunião bbb.guests.allowBtn.toolTip = Permitir bbb.guests.allowEveryoneBtn.text = Permitir todos bbb.guests.denyBtn.toolTip = Rejeitar -bbb.guests.denyEveryoneBtn.text = Deny everyone +bbb.guests.denyEveryoneBtn.text = Negar todos bbb.guests.rememberAction.text = Lembrar escolha bbb.guests.alwaysAccept = Sempre aceitar -bbb.guests.alwaysDeny = Always deny +bbb.guests.alwaysDeny = Sempre negar bbb.guests.askModerator = Pergunte ao moderador bbb.guests.Management = Gerenciamento de convidados bbb.clientstatus.title = Configuração de Notificações @@ -245,7 +246,8 @@ bbb.presentation.quickLink.label = Janela de apresentação bbb.presentation.fitToWidth.toolTip = Ajustar apresentação à largura bbb.presentation.fitToPage.toolTip = Ajustar apresentação à página bbb.presentation.uploadPresBtn.toolTip = Carregar apresentação -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = Fazer download das apresentações +bbb.presentation.poll.response = Responder à enquete bbb.presentation.backBtn.toolTip = Slide anterior bbb.presentation.btnSlideNum.accessibilityName = Slide {0} de {1} bbb.presentation.btnSlideNum.toolTip = Selecionar um slide @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Envio finalizado. Por favor, aguarde enquanto bbb.presentation.uploaded = carregado. bbb.presentation.document.supported = O documento carregado é suportado. Iniciando a conversão... bbb.presentation.document.converted = O documento foi convertido com sucesso. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Tente converter o documento para PDF e fazer o upload novamente. bbb.presentation.error.document.convert.invalid = Por favor, converta esse documento para PDF. bbb.presentation.error.io = Erro de entrada e saÃda: Por favor, contate o administrador. bbb.presentation.error.security = Erro de segurança: Por favor, contate o administrador. @@ -283,19 +285,19 @@ bbb.fileupload.uploadBtn = Carregar bbb.fileupload.uploadBtn.toolTip = Carregar o arquivo selecionado bbb.fileupload.deleteBtn.toolTip = Excluir apresentação bbb.fileupload.showBtn = Mostrar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Tente outro arquivo bbb.fileupload.showBtn.toolTip = Mostrar apresentação -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Fechar +bbb.fileupload.close.accessibilityName = Fechar janela de upload de arquivos bbb.fileupload.genThumbText = Gerando miniaturas dos slides... bbb.fileupload.progBarLbl = Progresso: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. +bbb.fileupload.fileFormatHint = Você pode enviar qualquer documento do Office ou PDF. Para obter o melhor resultado, recomendamos fazer o upload de um PDF. bbb.fileupload.letUserDownload = Liberar download da apresentação bbb.fileupload.letUserDownload.tooltip = Marque aqui se você deseja que outros usuários façam o download de sua apresentação -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: +bbb.filedownload.title = Fazer download das apresentações +bbb.filedownload.close.tooltip = Fechar +bbb.filedownload.close.accessibilityName = Fechar janela de download de arquivos +bbb.filedownload.fileLbl = Escolha o arquivo para download: bbb.filedownload.downloadBtn = Baixar bbb.filedownload.downloadBtn.toolTip = Baixar apresentação bbb.filedownload.thisFileIsDownloadable = Arquivo disponÃvel para download @@ -309,6 +311,7 @@ bbb.chat.saveBtn.toolTip = Salvar chat bbb.chat.saveBtn.accessibilityName = Salvar chat em arquivo de texto bbb.chat.saveBtn.label = Salvar bbb.chat.save.complete = Chat salvo com sucesso +bbb.chat.save.ioerror = Falha ao salvar o bate-papo. Tente novamente. bbb.chat.save.filename = chat-publico bbb.chat.copyBtn.toolTip = Copiar chat bbb.chat.copyBtn.accessibilityName = Copiar chat para a área de transferência @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Fechar caixa de diálogo de configuraç bbb.video.publish.closeBtn.label = Cancelar bbb.video.publish.titleBar = Janela de transmissão de vÃdeo bbb.video.streamClose.toolTip = Fechar transmissão para: {0} +bbb.video.message.browserhttp = Este servidor não está configurado com SSL. Portanto, {0} desativou o compartilhamento de sua webcam. bbb.screensharePublish.title = Compartilhamento de Tela: Visão do Apresentador bbb.screensharePublish.pause.tooltip = Pausar compartilhamento de tela bbb.screensharePublish.pause.label = Pausar @@ -446,6 +450,7 @@ bbb.toolbar.deskshare.toolTip.stop = Para o Compartilhamento de Tela bbb.toolbar.sharednotes.toolTip = Abrir notas compartilhadas bbb.toolbar.video.toolTip.start = Transmitir sua câmera bbb.toolbar.video.toolTip.stop = Interromper compartilhamento da sua câmera +bbb.layout.addButton.label = Adicionar bbb.layout.addButton.toolTip = Adicionar layout atual à lista bbb.layout.overwriteLayoutName.title = Sobrescrever layout bbb.layout.overwriteLayoutName.text = Este nome já está em uso. Deseja sobrescrevê-lo? @@ -459,7 +464,10 @@ bbb.layout.combo.custom = * Layout personalizado bbb.layout.combo.customName = Layout personalizado bbb.layout.combo.remote = Remoto bbb.layout.window.name = Nome do layout +bbb.layout.window.close.tooltip = Fechar +bbb.layout.window.close.accessibilityName = Fechar janela de adicionar novos layouts bbb.layout.save.complete = Layouts salvos com sucesso +bbb.layout.save.ioerror = Não foi possÃvel salvar os layouts. Tente novamente. bbb.layout.load.complete = Layouts carregados com sucesso bbb.layout.load.failed = Não foi possÃvel carregar os layouts bbb.layout.sync = Seu layout foi aplicado para todos os participantes @@ -468,7 +476,7 @@ bbb.layout.name.closedcaption = Legenda bbb.layout.name.videochat = VÃdeo Chamada bbb.layout.name.webcamsfocus = Reunião com câmeras bbb.layout.name.presentfocus = Reunião com apresentação -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Apresentação + Usuários bbb.layout.name.lectureassistant = Assistente de aula bbb.layout.name.lecture = Aula bbb.layout.name.sharednotes = Notas compartilhadas @@ -493,7 +501,6 @@ bbb.highlighter.toolbar.color.accessibilityName = Cor da anotação do quadro br bbb.highlighter.toolbar.thickness = Alterar espessura bbb.highlighter.toolbar.thickness.accessibilityName = Espessura da anotação do quadro branco bbb.highlighter.toolbar.multiuser = Interação multi-usuário -bbb.logout.title = Desconectado bbb.logout.button.label = OK bbb.logout.appshutdown = A aplicação no servidor foi interrompida bbb.logout.asyncerror = Um erro assÃncrono ocorreu @@ -505,9 +512,11 @@ bbb.logout.unknown = Seu cliente perdeu conexão com o servidor bbb.logout.guestkickedout = O moderador não permitiu que você entrasse na reunião bbb.logout.usercommand = Você saiu da conferência bbb.logour.breakoutRoomClose = A janela do navegador será fechada -bbb.logout.ejectedFromMeeting = Um moderador expulsou você da sala. +bbb.logout.ejectedFromMeeting = Você foi removido da reunião. bbb.logout.refresh.message = Se você foi desconectado de maneira inesperada, clique no botão baixo para reconectar. bbb.logout.refresh.label = Reconectar +bbb.logout.feedback.hint = Como podemos melhorar o BigBlueButton? +bbb.logout.feedback.label = AdorarÃamos saber sobre sua experiência com o BigBlueButton (opcional) bbb.settings.title = Configurações bbb.settings.ok = OK bbb.settings.cancel = Cancelar @@ -532,32 +541,33 @@ bbb.notes.saveBtn = Salvar bbb.notes.saveBtn.toolTip = Salvar nota bbb.sharedNotes.title = Notas compartilhadas bbb.sharedNotes.quickLink.label = Janela de notas compartilhadas -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window +bbb.sharedNotes.createNoteWindow.label = Nome da nota +bbb.sharedNotes.createNoteWindow.close.tooltip = Fechar +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Fechar janela de criar novas notas compartilhadas bbb.sharedNotes.typing.single = {0} está digitando... bbb.sharedNotes.typing.double = {0} e {1} estão digitando... bbb.sharedNotes.typing.multiple = Diversas pessoas digitando... bbb.sharedNotes.save.toolTip = Salvar notas em um arquivo bbb.sharedNotes.save.complete = Notas salvas com sucesso +bbb.sharedNotes.save.ioerror = Não foi possÃvel salvar as notas. Tente novamente. bbb.sharedNotes.save.htmlLabel = Texto formatado (.html) bbb.sharedNotes.save.txtLabel = Texto plano (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note +bbb.sharedNotes.new.label = Criar +bbb.sharedNotes.new.toolTip = Criar nota adicional +bbb.sharedNotes.limit.label = Limite das notas atingido +bbb.sharedNotes.clear.label = Limpar essa nota compartilhada bbb.sharedNotes.undo.toolTip = Desfazer modificação bbb.sharedNotes.redo.toolTip = Refazer modificação bbb.sharedNotes.toolbar.toolTip = Barra de ferramentas de formatação de texto -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? +bbb.sharedNotes.settings.toolTip = Configurações de notas compartilhadas +bbb.sharedNotes.clearWarning.title = Limpar notas compartidas +bbb.sharedNotes.clearWarning.message = Esta ação irá limpar as notas nesta janela para todos, e não há como desfazer. Tem certeza de que deseja limpar essas notas? bbb.sharedNotes.additionalNotes.closeWarning.title = Fechando notas compartilhadas bbb.sharedNotes.additionalNotes.closeWarning.message = Esta ação apagará as notas nesta janela para todos, e não é possÃvel desfazer esta ação. Tem certeza que deseja fechar estas notas? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.messageLengthWarning.title = Limite de mudança de caractere excedido +bbb.sharedNotes.messageLengthWarning.text = Sua alteração excede o limite por {0}. Tente fazer uma mudança menor. +bbb.sharedNotes.remaining.tooltip = Espaço restante disponÃvel para notas compartilhadas +bbb.sharedNotes.full.tooltip = Capacidade alcançada (tente excluir algum texto) bbb.settings.deskshare.instructions = Clique em Permitir na janela que será aberta para verificar se o compartilhamento de tela está funcionando corretamente bbb.settings.deskshare.start = Verificar compartilhamento de tela bbb.settings.voice.volume = Atividade do microfone @@ -576,9 +586,9 @@ bbb.settings.noissues = Nenhum problema foi detectado. bbb.settings.instructions = Aceite a notificação do Flash quando ele requisitar permissão para acessar sua câmera. Se você consegue ver e ouvir a si mesmo, seu navegador foi configurado corretamente. Outros erros em potencial estão indicados abaixo. Verifique cada um para encontrar uma possÃvel solução. bbb.bwmonitor.title = Status da rede bbb.bwmonitor.upload = Enviar -bbb.bwmonitor.upload.short = Up +bbb.bwmonitor.upload.short = Enviar bbb.bwmonitor.download = Baixar -bbb.bwmonitor.download.short = Down +bbb.bwmonitor.download.short = Baixar bbb.bwmonitor.total = Total bbb.bwmonitor.current = Atual bbb.bwmonitor.available = DisponÃvel @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Ajustar slides à página bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Tornar a pessoa selecionada o apresentador bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Expulsar a pessoa selecionada da sessão +bbb.shortcutkey.users.kick.function = Expulsar a pessoa selecionada da reunião bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Silenciar ou acionar microfone da pessoa selecionada bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Publicar bbb.polling.closeButton.label = Cancelar bbb.polling.customPollOption.label = Enquete personalizada... bbb.polling.pollModal.title = Resultados da enquete em tempo real +bbb.polling.pollModal.hint = Deixe esta janela aberta para permitir que os alunos respondam à enquete. Clicar no botão Publicar ou Fechar finalizará a enquete. bbb.polling.customChoices.title = Entre com as opções da enquete bbb.polling.respondersLabel.novotes = Aguardando respostas bbb.polling.respondersLabel.text = {0} usuários responderam @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Aplicar configurações de restrição bbb.lockSettings.cancel = Cancelar bbb.lockSettings.cancel.toolTip = Fecha esta janela sem aplicar +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Bloqueio de moderador bbb.lockSettings.privateChat = Chat privado bbb.lockSettings.publicChat = Chat público bbb.lockSettings.webcam = Câmera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microfone bbb.lockSettings.layout = Layout bbb.lockSettings.title=Restringir participantes @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Restringir ao entrar bbb.users.breakout.breakoutRooms = Salas de Apoio bbb.users.breakout.updateBreakoutRooms = Atualizar salas de apoio +bbb.users.breakout.timerForRoom.toolTip = Tempo restante para essa sala de apoio bbb.users.breakout.timer.toolTip = Tempo restante para as salas de apoio bbb.users.breakout.calculatingRemainingTime = Calculando tempo restante... bbb.users.breakout.closing = Fechando +bbb.users.breakout.closewarning.text = As salas de apoio serão fechadas em um minuto. bbb.users.breakout.rooms = Salas bbb.users.breakout.roomsCombo.accessibilityName = Número de sala para criar bbb.users.breakout.room = Sala -bbb.users.breakout.randomAssign = Atribuir Usuários Aleatoriamente bbb.users.breakout.timeLimit = Tempo Limite bbb.users.breakout.durationStepper.accessibilityName = Tempo limite em minutos bbb.users.breakout.minutes = Minutos @@ -836,11 +850,11 @@ bbb.users.breakout.closeAllRooms = Fechar Todas as Salas de Apoio bbb.users.breakout.insufficientUsers = Usuários insuficientes. Você deve colocar pelo menos um usuário em uma sala de apoio. bbb.users.breakout.confirm = Entrar em uma sala de apoio bbb.users.breakout.invited = Você foi convidado a entrar em <b>Sala de Apoio</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. +bbb.users.breakout.accept = Ao aceitar, você deixará automaticamente a conferência de áudio e as videoconferências. bbb.users.breakout.joinSession = Entrar na reunião -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window +bbb.users.breakout.joinSession.accessibilityName = Entrar na sala de apoio +bbb.users.breakout.joinSession.close.tooltip = Fechar +bbb.users.breakout.joinSession.close.accessibilityName = Fechar a janela de juntar-se a sala de apoio bbb.users.breakout.youareinroom = Você está na Sala de Apoio {0} bbb.users.roomsGrid.room = Sala bbb.users.roomsGrid.users = Usuários @@ -850,54 +864,8 @@ bbb.users.roomsGrid.join = Entrar bbb.users.roomsGrid.noUsers = Nenhum usuário nesta sala bbb.langSelector.default=Idioma padrão -bbb.langSelector.ar=Ãrabe -bbb.langSelector.az_AZ=Azeri -bbb.langSelector.eu_EU=Basco -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Búlgaro -bbb.langSelector.ca_ES=Catalão -bbb.langSelector.zh_CN=Chinês (simplificado) -bbb.langSelector.zh_TW=Chinês (tradicional) -bbb.langSelector.hr_HR=Croata -bbb.langSelector.cs_CZ=Tcheco -bbb.langSelector.da_DK=Dinamarquês -bbb.langSelector.nl_NL=Holandês -bbb.langSelector.en_US=Inglês -bbb.langSelector.et_EE=Estoniano -bbb.langSelector.fa_IR=Persa -bbb.langSelector.fi_FI=Finlandês -bbb.langSelector.fr_FR=Francês -bbb.langSelector.fr_CA=Francês (Canadense) -bbb.langSelector.ff_SN=Fula -bbb.langSelector.de_DE=Alemão -bbb.langSelector.el_GR=Grego -bbb.langSelector.he_IL=Hebraico -bbb.langSelector.hu_HU=Húngaro -bbb.langSelector.id_ID=Indonésio -bbb.langSelector.it_IT=Italiano -bbb.langSelector.ja_JP=Japonês -bbb.langSelector.ko_KR=Coreano -bbb.langSelector.lv_LV=Letão -bbb.langSelector.lt_LT=Lituânia -bbb.langSelector.mn_MN=Mongol -bbb.langSelector.ne_NE=Nepalês -bbb.langSelector.no_NO=Norueguês -bbb.langSelector.pl_PL=Polonês -bbb.langSelector.pt_BR=Português (Brasileiro) -bbb.langSelector.pt_PT=Português -bbb.langSelector.ro_RO=Romêno -bbb.langSelector.ru_RU=Russo -bbb.langSelector.sr_SR=Sérvio (cirÃlico) -bbb.langSelector.sr_RS=Sérvio (latino) -bbb.langSelector.si_LK=Cingalês -bbb.langSelector.sk_SK=Eslovaco -bbb.langSelector.sl_SL=Esloveno -bbb.langSelector.es_ES=Espanhol -bbb.langSelector.es_LA=Espanhol (latino-americano) -bbb.langSelector.sv_SE=Sueco -bbb.langSelector.th_TH=Tailandês -bbb.langSelector.tr_TR=Turco -bbb.langSelector.uk_UA=Ucraniano -bbb.langSelector.vi_VN=Vietnamita -bbb.langSelector.cy_GB=Galês -bbb.langSelector.oc=Occitano + +bbb.alert.cancel = Cancelar +bbb.alert.ok = OK +bbb.alert.no = Não +bbb.alert.yes = Sim diff --git a/bigbluebutton-client/locale/pt_PT/bbbResources.properties b/bigbluebutton-client/locale/pt_PT/bbbResources.properties index 294d87a3a7a889bb55341c0b9d0184083cf999dc..160d9c09b26f442f0b6f1031410ed1627806ac24 100644 --- a/bigbluebutton-client/locale/pt_PT/bbbResources.properties +++ b/bigbluebutton-client/locale/pt_PT/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Ligando ao Servidor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Desculpe, não foi possÃÂvel estabelecer ligação ao servidor. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Abrir janela de registo -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Restaurar layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = bbb.micSettings.title = Teste audio bbb.micSettings.speakers.header = Testar microfone bbb.micSettings.microphone.header = Testar microphone bbb.micSettings.playSound = Testar microfone bbb.micSettings.playSound.toolTip = Tocar música para testar o seu microfone -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Testar ou alterar o microfone bbb.micSettings.changeMic.toolTip = Abrir a janela de definições do microfone - Flash Player -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Adicione audio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = Cancelar -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = Cancelar adesão à conferência áudio. -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Ajuda bbb.mainToolbar.logoutBtn = Sair bbb.mainToolbar.logoutBtn.toolTip = Sair da sessão -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Selecione idioma bbb.mainToolbar.settingsBtn = Configurações bbb.mainToolbar.settingsBtn.toolTip = Abrir configurações bbb.mainToolbar.shortcutBtn = Atalhos bbb.mainToolbar.shortcutBtn.toolTip = Abrir janela de atalhos -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = bbb.clientstatus.browser.title = Versão do browser -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimizar bbb.window.maximizeRestoreBtn.toolTip = Máximizar bbb.window.closeBtn.toolTip = Fechar @@ -171,16 +172,16 @@ bbb.users.settings.webcamSettings = Definições da webcam bbb.users.settings.muteAll = Silenciar todos os participantes bbb.users.settings.muteAllExcept = Silenciar todos os participantes exceto o apresentador bbb.users.settings.unmuteAll = Todos os participantes com som -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = Falar bbb.users.pushToMute.toolTip = Desligar microfone bbb.users.muteMeBtnTxt.talk = Com som bbb.users.muteMeBtnTxt.mute = Sem som bbb.users.muteMeBtnTxt.muted = Sem som -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Lista de participantes. Use as setas para navegar. bbb.users.usersGrid.nameItemRenderer = Nome bbb.users.usersGrid.nameItemRenderer.youIdentifier = Tu @@ -188,64 +189,65 @@ bbb.users.usersGrid.statusItemRenderer = Estado bbb.users.usersGrid.statusItemRenderer.changePresenter = Clique para conceder a apresentação bbb.users.usersGrid.statusItemRenderer.presenter = Apresentador bbb.users.usersGrid.statusItemRenderer.moderator = Espetador -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Vista -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = bbb.users.usersGrid.mediaItemRenderer.talking = A falar bbb.users.usersGrid.mediaItemRenderer.webcam = A partilhar a webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Ligar som a {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Silenciar {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Bloquear {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Desbloquear {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Expulsar {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = A partilhar a webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Microfone desligado bbb.users.usersGrid.mediaItemRenderer.micOn = Microfone ligado bbb.users.usersGrid.mediaItemRenderer.noAudio = Não está ligado à conferência de audio -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Apresentação bbb.presentation.titleWithPres = Apresentação\: {0} bbb.presentation.quickLink.label = Janela de apresentação bbb.presentation.fitToWidth.toolTip = Ajustar apresentação à largura bbb.presentation.fitToPage.toolTip = Ajustar apresentação à página bbb.presentation.uploadPresBtn.toolTip = Submeter apresentação -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Slide anterior. bbb.presentation.btnSlideNum.accessibilityName = Diapositivo {0} de {1} bbb.presentation.btnSlideNum.toolTip = Selecione um diapositivo @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Envio finalizado. Por favor, aguarde enquanto bbb.presentation.uploaded = Enviado. bbb.presentation.document.supported = O documento é suportado. A iniciar converção... bbb.presentation.document.converted = Documento convertido com sucesso. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Erro. Por favor, contacte o Administrador. bbb.presentation.error.security = Erro de segurança. Por favor, contacte o Administrador. bbb.presentation.error.convert.notsupported = Erro o formato do arquivo enviado não é suportado. Por favor, envie um arquivo compatÃvel. @@ -264,8 +266,8 @@ bbb.presentation.error.convert.nbpage = Erro a determinar o número de páginas bbb.presentation.error.convert.maxnbpagereach = Erro. O limite de páginas do ficheiro excedeu. Por favor, envie um arquivo com menos páginas/slides. bbb.presentation.converted = Convertendo {0} de {1} slides. bbb.presentation.slider = NÃvel de zoom da apresentação -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Arquivo de apresentação bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD @@ -283,72 +285,73 @@ bbb.fileupload.uploadBtn = Enviar bbb.fileupload.uploadBtn.toolTip = Enviar arquivo bbb.fileupload.deleteBtn.toolTip = Eliminar apresentação bbb.fileupload.showBtn = Mostrar -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Mostrar apresentação -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Gerando miniaturas dos slides... bbb.fileupload.progBarLbl = Progresso: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = Cor do texto bbb.chat.input.accessibilityName = Campo de edição da mensagem de chat bbb.chat.sendBtn.toolTip = Enviar menssagem bbb.chat.sendBtn.accessibilityName = Enviar mensagem de chat -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Todos bbb.chat.optionsTabName = Opções bbb.chat.privateChatSelect = Seleccione uma pessoa para conversar em privado bbb.chat.private.userLeft = O participante deixou a sessão -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = bbb.chat.usersList.toolTip = Clique no participante para conversar em privado -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Opções de conversação bbb.chat.fontSize = Tamanho da fonte bbb.chat.cmbFontSize.toolTip = Selecione o tamanho da fonte das menssagens de chat -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimizar a janela de chat bbb.chat.maximizeRestoreBtn.accessibilityName = Minimizar a janela de chat bbb.chat.closeBtn.accessibilityName = Fechar a janela de chat bbb.chat.chatTabs.accessibleNotice = Novas mensagens neste separador. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Alterar a webcam bbb.publishVideo.changeCameraBtn.toolTip = Abrir a janela de definições da webcam bbb.publishVideo.cmbResolution.tooltip = Selecione a resolução da webcam bbb.publishVideo.startPublishBtn.labelText = Iniciar partilha bbb.publishVideo.startPublishBtn.toolTip = Iniciar transmissão -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = bbb.video.minimizeBtn.accessibilityName = Minimizar a janela das webcams bbb.video.maximizeRestoreBtn.accessibilityName = Maximizar a janela das webcams bbb.video.controls.muteButton.toolTip = Silenciar ou permitir som a {0} @@ -361,95 +364,97 @@ bbb.video.publish.hint.waitingApproval = À espera de obter aprovação bbb.video.publish.hint.videoPreview = Pré-visualização da webcam bbb.video.publish.hint.openingCamera = A ligar à webcam... bbb.video.publish.hint.cameraDenied = Acesso negado à webcam -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = A publicar... bbb.video.publish.closeBtn.accessName = Fechar janela de definições da webcam bbb.video.publish.closeBtn.label = Cancelar bbb.video.publish.titleBar = Publicar a janela da webcam -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Partilhar webcam bbb.toolbar.video.toolTip.stop = Parar partilha da webcam +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Adicionar o layout personalizado à lista -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Alterar layout bbb.layout.loadButton.toolTip = Carregar layouts a partir de um ficheiro bbb.layout.saveButton.toolTip = Gravar layouts para um ficheiro @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplicar um layout bbb.layout.combo.custom = * Layout personalizado bbb.layout.combo.customName = Layout personalizado bbb.layout.combo.remote = Remoto -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Os layouts foram gravados com sucesso +bbb.layout.save.ioerror = bbb.layout.load.complete = Os layouts foram carregados com sucesso -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Sublinhar bbb.highlighter.toolbar.pencil.accessibilityName = Alterar o cursor do whiteboard para lápis bbb.highlighter.toolbar.ellipse = Circulo @@ -489,100 +497,102 @@ bbb.highlighter.toolbar.clear.accessibilityName = Limpar a página do whiteboard bbb.highlighter.toolbar.undo = Anular anotação bbb.highlighter.toolbar.undo.accessibilityName = Anular a última forma do whiteboard bbb.highlighter.toolbar.color = Selecionar cor -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = Mudar espessura bbb.highlighter.toolbar.thickness.accessibilityName = Espessura do desenho -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = O servidor aplicacional foi desligado bbb.logout.asyncerror = Ocorreu um erro assÃncrono bbb.logout.connectionclosed = A ligação ao servidor for fechada -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = A ligação ao servidor for rejeitada bbb.logout.invalidapp = aplicação red5 não existe bbb.logout.unknown = Foi perdida a ligação ao servidor -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Saiu da conferencia -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Notas bbb.notes.cmpColorPicker.toolTip = Cor do texto bbb.notes.saveBtn = Gravar bbb.notes.saveBtn.toolTip = Gravar nota -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = bbb.settings.deskshare.start = Verificar Partilha de Ambiente de Trabalho bbb.settings.voice.volume = Actividade de Microfone -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Erro na Versão do flash bbb.settings.flash.text = Este PC tem instalada a versão {0} do Flash. No entanto, esta aplicação requer pelo menos a versão {1}. O botão abaixo irá instalar a versão mais recente do Adobe Flash. bbb.settings.flash.command = Instale uma versão mais recente do flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.label = +bbb.settings.isight.text = bbb.settings.isight.command = Instale o Flash 10.2 RC2 bbb.settings.warning.label = Aviso bbb.settings.warning.close = Fechar este aviso -bbb.settings.noissues = No outstanding issues have been detected. +bbb.settings.noissues = bbb.settings.instructions = Aceite a janela de Flash que lhe pede permissões para aceder à webcam. Se o resultado coincidir com o esperado, o browser será configurado corretamente. Outros potenciais problemas são descritos abaixo. Examine-os para encontrar uma possÃvel solução. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triângulo ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Alterar o cursor do whiteboard para triângulo ltbcustom.bbb.highlighter.toolbar.line = Linha @@ -591,193 +601,194 @@ ltbcustom.bbb.highlighter.toolbar.text = Texto ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Alterar o cursor do whiteboard para texto ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Cor de texto ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Tamanho do texto -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Chegou à primeira mensagem. bbb.accessibility.chat.chatBox.reachedLatest = Chegou à ultima mensagem. bbb.accessibility.chat.chatBox.navigatedFirst = Navegou para a primeira mensagem. bbb.accessibility.chat.chatBox.navigatedLatest = Navegou para a ultima mensagem. bbb.accessibility.chat.chatBox.navigatedLatestRead = Navegou para a mensagem lida mais recentemente. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Por favor, use as setas direcionais para navegar nas mensagens de chat. -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = bbb.shortcuthelp.title = Atalhos -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimizar a janela de ajuda dos atalhos bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximizar a janela de ajuda dos atalhos bbb.shortcuthelp.closeBtn.accessibilityName = Fechar a janela de ajuda dos atalhos -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Atalhos globais bbb.shortcuthelp.dropdown.presentation = Atalhos da apresentação bbb.shortcuthelp.dropdown.chat = Atalhos do chat bbb.shortcuthelp.dropdown.users = Atalhos da janela de participantes -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Atalho bbb.shortcuthelp.headers.function = Função -bbb.shortcutkey.general.minimize = 189 +bbb.shortcutkey.general.minimize = bbb.shortcutkey.general.minimize.function = Minimizar a janela atual -bbb.shortcutkey.general.maximize = 187 +bbb.shortcutkey.general.maximize = bbb.shortcutkey.general.maximize.function = Maximizar a janela atual -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 +bbb.shortcutkey.share.desktop = bbb.shortcutkey.share.desktop.function = Abrir janela de partilha do ambiente de trabalho -bbb.shortcutkey.share.webcam = 66 +bbb.shortcutkey.share.webcam = bbb.shortcutkey.share.webcam.function = Abrir a janela de partilha da webcam -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = bbb.shortcutkey.logout.function = Sair desta sessão -bbb.shortcutkey.raiseHand = 82 +bbb.shortcutkey.raiseHand = bbb.shortcutkey.raiseHand.function = Pedir autorização para falar -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Submeter apresentação -bbb.shortcutkey.present.previous = 65 +bbb.shortcutkey.present.previous = bbb.shortcutkey.present.previous.function = Ir para diapositivo anterior -bbb.shortcutkey.present.select = 83 +bbb.shortcutkey.present.select = bbb.shortcutkey.present.select.function = Ver todos os diapositivos -bbb.shortcutkey.present.next = 69 +bbb.shortcutkey.present.next = bbb.shortcutkey.present.next.function = Ir para próximo diapositivo -bbb.shortcutkey.present.fitWidth = 70 +bbb.shortcutkey.present.fitWidth = bbb.shortcutkey.present.fitWidth.function = Ajustar diapositivo à largura -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Ajustar diapositivos à página -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Conceder o controlo de apresentador ao participante selecionado -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Expulsar o participante selecionado da sessão -bbb.shortcutkey.users.mute = 83 +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = bbb.shortcutkey.users.mute.function = Silenciar ou permitir falar o participante selecionado -bbb.shortcutkey.users.muteall = 65 +bbb.shortcutkey.users.muteall = bbb.shortcutkey.users.muteall.function = Silenciar ou permitir falar a todos os participantes -bbb.shortcutkey.users.muteAllButPres = 65 +bbb.shortcutkey.users.muteAllButPres = bbb.shortcutkey.users.muteAllButPres.function = Silenciar todos os participantes exceto o apresentador -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 +bbb.shortcutkey.chat.focusTabs = bbb.shortcutkey.chat.focusTabs.function = Ativar separadores do chat -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = Enviar mensagem de chat -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = bbb.shortcutkey.chat.explanation.function = Para navegar nas mensagens, clique na caixa do chat. -bbb.shortcutkey.chat.chatbox.advance = 40 +bbb.shortcutkey.chat.chatbox.advance = bbb.shortcutkey.chat.chatbox.advance.function = Navegar para a mensagem seguinte -bbb.shortcutkey.chat.chatbox.goback = 38 +bbb.shortcutkey.chat.chatbox.goback = bbb.shortcutkey.chat.chatbox.goback.function = Navegar para a mensagem anterior -bbb.shortcutkey.chat.chatbox.repeat = 32 +bbb.shortcutkey.chat.chatbox.repeat = bbb.shortcutkey.chat.chatbox.repeat.function = Repetir a mensagem atual -bbb.shortcutkey.chat.chatbox.golatest = 39 +bbb.shortcutkey.chat.chatbox.golatest = bbb.shortcutkey.chat.chatbox.golatest.function = Navegar para a mensagem mais recente -bbb.shortcutkey.chat.chatbox.gofirst = 37 +bbb.shortcutkey.chat.chatbox.gofirst = bbb.shortcutkey.chat.chatbox.gofirst.function = Navegar para a primeira mensagem -bbb.shortcutkey.chat.chatbox.goread = 75 +bbb.shortcutkey.chat.chatbox.goread = bbb.shortcutkey.chat.chatbox.goread.function = Navegar para a mensagem lida mais recentemente -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Fechar -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Iniciar partilha bbb.publishVideo.changeCameraBtn.labelText = Alterar a webcam -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = bbb.shortcutkey.specialKeys.space = Espaço bbb.shortcutkey.specialKeys.left = Seta esquerda @@ -787,117 +798,74 @@ bbb.shortcutkey.specialKeys.down = Seta baixo bbb.shortcutkey.specialKeys.plus = Mais bbb.shortcutkey.specialKeys.minus = Menos -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = Cancelar -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ro_RO/bbbResources.properties b/bigbluebutton-client/locale/ro_RO/bbbResources.properties index 860042c5b65e76220ffc6d4475c5de1dd7a489d9..8cbc6d162d4fde2ee1069eec31859d39c8844fd1 100644 --- a/bigbluebutton-client/locale/ro_RO/bbbResources.properties +++ b/bigbluebutton-client/locale/ro_RO/bbbResources.properties @@ -1,25 +1,25 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Se conectează la server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Nu s-a putut realiza conexiunea cu serverul. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = AfiÅŸaÅ£i Jurnalul bbb.mainshell.meetingNotFound = ConferinÈ›a nu există bbb.mainshell.invalidAuthToken = Autentificare invalidă bbb.mainshell.resetLayoutBtn.toolTip = ReiniÅ£ializare Pagină bbb.mainshell.notification.tunnelling = Tunelare request bbb.mainshell.notification.webrtc = Audio WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = S-ar putea să aveÅ£i traduceri vechi bbb.oldlocalewindow.reminder2 = CurăţaÅ£i cache-ul browser-ului ÅŸi încercaÅ£i din nou. bbb.oldlocalewindow.windowTitle = Avertisment\: Traduceri vechi @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Conectare bbb.micSettings.webrtc.transferring = Transfer bbb.micSettings.webrtc.endingecho = Conectare audio bbb.micSettings.webrtc.endedecho = Test audio incheiat +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Permisiuni microfon Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Permisiuni microfon Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Notificare audio bbb.micWarning.joinBtn.label = Conectare oricum bbb.micWarning.testAgain.label = Testează din nou @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Testul WebRTC a eÅŸuat neaÅŸte bbb.webrtcWarning.connection.dropped = Conexiunea WebRTC a fost închisă bbb.webrtcWarning.connection.reconnecting = Se încearcă reconectarea bbb.webrtcWarning.connection.reestablished = Counexiunea WebRTC refacută -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Ajutor bbb.mainToolbar.logoutBtn = IeÅŸire bbb.mainToolbar.logoutBtn.toolTip = IeÈ™ire -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Alege limba bbb.mainToolbar.settingsBtn = Configurări bbb.mainToolbar.settingsBtn.toolTip = Deschide Configurările @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Start înregistrare bbb.mainToolbar.recordBtn.toolTip.stop = Stop înregistrare bbb.mainToolbar.recordBtn.toolTip.recording = Sesiunea se înregistrează bbb.mainToolbar.recordBtn.toolTip.notRecording = Sesiunea nu se înregistrează -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Confirmă înregistrarea conferinÅ£ei bbb.mainToolbar.recordBtn.confirm.message.start = EÅŸti sigur că doreÅŸti înregistrarea conferinÅ£ei? bbb.mainToolbar.recordBtn.confirm.message.stop = EÅŸti sigur că doreÅŸti oprirea înregistrării conferinÅ£ei? -bbb.mainToolbar.recordBtn..notification.title = Notificare înregistrare -bbb.mainToolbar.recordBtn..notification.message1 = PoÅ£i înregistra conferinÅ£a. -bbb.mainToolbar.recordBtn..notification.message2 = PoÅ£i utilza butoanele start/stop pentru a porni/opri înregistrarea conferinÅ£ei. +bbb.mainToolbar.recordBtn.notification.title = Notificare înregistrare +bbb.mainToolbar.recordBtn.notification.message1 = PoÅ£i înregistra conferinÅ£a. +bbb.mainToolbar.recordBtn.notification.message2 = PoÅ£i utilza butoanele start/stop pentru a porni/opri înregistrarea conferinÅ£ei. bbb.mainToolbar.recordingLabel.recording = (Se înregistrează) bbb.mainToolbar.recordingLabel.notRecording = Nu se înregistrează -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Configurare notificări bbb.clientstatus.notification = Notificări necitite bbb.clientstatus.close = ÃŽnchide @@ -150,10 +151,10 @@ bbb.clientstatus.webrtc.almostStrongStatus = Conexiunea WebRTC este în regulă bbb.clientstatus.webrtc.almostWeakStatus = Conexiunea WebRTC este slabă bbb.clientstatus.webrtc.weakStatus = Conexiunea WebRTC este slabă bbb.clientstatus.webrtc.message = FoloseÅŸte Firefox sau Chrome pentru o conexiune audio mai bună. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimizează bbb.window.maximizeRestoreBtn.toolTip = Maximizează bbb.window.closeBtn.toolTip = Inchidere @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Click pentru a desemna prezentator bbb.users.usersGrid.statusItemRenderer.presenter = Prezentator bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = ÃŽnlătură statusul bbb.users.usersGrid.statusItemRenderer.viewer = Spectator bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Webcam activ. @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Activează {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = OpreÅŸte {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Blochează {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Deblochează {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Elimina participantul {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Webcam activ bbb.users.usersGrid.mediaItemRenderer.micOff = Microfon oprit bbb.users.usersGrid.mediaItemRenderer.micOn = Microfon pornit bbb.users.usersGrid.mediaItemRenderer.noAudio = Audio inactiv în conferinţă -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentare bbb.presentation.titleWithPres = Prezentarea: {0} bbb.presentation.quickLink.label = Fereastra prezentare bbb.presentation.fitToWidth.toolTip = Adaptează prezentarea la laÅ£imea ferestrei bbb.presentation.fitToPage.toolTip = Adaptează prezentarea la pagina bbb.presentation.uploadPresBtn.toolTip = Adaugă prezentare -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Slide-ul anterior. bbb.presentation.btnSlideNum.accessibilityName = Slide-ul {0} din {1} bbb.presentation.btnSlideNum.toolTip = Selectează un slide @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = ÃŽncărcare completă. AÅŸteptaÅ£i până se f bbb.presentation.uploaded = încărcat. bbb.presentation.document.supported = Documentul încărcat este acceptat. bbb.presentation.document.converted = Conversia documentului a reuÅŸit. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = Documentul trebuie să fie în format PDF. bbb.presentation.error.io = Eroare IO: trebuie să contactaÅ£i un administrator. bbb.presentation.error.security = Eroare de securitate: trebuie să contactaÅ£i un administrator. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = ÃŽncărcaÅ£i bbb.fileupload.uploadBtn.toolTip = ÃŽncărcaÅ£i fiÅŸierul bbb.fileupload.deleteBtn.toolTip = ÅžtergeÅ£i prezentarea bbb.fileupload.showBtn = Vizualizare -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = VizualizaÅ£i prezentarea -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Se generează miniaturile... bbb.fileupload.progBarLbl = Progres: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chat bbb.chat.quickLink.label = Fereastră chat bbb.chat.cmpColorPicker.toolTip = Culoarea textului bbb.chat.input.accessibilityName = Scrie textul în chat bbb.chat.sendBtn.toolTip = TrimiteÅ£i mesajul bbb.chat.sendBtn.accessibilityName = TrimiteÅ£i mesajul -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Copiază tot textul bbb.chat.publicChatUsername = ToÅ£i bbb.chat.optionsTabName = OpÅ£iuni @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = ÃŽncepe partajarea bbb.publishVideo.startPublishBtn.toolTip = PorniÅ£i fluxul video bbb.publishVideo.startPublishBtn.errorName = Nu se poate partaja webcam-ul. Motiv: {0} bbb.webcamPermissions.chrome.title = Permisiuni Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Caemere web bbb.videodock.quickLink.label = Fereastră camere web bbb.video.minimizeBtn.accessibilityName = Minimizează fereastra camerelor web @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Inchide fereastra bbb.video.publish.closeBtn.label = Anulare bbb.video.publish.titleBar = Partajează camera web bbb.video.streamClose.toolTip = ÃŽnchide fluxul pentru: {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = Partajare ecran: previzualizare prezentator bbb.screensharePublish.pause.tooltip = Suspendă partajarea ecranului bbb.screensharePublish.pause.label = Suspendă @@ -428,28 +432,29 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Nu se poate detecta p bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Pare că foloseÅŸti modul Incognito/Privat. Asigură-te ca plugin-ul funcÅ£ionează în acest mod. bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click aici pentru instalare bbb.screensharePublish.WebRTCUseJavaButton.label = Click aici pentru a folosi Java -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Partajare ecran bbb.screenshareView.fitToWindow = Adaptează la dimensiunea ferestrei bbb.screenshareView.actualSize = Adaptează la dimensiunea reală a fluxlui video bbb.screenshareView.minimizeBtn.accessibilityName = Minimizează fereastra de partajare a ecranului bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximizează fereastra de partajare a ecranului bbb.screenshareView.closeBtn.accessibilityName = ÃŽnchide fereastra de partajare a ecranului -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = OpreÅŸte fluxul audio al conferinÅ£ei bbb.toolbar.phone.toolTip.unmute = PorneÅŸte fluxul audio al conferinÅ£ei bbb.toolbar.phone.toolTip.nomic = Nu s-a detectat nici un microfon bbb.toolbar.deskshare.toolTip.start = Deschide fereastra de partajare a ecranului bbb.toolbar.deskshare.toolTip.stop = OpreÅŸte partajarea ecranului -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Partajează webcam-ul bbb.toolbar.video.toolTip.stop = OpreÅŸte partajarea webcam-ului +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Adaugă layout-ul personalizat listei tale -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Schimbă layout-ul bbb.layout.loadButton.toolTip = ÃŽncarcă un layout din fiÅŸier bbb.layout.saveButton.toolTip = Salvează layout-ul în fiÅŸier @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplică layout bbb.layout.combo.custom = * Layout personalizat bbb.layout.combo.customName = Layout personalizat bbb.layout.combo.remote = La distantă -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Layout-urile au fost salvate cu succes +bbb.layout.save.ioerror = bbb.layout.load.complete = Layout-urile au fost încărcate cu succes bbb.layout.load.failed = Layout-urile nu au fost încărcate cu succes -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Layout implicit bbb.layout.name.closedcaption = Subtitrare bbb.layout.name.videochat = Chat video bbb.layout.name.webcamsfocus = Conferinţă video bbb.layout.name.presentfocus = Conferinţă -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asistent lecÅ£ie bbb.layout.name.lecture = LecÅ£ie -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = EvidenÅ£iator bbb.highlighter.toolbar.pencil.accessibilityName = Schimbă cursorul ecranului în evidenÅ£iator bbb.highlighter.toolbar.ellipse = Cerc @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = SelectaÅ£i Culoarea bbb.highlighter.toolbar.color.accessibilityName = SelectaÅ£i Culoarea bbb.highlighter.toolbar.thickness = Schimbă grosimea bbb.highlighter.toolbar.thickness.accessibilityName = Schimbă grosimea -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logout +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = AplicaÈ›ia server a fost oprită bbb.logout.asyncerror = A apărut o eroare asincronă @@ -502,87 +509,90 @@ bbb.logout.connectionfailed = Conexiunea la server a fost închisă bbb.logout.rejected = Conexiunea la server a fost respinsă bbb.logout.invalidapp = Aplicatia red5 nu există bbb.logout.unknown = Clientul dumneavoastră a pierdut conexiunea cu serverul -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = AÅ£i ieÅŸit din conferinţă bbb.logour.breakoutRoomClose = Fereastra browser-ului va fi închisă -bbb.logout.ejectedFromMeeting = Moderatorul te-a eliminat din conferinţă +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Daca logout-ul nu era aÅŸteptat apasă Reconectare bbb.logout.refresh.label = Reconectare -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Confirmă ieÅŸirea din conferinţă bbb.logout.confirm.message = Sigur vrei sa ieÅŸi din conferinţă? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Da bbb.logout.confirm.no = Nu -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=S-au detectat probleme de conexiune bbb.connection.reconnecting=Reconectare bbb.connection.reestablished=Conexiune restabilită bbb.connection.bigbluebutton=ServerConferinţă -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Note bbb.notes.cmpColorPicker.toolTip = Culoare text bbb.notes.saveBtn = Salvează bbb.notes.saveBtn.toolTip = Salvează note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = ApăsaÈ›i "Allow" în fereastra de dialog ce va apărea pentru a verifica faptul că partajarea spaÈ›iului de lucru funcÈ›ionează corect pentru dvs. bbb.settings.deskshare.start = Verifică partajarea spaÅ£iului de lucru bbb.settings.voice.volume = Activitate Microfon -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Eroare la versiunea Flash bbb.settings.flash.text = AveÈ›i instalat Flash, versiunea {0}, dar vă trebuie cel puÈ›in versiunea {1} pentru a rula BigBlueButton in mod adecvat. ApăsaÈ›i pe butonul de mai jos pentru a instala ultima versiune a Adobe Flash. bbb.settings.flash.command = InstalaÈ›i ultima versiune de Flash bbb.settings.isight.label = Eroare a camerei iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instalează flash 10.2 RC2 bbb.settings.warning.label = Avertisment bbb.settings.warning.close = ÃŽnchide acest avertisment bbb.settings.noissues = N-au fost identificate probleme deosebite. bbb.settings.instructions = AcceptaÈ›i cererea de acces la camera video facută de Flash. Dacă vă puteÈ›i vedea È™i auzi, browserul dvs. a fost setat curect. Alte probleme probabile sunt afiÈ™ate dedesubt. FaceÈ›i click pe fiecare pentru a găsi o posibilă soluÈ›ie. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Triunghi ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Schimbă cursorul în triunghi ltbcustom.bbb.highlighter.toolbar.line = Linie @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Ai navigat către ultimul mesaj bbb.accessibility.chat.chatBox.navigatedLatestRead = Ai navigat către ultimul mesaj citit. bbb.accessibility.chat.chatwindow.input = Scrie bbb.accessibility.chat.chatwindow.audibleChatNotification = Notificare audio chat -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = FoloÅŸte săgeÅ£ile pentru a naviga prin mesaje. bbb.accessibility.notes.notesview.input = Scrie @@ -647,106 +657,106 @@ bbb.shortcuthelp.browserWarning.text = Lista completă de scurtături poate fi l bbb.shortcuthelp.headers.shortcut = Scurtătură bbb.shortcuthelp.headers.function = FuncÅ£ie -bbb.shortcutkey.general.minimize = 189 +bbb.shortcutkey.general.minimize = bbb.shortcutkey.general.minimize.function = Minimizează fereastra curentă -bbb.shortcutkey.general.maximize = 187 +bbb.shortcutkey.general.maximize = bbb.shortcutkey.general.maximize.function = Maximizează fereastra curentă -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Elimină focalizare de pe fereastra de Flash -bbb.shortcutkey.users.muteme = 77 +bbb.shortcutkey.users.muteme = bbb.shortcutkey.users.muteme.function = FuncÅ£ia Mute/Unmute a microfonului -bbb.shortcutkey.chat.chatinput = 73 +bbb.shortcutkey.chat.chatinput = bbb.shortcutkey.chat.chatinput.function = Setează focalizarea pe fereastra chat-ului -bbb.shortcutkey.present.focusslide = 67 +bbb.shortcutkey.present.focusslide = bbb.shortcutkey.present.focusslide.function = Setează focalizarea pe fereastra prezentării -bbb.shortcutkey.whiteboard.undo = 90 +bbb.shortcutkey.whiteboard.undo = bbb.shortcutkey.whiteboard.undo.function = ÃŽnlătură ultima modificare -bbb.shortcutkey.focus.users = 49 +bbb.shortcutkey.focus.users = bbb.shortcutkey.focus.users.function = Setează focalizarea pe fereastra utilizatorilor -bbb.shortcutkey.focus.video = 50 +bbb.shortcutkey.focus.video = bbb.shortcutkey.focus.video.function = Setează focalizarea pe fereastra webcam-ului -bbb.shortcutkey.focus.presentation = 51 +bbb.shortcutkey.focus.presentation = bbb.shortcutkey.focus.presentation.function = Setează focalizarea pe fereastra prezentării -bbb.shortcutkey.focus.chat = 52 +bbb.shortcutkey.focus.chat = bbb.shortcutkey.focus.chat.function = Setează focalizarea pe fereastra chat-ului -bbb.shortcutkey.focus.caption = 53 +bbb.shortcutkey.focus.caption = bbb.shortcutkey.focus.caption.function = Setează focalizarea pe fereastra legendei -bbb.shortcutkey.share.desktop = 68 +bbb.shortcutkey.share.desktop = bbb.shortcutkey.share.desktop.function = Deschide fereastra de partajare a ecranului -bbb.shortcutkey.share.webcam = 66 +bbb.shortcutkey.share.webcam = bbb.shortcutkey.share.webcam.function = Deschide fereastra de partajare a webcam-ului -bbb.shortcutkey.shortcutWindow = 72 +bbb.shortcutkey.shortcutWindow = bbb.shortcutkey.shortcutWindow.function = Deschide/setează focalizarea pe fereastra scurtăturilor -bbb.shortcutkey.logout = 76 +bbb.shortcutkey.logout = bbb.shortcutkey.logout.function = IeÅŸi din conferinţă -bbb.shortcutkey.raiseHand = 82 +bbb.shortcutkey.raiseHand = bbb.shortcutkey.raiseHand.function = Ridică mâna -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = ÃŽncarcă prezentare -bbb.shortcutkey.present.previous = 65 +bbb.shortcutkey.present.previous = bbb.shortcutkey.present.previous.function = Du-te la slide-ul anterior -bbb.shortcutkey.present.select = 83 +bbb.shortcutkey.present.select = bbb.shortcutkey.present.select.function = Vezi toate slide-urile -bbb.shortcutkey.present.next = 69 +bbb.shortcutkey.present.next = bbb.shortcutkey.present.next.function = Mergi la slide-ul următor -bbb.shortcutkey.present.fitWidth = 70 +bbb.shortcutkey.present.fitWidth = bbb.shortcutkey.present.fitWidth.function = Dimensionează slide-ul la lăţimea ferestrei -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Dimensionează slide-ul la lăţimea paginei -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Alocă rolul de prezentator persoanei selectate -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Elimină persoana selectată din conferinţă -bbb.shortcutkey.users.mute = 83 +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = bbb.shortcutkey.users.mute.function = Setează pe mute/unmute persoana selectată -bbb.shortcutkey.users.muteall = 65 +bbb.shortcutkey.users.muteall = bbb.shortcutkey.users.muteall.function = Setează pe mute/unmute toÅ£i participanÅ£ii -bbb.shortcutkey.users.muteAllButPres = 65 +bbb.shortcutkey.users.muteAllButPres = bbb.shortcutkey.users.muteAllButPres.function = Setează pe mute/unmute toÅ£i participanÅ£ii cu excepÅ£ia prezentatorului -bbb.shortcutkey.users.breakoutRooms = 75 +bbb.shortcutkey.users.breakoutRooms = bbb.shortcutkey.users.breakoutRooms.function = Fereastră camere secundare private -bbb.shortcutkey.users.focusBreakoutRooms = 82 +bbb.shortcutkey.users.focusBreakoutRooms = bbb.shortcutkey.users.focusBreakoutRooms.function = Setează focalizarea pe fereastra camerelor secundare private -bbb.shortcutkey.users.listenToBreakoutRoom = 76 +bbb.shortcutkey.users.listenToBreakoutRoom = bbb.shortcutkey.users.listenToBreakoutRoom.function = Ascultă camera secundară selectată -bbb.shortcutkey.users.joinBreakoutRoom = 79 +bbb.shortcutkey.users.joinBreakoutRoom = bbb.shortcutkey.users.joinBreakoutRoom.function = Alatură-te camerei secundare selectate -bbb.shortcutkey.chat.focusTabs = 89 +bbb.shortcutkey.chat.focusTabs = bbb.shortcutkey.chat.focusTabs.function = Setează focalizarea pe fereastra chat-ului -bbb.shortcutkey.chat.focusBox = 82 +bbb.shortcutkey.chat.focusBox = bbb.shortcutkey.chat.focusBox.function = Setează focalizarea pe fereastra chat-ului -bbb.shortcutkey.chat.changeColour = 67 +bbb.shortcutkey.chat.changeColour = bbb.shortcutkey.chat.changeColour.function = Schimbă couloarea fontului -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = Trimite mesaj -bbb.shortcutkey.chat.closePrivate = 69 +bbb.shortcutkey.chat.closePrivate = bbb.shortcutkey.chat.closePrivate.function = ÃŽnchide chat privat -bbb.shortcutkey.chat.explanation = ---- +bbb.shortcutkey.chat.explanation = bbb.shortcutkey.chat.explanation.function = Pentru a naviga prin mesaje, setează focalizarea pe fereastra chat-ului -bbb.shortcutkey.chat.chatbox.advance = 40 +bbb.shortcutkey.chat.chatbox.advance = bbb.shortcutkey.chat.chatbox.advance.function = Următorul mesaj -bbb.shortcutkey.chat.chatbox.goback = 38 +bbb.shortcutkey.chat.chatbox.goback = bbb.shortcutkey.chat.chatbox.goback.function = Mesajul anterior -bbb.shortcutkey.chat.chatbox.repeat = 32 +bbb.shortcutkey.chat.chatbox.repeat = bbb.shortcutkey.chat.chatbox.repeat.function = Repetă mesajul -bbb.shortcutkey.chat.chatbox.golatest = 39 +bbb.shortcutkey.chat.chatbox.golatest = bbb.shortcutkey.chat.chatbox.golatest.function = Mergi la ultimul mesaj -bbb.shortcutkey.chat.chatbox.gofirst = 37 +bbb.shortcutkey.chat.chatbox.gofirst = bbb.shortcutkey.chat.chatbox.gofirst.function = Mergi la primul mesaj -bbb.shortcutkey.chat.chatbox.goread = 75 +bbb.shortcutkey.chat.chatbox.goread = bbb.shortcutkey.chat.chatbox.goread.function = Mergi la ultimul mesaj citit -bbb.shortcutkey.chat.chatbox.debug = 71 +bbb.shortcutkey.chat.chatbox.debug = bbb.shortcutkey.chat.chatbox.debug.function = Debug -bbb.shortcutkey.caption.takeOwnership = 79 +bbb.shortcutkey.caption.takeOwnership = bbb.shortcutkey.caption.takeOwnership.function = Asumă-Å£i rolul de autor al mesajului selectat bbb.polling.startButton.tooltip = ÃŽncepe un sondaj @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Publică bbb.polling.closeButton.label = ÃŽnchide bbb.polling.customPollOption.label = Sondaj personalizat... bbb.polling.pollModal.title = Rezultate sondaj in timp real +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Optiuni sondaj bbb.polling.respondersLabel.novotes = Se aÅŸteapă răspunsuri bbb.polling.respondersLabel.text = {0} participanÅ£i au răspuns @@ -763,13 +774,13 @@ bbb.polling.answer.Yes = Da bbb.polling.answer.No = Nu bbb.polling.answer.True = Adevărat bbb.polling.answer.False = Fals -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = bbb.polling.results.accessible.header = Rezultate sondaj bbb.polling.results.accessible.answer = Răspunsul {0} are {1} voturi. @@ -779,13 +790,13 @@ bbb.publishVideo.changeCameraBtn.labelText = Schimbă webcam bbb.accessibility.alerts.madePresenter = Esti prezentator acum. bbb.accessibility.alerts.madeViewer = Esti spectator acum. -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = bbb.toolbar.videodock.toolTip.closeAllVideos = ÃŽnchide toate ferestrele video bbb.users.settings.lockAll = Blocheză toÅ£i participanÅ£ii @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Salvează bbb.lockSettings.cancel = Anulare bbb.lockSettings.cancel.toolTip = ÃŽnchide fereastra fără a salva +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Blocheză moderatorul bbb.lockSettings.privateChat = Chat privat bbb.lockSettings.publicChat = Chat public bbb.lockSettings.webcam = Cameră web +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microfon bbb.lockSettings.layout = Layout bbb.lockSettings.title=Blocheză spectatorii @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Blocheză la autentificare bbb.users.breakout.breakoutRooms = Camere secundare bbb.users.breakout.updateBreakoutRooms = Actualizează camerele secundare +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = Timp rămas pentru camerele secundare bbb.users.breakout.calculatingRemainingTime = Se calculează timpul ramas... bbb.users.breakout.closing = Se închide +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Camere bbb.users.breakout.roomsCombo.accessibilityName = Numărul de camere bbb.users.breakout.room = Cameră -bbb.users.breakout.randomAssign = Alocare aleatoare a participanÅ£ilor catre camere bbb.users.breakout.timeLimit = Limiă de timp bbb.users.breakout.durationStepper.accessibilityName = Limiă de timp în minute bbb.users.breakout.minutes = Minute @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Invită bbb.users.breakout.close = ÃŽnchide bbb.users.breakout.closeAllRooms = ÃŽnchide toate camerele bbb.users.breakout.insufficientUsers = Nu sunt suficienÅ£i participanÅ£i. Este necesar cel puÅ£in un participant pe cameră -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Cameră bbb.users.roomsGrid.users = Participant bbb.users.roomsGrid.action = AcÅ£iune @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Transferă audio bbb.users.roomsGrid.join = Alăturare bbb.users.roomsGrid.noUsers = Nu sunt participanÅ£i în această cameră -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/ru_RU/bbbResources.properties b/bigbluebutton-client/locale/ru_RU/bbbResources.properties index 0faeef2358edfcd20b61a51c2d3825d3ca209fb0..56f7e18aa62c35cb1ff4570a3b6a90170832dda2 100755 --- a/bigbluebutton-client/locale/ru_RU/bbbResources.properties +++ b/bigbluebutton-client/locale/ru_RU/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Подключение к Ñерверу... -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = Загрузка bbb.mainshell.statusProgress.cannotConnectServer = К Ñожалению, мы не можем подключитьÑÑ Ðº Ñерверу. bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) bbb.mainshell.logBtn.toolTip = Открыть окно журнала bbb.mainshell.meetingNotFound = ÐšÐ¾Ð½Ñ„ÐµÑ€ÐµÐ½Ñ†Ð¸Ñ Ð½Ðµ найдена bbb.mainshell.invalidAuthToken = Ðеверный ключ аутентификации -bbb.mainshell.resetLayoutBtn.toolTip = СброÑить раÑположение окон +bbb.mainshell.resetLayoutBtn.toolTip = СброÑить раÑкладку окон bbb.mainshell.notification.tunnelling = Туннелирование bbb.mainshell.notification.webrtc = ТранÑлÑÑ†Ð¸Ñ Ð·Ð²ÑƒÐºÐ° Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = Переключить полноÑкранный режим +bbb.mainshell.quote.sentence.1 = Ðет никаких Ñекретов уÑпеха. Он ÑвлÑетÑÑ Ñ€ÐµÐ·ÑƒÐ»ÑŒÑ‚Ð°Ñ‚Ð¾Ð¼ подготовки, Ñ‚Ñжелой работы и Ð¾Ð±ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½Ð° ошибках. +bbb.mainshell.quote.attribution.1 = Колин ПауÑлл +bbb.mainshell.quote.sentence.2 = Скажите мне - и Ñ Ð·Ð°Ð±ÑƒÐ´Ñƒ. Ðаучите Ð¼ÐµÐ½Ñ - и Ñ Ð·Ð°Ð¿Ð¾Ð¼Ð½ÑŽ. Вовлеките Ð¼ÐµÐ½Ñ - и Ñ Ð½Ð°ÑƒÑ‡ÑƒÑÑŒ. +bbb.mainshell.quote.attribution.2 = Бенджамин Франклин +bbb.mainshell.quote.sentence.3 = Только Ñ‚Ñжело работаÑ, Ñ Ð¿Ð¾Ð½Ñла значение Ñ‚Ñжелой работы. +bbb.mainshell.quote.attribution.3 = Маргарет Мид +bbb.mainshell.quote.sentence.4 = Развивайте ÑтраÑÑ‚ÑŒ к обучению. ЕÑли вы Ñто Ñделаете, вы никогда не переÑтанете раÑти. +bbb.mainshell.quote.attribution.4 = Ðнтони Дж. Д'Ðнджело +bbb.mainshell.quote.sentence.5 = ИÑÑледование Ñоздает новое знание. +bbb.mainshell.quote.attribution.5 = Ðил ÐрмÑтронг bbb.oldlocalewindow.reminder1 = Возможно, у Ð²Ð°Ñ ÑƒÑÑ‚Ð°Ñ€ÐµÐ²ÑˆÐ°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° BigBlueButton. bbb.oldlocalewindow.reminder2 = ПожалуйÑта, очиÑтите кÑш браузера и повторите попытку. bbb.oldlocalewindow.windowTitle = Внимание: уÑÑ‚Ð°Ñ€ÐµÐ²ÑˆÐ°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Ð¿ÐµÑ€ÐµÐ²Ð¾Ð´Ð° @@ -34,14 +34,14 @@ bbb.micSettings.speakers.header = ПротеÑтировать динамики bbb.micSettings.microphone.header = ПротеÑтировать микрофон bbb.micSettings.playSound = ВоÑпроизвеÑти теÑтовый звук bbb.micSettings.playSound.toolTip = ВоÑпроизвеÑти музыку Ð´Ð»Ñ Ñ‚ÐµÑÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð²Ð°ÑˆÐ¸Ñ… динамиков -bbb.micSettings.hearFromHeadset = Ð’Ñ‹ должны уÑлышать звук из гарнитуры, а не Ñ Ð´Ð¸Ð½Ð°Ð¼Ð¸ÐºÐ¾Ð² компьютера. +bbb.micSettings.hearFromHeadset = Ð’Ñ‹ должны уÑлышать звук из гарнитуры, а не из динамиков компьютера. bbb.micSettings.speakIntoMic = ЕÑли Ð’Ñ‹ иÑпользуете гарнитуру (или наушники), Ð’Ñ‹ должны уÑлышать звук из нее -- а не из колонок, подключенных к компьютеру. bbb.micSettings.echoTestMicPrompt = Ðто приватный теÑÑ‚ корректной наÑтройки звука. ПроизнеÑите неÑколько Ñлов. Слышите ли Ð’Ñ‹ воÑпроизведение звука речи? bbb.micSettings.echoTestAudioYes = Да bbb.micSettings.echoTestAudioNo = Ðет bbb.micSettings.speakIntoMicTestLevel = Говорите в микрофон. Ð’Ñ‹ должны видеть, что индикатор движетÑÑ. ЕÑли нет, выберите другой микрофон. bbb.micSettings.recommendHeadset = Ð”Ð»Ñ Ð½Ð°Ð¸Ð»ÑƒÑ‡ÑˆÐµÐ¹ ÑлышимоÑти иÑпользуйте аудио гарнитуру Ñ Ð¼Ð¸ÐºÑ€Ð¾Ñ„Ð¾Ð½Ð¾Ð¼. -bbb.micSettings.changeMic = Проверить/Ñменить микрофон +bbb.micSettings.changeMic = Проверить или Ñменить микрофон bbb.micSettings.changeMic.toolTip = Открыть окно наÑтроек микрофона Flash Player bbb.micSettings.comboMicList.toolTip = Выбрать микрофон bbb.micSettings.micRecordVolume.label = УÑиление @@ -50,12 +50,12 @@ bbb.micSettings.nextButton = Далее bbb.micSettings.nextButton.toolTip = Ðачать Ñхо-теÑÑ‚ bbb.micSettings.join = ПриÑоединитьÑÑ Ðº аудио-конференции bbb.micSettings.join.toolTip = Войти в аудио-конференцию -bbb.micSettings.cancel = Отмена +bbb.micSettings.cancel = Отменить bbb.micSettings.connectingtoecho = Подключение bbb.micSettings.connectingtoecho.error = Ошибка Ñхо теÑта: ПожалуйÑта, обратитеÑÑŒ к админиÑтратору. bbb.micSettings.cancel.toolTip = Отменить вход в аудиоконференцию bbb.micSettings.access.helpButton = Помощь (открыть обучающие видеоролики в новой Ñтранице) -bbb.micSettings.access.title = ÐаÑтройка звука. Окно будет активно, пока не будет закрыто. +bbb.micSettings.access.title = ÐаÑтройки звука. Окно будет оÑтаватьÑÑ Ð°ÐºÑ‚Ð¸Ð²Ð½Ñ‹Ð¼, пока не будет закрыто. bbb.micSettings.webrtc.title = Поддержка WebRTC bbb.micSettings.webrtc.capableBrowser = Ваш браузер поддерживает WebRTC. bbb.micSettings.webrtc.capableBrowser.dontuseit = Кликните, чтобы не иÑпользовать WebRTC @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Подключение bbb.micSettings.webrtc.transferring = Идет передача... bbb.micSettings.webrtc.endingecho = ПриÑоединение к аудио-конференции bbb.micSettings.webrtc.endedecho = Ðхо теÑÑ‚ завершен. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ñ„Ð¾Ð½Ð° Firefox -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = Ðажмите "Разрешить/Allow", чтобы дать возможноÑÑ‚ÑŒ Firefox иÑпользовать Ваш микрофон. bbb.micPermissions.chrome.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ñ„Ð¾Ð½Ð° Chrome -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = Ðажмите "Разрешить/Allow", чтобы дать возможноÑÑ‚ÑŒ Chrome иÑпользовать Ваш микрофон. bbb.micWarning.title = Звуковое предупреждение bbb.micWarning.joinBtn.label = Ð’Ñе равно войти bbb.micWarning.testAgain.label = Проверить еще раз @@ -93,48 +94,48 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Ðхо-теÑÑ‚ Ñ Ð¸Ñпол bbb.webrtcWarning.connection.dropped = WebRTC Ñоединение утрачено bbb.webrtcWarning.connection.reconnecting = Попытка Ð¿ÐµÑ€ÐµÐ¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ bbb.webrtcWarning.connection.reestablished = WebRTC Ñоединение воÑÑтановлено -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = Обнаружено отÑутÑтвие активноÑти +bbb.inactivityWarning.message = КажетÑÑ, Ñта ÐºÐ¾Ð½Ñ„ÐµÑ€ÐµÐ½Ñ†Ð¸Ñ Ð½Ðµ активна. ВыполнÑетÑÑ Ð°Ð²Ñ‚Ð¾Ð¼Ð°Ñ‚Ð¸Ñ‡ÐµÑкое завершение... +bbb.shuttingDown.message = Ðта ÐºÐ¾Ð½Ñ„ÐµÑ€ÐµÐ½Ñ†Ð¸Ñ Ð±Ñ‹Ð»Ð° закрыта по причине неактивноÑти +bbb.inactivityWarning.cancel = Отменить bbb.mainToolbar.helpBtn = Помощь bbb.mainToolbar.logoutBtn = Выход bbb.mainToolbar.logoutBtn.toolTip = Выйти -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = {0} | СброÑить таймер Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ bbb.mainToolbar.langSelector = Выбрать Ñзык bbb.mainToolbar.settingsBtn = ÐаÑтройки -bbb.mainToolbar.settingsBtn.toolTip = Открыть ÐаÑтройки +bbb.mainToolbar.settingsBtn.toolTip = Открыть наÑтройки bbb.mainToolbar.shortcutBtn = Клавиши быÑтрого доÑтупа -bbb.mainToolbar.shortcutBtn.toolTip = Открыть окно Ñо ÑпиÑком Ñочетаний клавиш +bbb.mainToolbar.shortcutBtn.toolTip = Открыть окно Ñо ÑпиÑком клавиш быÑтрого доÑтупа bbb.mainToolbar.recordBtn.toolTip.start = Ðачать запиÑÑŒ bbb.mainToolbar.recordBtn.toolTip.stop = ОÑтановить запиÑÑŒ bbb.mainToolbar.recordBtn.toolTip.recording = Ðта ÑеÑÑÐ¸Ñ Ð·Ð°Ð¿Ð¸ÑываетÑÑ bbb.mainToolbar.recordBtn.toolTip.notRecording = СеÑÑÐ¸Ñ Ð½Ðµ будет запиÑана -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Только модераторы могут начинать и оÑтанавливать запиÑÑŒ +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = Ðта запиÑÑŒ не может быть прервана +bbb.mainToolbar.recordBtn.toolTip.wontRecord = Ðта ÑеÑÑÐ¸Ñ Ð½Ðµ может быть запиÑана bbb.mainToolbar.recordBtn.confirm.title = Подтвердить запиÑÑŒ bbb.mainToolbar.recordBtn.confirm.message.start = Ð’Ñ‹ уверены, что хотите начать запиÑÑŒ ÑеÑÑии? bbb.mainToolbar.recordBtn.confirm.message.stop = Ð’Ñ‹ уверены, что хотите оÑтановить запиÑÑŒ ÑеÑÑии? -bbb.mainToolbar.recordBtn..notification.title = Предупреждение о запиÑи -bbb.mainToolbar.recordBtn..notification.message1 = Ð’Ñ‹ можете запиÑать Ñту конференцию. -bbb.mainToolbar.recordBtn..notification.message2 = Чтобы начать/закончить запиÑÑŒ, вы должны нажать на кнопку Ðачать/ОÑтановить запиÑÑŒ на верхней панели. +bbb.mainToolbar.recordBtn.notification.title = Предупреждение о запиÑи +bbb.mainToolbar.recordBtn.notification.message1 = Ð’Ñ‹ можете запиÑать Ñту конференцию. +bbb.mainToolbar.recordBtn.notification.message2 = Чтобы начать/закончить запиÑÑŒ, вы должны нажать на кнопку Ðачать/ОÑтановить запиÑÑŒ на верхней панели. bbb.mainToolbar.recordingLabel.recording = (ВедетÑÑ Ð·Ð°Ð¿Ð¸ÑÑŒ) bbb.mainToolbar.recordingLabel.notRecording = ЗапиÑÑŒ не ведетÑÑ -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = Ð’Ñ‹ гоÑÑ‚ÑŒ. ПожалуйÑта, подождите, пока модератор подтвердит Ваше учаÑтие. +bbb.waitWindow.waitMessage.title = Ожидание +bbb.guests.title = ГоÑти +bbb.guests.message.singular = {0} пользователей(Ñ) хотÑÑ‚ подключитьÑÑ Ðº Ñтой конференции +bbb.guests.message.plural = {0} пользователей(Ñ) хотÑÑ‚ подключитьÑÑ Ðº Ñтой конференции +bbb.guests.allowBtn.toolTip = Разрешить +bbb.guests.allowEveryoneBtn.text = Разрешить вÑем +bbb.guests.denyBtn.toolTip = Запретить +bbb.guests.denyEveryoneBtn.text = Запретить вÑем +bbb.guests.rememberAction.text = Запомнить выбор +bbb.guests.alwaysAccept = Ð’Ñегда принимать +bbb.guests.alwaysDeny = Ð’Ñегда запрещать +bbb.guests.askModerator = СпроÑить модератора +bbb.guests.Management = Управление гоÑÑ‚Ñми bbb.clientstatus.title = Ð£Ð²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ð¾ конфигурации bbb.clientstatus.notification = Ðепрочитанные ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ bbb.clientstatus.close = Закрыть @@ -151,57 +152,57 @@ bbb.clientstatus.webrtc.almostWeakStatus = Ваше качеÑтво WebRTC ау bbb.clientstatus.webrtc.weakStatus = Возможно у Ð²Ð°Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ð° Ñ WebRTC аудио Ñоединением bbb.clientstatus.webrtc.message = РекомендуетÑÑ Ð¸Ñпользовать Firefox или Chrome Ð´Ð»Ñ ÑƒÐ»ÑƒÑ‡ÑˆÐµÐ½Ð¸Ñ ÐºÐ°Ñ‡ÐµÑтва аудио. bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.notdetected = ВерÑÐ¸Ñ Java не определена. +bbb.clientstatus.java.notinstalled = У Ð’Ð°Ñ Ð½Ðµ уÑтановлена Java. ПожалуйÑта, нажмите <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>здеÑÑŒ</a></font> Ð´Ð»Ñ ÑƒÑтановки поÑледней верÑии Java, чтобы иÑпользовать фунционал демонÑтрации рабочего Ñтола. +bbb.clientstatus.java.oldversion = У Ð’Ð°Ñ ÑƒÑтановлена уÑÑ‚Ð°Ñ€ÐµÐ²ÑˆÐ°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Java. ПожалуйÑта, нажмите <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>здеÑÑŒ</a></font> Ð´Ð»Ñ ÑƒÑтановки поÑледней верÑии, чтобы иÑпользовать фунционал демонÑтрации рабочего Ñтола. bbb.window.minimizeBtn.toolTip = Свернуть bbb.window.maximizeRestoreBtn.toolTip = Развернуть bbb.window.closeBtn.toolTip = Закрыть -bbb.videoDock.titleBar = Видео-транÑлÑции -bbb.presentation.titleBar = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ -bbb.chat.titleBar = Чат +bbb.videoDock.titleBar = Заголовок окна веб-камеры +bbb.presentation.titleBar = Заголовок окна презентации +bbb.chat.titleBar = Заголовок окна чата bbb.users.title = Пользователи{0} {1} -bbb.users.titleBar = Пользователи +bbb.users.titleBar = Заголовок окна пользователей bbb.users.quickLink.label = Окно пользователей bbb.users.minimizeBtn.accessibilityName = Свернуть окно пользователей bbb.users.maximizeRestoreBtn.accessibilityName = Развернуть окно пользователей bbb.users.settings.buttonTooltip = ÐаÑтройки bbb.users.settings.audioSettings = Проверка звука bbb.users.settings.webcamSettings = ÐаÑтройки веб-камеры -bbb.users.settings.muteAll = Выкл. вÑех -bbb.users.settings.muteAllExcept = Выключить микрофоны у вÑех кроме ведущего -bbb.users.settings.unmuteAll = Включить микрофоны у вÑех +bbb.users.settings.muteAll = Выключить микрофоны вÑех пользователей +bbb.users.settings.muteAllExcept = Выключить микрофоны у вÑех, кроме ведущего +bbb.users.settings.unmuteAll = Включить микрофоны у вÑех пользователей bbb.users.settings.clearAllStatus = ОчиÑтить вÑе надпиÑи bbb.users.emojiStatusBtn.toolTip = Обновить мой ​​ÑÑ‚Ð°Ñ‚ÑƒÑ bbb.users.roomMuted.text = УчаÑтники Ñ Ð²Ñ‹ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ‹Ð¼ микрофоном bbb.users.roomLocked.text = УчаÑтники заблокированы -bbb.users.pushToTalk.toolTip = Кликните чтоб говорить -bbb.users.pushToMute.toolTip = Кликните чтоб выключить Ñвой микрофон -bbb.users.muteMeBtnTxt.talk = Вкл. мик. -bbb.users.muteMeBtnTxt.mute = Выкл. мик. -bbb.users.muteMeBtnTxt.muted = Выкл-ый мик. +bbb.users.pushToTalk.toolTip = Говорите +bbb.users.pushToMute.toolTip = Отключить Ñвой микрофон +bbb.users.muteMeBtnTxt.talk = Включить микрофон +bbb.users.muteMeBtnTxt.mute = Выключить микрофон +bbb.users.muteMeBtnTxt.muted = Микрофон отключен bbb.users.usersGrid.contextmenu.exportusers = Скопировать имена пользователей bbb.users.usersGrid.accessibilityName = СпиÑок пользователей. ИÑпользуйте Ñтрелки Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ´Ð²Ð¸Ð¶ÐµÐ½Ð¸Ñ. bbb.users.usersGrid.nameItemRenderer = Ð˜Ð¼Ñ -bbb.users.usersGrid.nameItemRenderer.youIdentifier = вы +bbb.users.usersGrid.nameItemRenderer.youIdentifier = Ð’Ñ‹ bbb.users.usersGrid.statusItemRenderer = Ð¡Ñ‚Ð°Ñ‚ÑƒÑ bbb.users.usersGrid.statusItemRenderer.changePresenter = Ðажмите, чтобы Ñделать ведущим bbb.users.usersGrid.statusItemRenderer.presenter = Ведущий bbb.users.usersGrid.statusItemRenderer.moderator = Модератор -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Только Ð³Ð¾Ð»Ð¾Ñ +bbb.users.usersGrid.statusItemRenderer.raiseHand = ПоднÑта рука +bbb.users.usersGrid.statusItemRenderer.applause = ÐплодиÑменты +bbb.users.usersGrid.statusItemRenderer.thumbsUp = Поддерживаю +bbb.users.usersGrid.statusItemRenderer.thumbsDown = Ðе ÑоглаÑен +bbb.users.usersGrid.statusItemRenderer.speakLouder = Говорите громче +bbb.users.usersGrid.statusItemRenderer.speakSofter = Говорите мÑгче +bbb.users.usersGrid.statusItemRenderer.speakFaster = Говорите быÑтрее +bbb.users.usersGrid.statusItemRenderer.speakSlower = Говорите помедленнее +bbb.users.usersGrid.statusItemRenderer.away = Ðет на меÑте +bbb.users.usersGrid.statusItemRenderer.confused = Смущенный +bbb.users.usersGrid.statusItemRenderer.neutral = Ðейтральный +bbb.users.usersGrid.statusItemRenderer.happy = СчаÑтливый +bbb.users.usersGrid.statusItemRenderer.sad = ГруÑтный bbb.users.usersGrid.statusItemRenderer.clearStatus = ОчиÑтить ÑÑ‚Ð°Ñ‚ÑƒÑ bbb.users.usersGrid.statusItemRenderer.viewer = УчаÑтник bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = ТранÑлировать веб камеру. @@ -214,54 +215,55 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Включить микроф bbb.users.usersGrid.mediaItemRenderer.pushToMute = Выключить микрофон {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Заблокировать {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Разблокировать {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = ИÑключить {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Веб-камера включена -bbb.users.usersGrid.mediaItemRenderer.micOff = Выключить микрофон -bbb.users.usersGrid.mediaItemRenderer.micOn = Включить микрофон +bbb.users.usersGrid.mediaItemRenderer.micOff = Микрофон выключен +bbb.users.usersGrid.mediaItemRenderer.micOn = Микрофон включен bbb.users.usersGrid.mediaItemRenderer.noAudio = Ðе в аудиоконференции -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = Сделать {0} модератором +bbb.users.usersGrid.mediaItemRenderer.demoteUser = Понизить {0} до проÑтого учаÑтника bbb.users.emojiStatus.clear = ОчиÑтить -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = ПоднÑÑ‚ÑŒ руку +bbb.users.emojiStatus.happy = СчаÑтливый +bbb.users.emojiStatus.neutral = Ðейтральный +bbb.users.emojiStatus.sad = ГруÑтный +bbb.users.emojiStatus.confused = Смущенный +bbb.users.emojiStatus.away = Ðет на меÑте +bbb.users.emojiStatus.thumbsUp = Поддерживаю +bbb.users.emojiStatus.thumbsDown = Ðе ÑоглаÑен +bbb.users.emojiStatus.applause = ÐплодиÑменты +bbb.users.emojiStatus.agree = СоглаÑен +bbb.users.emojiStatus.disagree = Я не ÑоглаÑен +bbb.users.emojiStatus.none = ОчиÑтить +bbb.users.emojiStatus.speakLouder = Ðе могли бы Ð’Ñ‹ говорить громче? +bbb.users.emojiStatus.speakSofter = Ðе могли бы Ð’Ñ‹ говорить помÑгче? +bbb.users.emojiStatus.speakFaster = Ðе могли бы Ð’Ñ‹ говорить побыÑтрее? +bbb.users.emojiStatus.speakSlower = Ðе могли бы Ð’Ñ‹ говорить помедленнее? +bbb.users.emojiStatus.beRightBack = Я Ñкоро вернуÑÑŒ bbb.presentation.title = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ bbb.presentation.titleWithPres = ПрезентациÑ: {0} bbb.presentation.quickLink.label = Окно презентаций -bbb.presentation.fitToWidth.toolTip = Подогнать под ширину окна -bbb.presentation.fitToPage.toolTip = Подогнать под размер окна +bbb.presentation.fitToWidth.toolTip = Подогнать под ширину +bbb.presentation.fitToPage.toolTip = Подогнать под Ñтраницу bbb.presentation.uploadPresBtn.toolTip = Загрузить презентацию -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = Скачать презентации +bbb.presentation.poll.response = Ответить на Ð¾Ð¿Ñ€Ð¾Ñ bbb.presentation.backBtn.toolTip = Предыдущий Ñлайд bbb.presentation.btnSlideNum.accessibilityName = Слайд {0} из {1} -bbb.presentation.btnSlideNum.toolTip = Выбор Ñлайда +bbb.presentation.btnSlideNum.toolTip = Выберите Ñлайд bbb.presentation.forwardBtn.toolTip = Следующий Ñлайд bbb.presentation.maxUploadFileExceededAlert = Ошибка: файл превышает допуÑтимый размер. bbb.presentation.uploadcomplete = Загрузка завершена. Подождите, пока завершитÑÑ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ð½Ð¸Ðµ документа. bbb.presentation.uploaded = загружено. bbb.presentation.document.supported = Формат загруженного документа поддерживаетÑÑ. Идет преобразование... bbb.presentation.document.converted = Документ уÑпешно преобразован. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Попробуйте преобразовать документ в PDF и загрузить еще раз. bbb.presentation.error.document.convert.invalid = Конвертируйте документ в PDF формат, пожалуйÑта. bbb.presentation.error.io = Ошибка ввода-вывода: ÑвÑжитеÑÑŒ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратором. bbb.presentation.error.security = Ошибка безопаÑноÑти: ÑвÑжитеÑÑŒ Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратором. -bbb.presentation.error.convert.notsupported = Ошибка: формат загруженного файла не поддерживаетÑÑ. Выберите файл Ñ ÑовмеÑтимым форматом. -bbb.presentation.error.convert.nbpage = Ошибка: не удалоÑÑŒ определить чиÑло Ñтраниц в загруженном файле. -bbb.presentation.error.convert.maxnbpagereach = Ошибка: в документе Ñлишком много Ñтраниц. +bbb.presentation.error.convert.notsupported = Ошибка: формат загруженного документа не поддерживаетÑÑ. ПожалуйÑта, загрузите файл ÑовмеÑтимого формата. +bbb.presentation.error.convert.nbpage = Ошибка: не удалоÑÑŒ определить чиÑло Ñтраниц в загруженном документе. +bbb.presentation.error.convert.maxnbpagereach = Ошибка: в загруженном документе Ñлишком много Ñтраниц. bbb.presentation.converted = Преобразовано {0} Ñлайдов из {1}. bbb.presentation.slider = Уровень маÑÑˆÑ‚Ð°Ð±Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ð¸ bbb.presentation.slideloader.starttext = Ðачать текÑÑ‚ Ñлайда @@ -277,60 +279,61 @@ bbb.presentation.maximizeRestoreBtn.accessibilityName = Развернуть о bbb.presentation.closeBtn.accessibilityName = Закрыть окно презентации bbb.fileupload.title = Добавить файлы к вашей презентации bbb.fileupload.lblFileName.defaultText = Файл не выбран -bbb.fileupload.selectBtn.label = Выбрать файл -bbb.fileupload.selectBtn.toolTip = Открыть окно Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° файла +bbb.fileupload.selectBtn.label = Выберите файл +bbb.fileupload.selectBtn.toolTip = Открыть диалоговое окно Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° файла bbb.fileupload.uploadBtn = Загрузить bbb.fileupload.uploadBtn.toolTip = Загрузить выбранный файл bbb.fileupload.deleteBtn.toolTip = Удалить презентацию bbb.fileupload.showBtn = Показать -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = Попробуйте другой файл bbb.fileupload.showBtn.toolTip = Показать презентацию -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Закрыть +bbb.fileupload.close.accessibilityName = Закрыть диалоговое окно загрузки файла bbb.fileupload.genThumbText = Создание миниатюр.. bbb.fileupload.progBarLbl = Загрузка: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = Ð’Ñ‹ можете загрузить любой документ в формате Office или Portable Document Format (PDF). Ð”Ð»Ñ Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ð½Ð°Ð¸Ð»ÑƒÑ‡ÑˆÐµÐ³Ð¾ результата мы рекомендуем загружать документы в формате PDF. +bbb.fileupload.letUserDownload = Разрешить Ñкачивание презентации +bbb.fileupload.letUserDownload.tooltip = Ðажмите здеÑÑŒ, еÑли Ð’Ñ‹ хотите, чтобы другие учаÑтники Ñкачали Вашу презентацию +bbb.filedownload.title = Скачать Ñти презентации +bbb.filedownload.close.tooltip = Закрыть +bbb.filedownload.close.accessibilityName = Закрыть диалоговое окно ÑÐºÐ°Ñ‡Ð¸Ð²Ð°Ð½Ð¸Ñ Ñ„Ð°Ð¹Ð»Ð° +bbb.filedownload.fileLbl = Выберите файл Ð´Ð»Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ¸: +bbb.filedownload.downloadBtn = Скачать +bbb.filedownload.downloadBtn.toolTip = Скачать презентацию +bbb.filedownload.thisFileIsDownloadable = Файл иожно Ñкачать bbb.chat.title = Чат bbb.chat.quickLink.label = Окно чата bbb.chat.cmpColorPicker.toolTip = Цвет текÑта bbb.chat.input.accessibilityName = Поле Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ bbb.chat.sendBtn.toolTip = Отправить Ñообщение bbb.chat.sendBtn.accessibilityName = Отправить Ñообщение чата -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = Сохранить чат +bbb.chat.saveBtn.accessibilityName = Сохранить чат в текÑтовый файл +bbb.chat.saveBtn.label = Сохранить +bbb.chat.save.complete = Ð§Ð°Ñ Ñохранен уÑпешно +bbb.chat.save.ioerror = Чат не Ñохранен. Попробуйте еще раз. +bbb.chat.save.filename = Публичный чат +bbb.chat.copyBtn.toolTip = Скопировать чат +bbb.chat.copyBtn.accessibilityName = Скопировать чат в буфер обмена +bbb.chat.copyBtn.label = Копировать +bbb.chat.copy.complete = Чат Ñкопирован в буфер обмена +bbb.chat.clearBtn.toolTip = ОчиÑтить публичный чат +bbb.chat.clearBtn.accessibilityName = ОчиÑтить иÑторию публичного чата +bbb.chat.clearBtn.chatMessage = ИÑÑ‚Ð¾Ñ€Ð¸Ñ Ð¿ÑƒÐ±Ð»Ð¸Ñ‡Ð½Ð¾Ð³Ð¾ чата очищена модератором +bbb.chat.clearBtn.alert.title = Предупреждение +bbb.chat.clearBtn.alert.text = Ð’Ñ‹ ÑобираетеÑÑŒ очиÑтить иÑторию публичного чата, и Ñто дейÑтвие необратимо. Хотите продолжить? bbb.chat.contextmenu.copyalltext = Копировать веÑÑŒ текÑÑ‚ bbb.chat.publicChatUsername = Публичный -bbb.chat.optionsTabName = ÐаÑтройки -bbb.chat.privateChatSelect = Выбрать Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ñ‡Ð°Ñтного Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ +bbb.chat.optionsTabName = Параметры +bbb.chat.privateChatSelect = Выберите учаÑтника Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð°Ñ‚Ð½Ð¾Ð³Ð¾ Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ bbb.chat.private.userLeft = Пользователь вышел. bbb.chat.private.userJoined = Пользователь приÑоединилÑÑ. bbb.chat.private.closeMessage = Ð’Ñ‹ можете закрыть вкладку, иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸ÑŽ клавиш {0}. -bbb.chat.usersList.toolTip = Выбрать учаÑтника, чтобы открыть чаÑтный чат +bbb.chat.usersList.toolTip = Выберите Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð½Ð°Ñ‡Ð°Ð»Ð° приватного чата bbb.chat.usersList.accessibilityName = Выберите Ñ ÐºÐµÐ¼ начать приватный чат. Кнопки-Ñтрелки Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ¼ÐµÑ‰ÐµÐ½Ð¸Ñ. -bbb.chat.chatOptions = ÐаÑтройка чата -bbb.chat.fontSize = Размер шрифта чата -bbb.chat.cmbFontSize.toolTip = Выбрать размер шрифта чата +bbb.chat.chatOptions = Параметры чата +bbb.chat.fontSize = Размер шрифта Ñообщений чата +bbb.chat.cmbFontSize.toolTip = Выберите размер шрифта Ñообщений чата bbb.chat.messageList = Ð¡Ð¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñ‡Ð°Ñ‚Ð° bbb.chat.minimizeBtn.accessibilityName = Свернуть окно чата bbb.chat.maximizeRestoreBtn.accessibilityName = Развернуть окно чата @@ -339,14 +342,14 @@ bbb.chat.chatTabs.accessibleNotice = Ðовые ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð² Ñтой bbb.chat.chatMessage.systemMessage = СиÑтема bbb.chat.chatMessage.stringRespresentation = От {0} {1} в {2} bbb.chat.chatMessage.tooLong = Сообщение Ñлишком длинное - на {0} Ñимвол(ов) -bbb.publishVideo.changeCameraBtn.labelText = Изменить наÑтройки веб-камеры -bbb.publishVideo.changeCameraBtn.toolTip = Кликните, чтобы открыть окно Ñмены веб-камеры -bbb.publishVideo.cmbResolution.tooltip = Выбрать разрешение веб-камеры -bbb.publishVideo.startPublishBtn.labelText = Ðачать транÑлÑцию +bbb.publishVideo.changeCameraBtn.labelText = Сменить веб-камеру +bbb.publishVideo.changeCameraBtn.toolTip = Открыть диалоговое окно Ñмены веб-камеры +bbb.publishVideo.cmbResolution.tooltip = Выберите разрешение веб-камеры +bbb.publishVideo.startPublishBtn.labelText = Ðачать демонÑтрацию bbb.publishVideo.startPublishBtn.toolTip = Ðачать видеотранÑлÑцию bbb.publishVideo.startPublishBtn.errorName = Ðевозможно показать веб-камеру. Причина: {0} bbb.webcamPermissions.chrome.title = Ð Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð²ÐµÐ±-камеры в Chrome -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = Ðажмите "Разрешить/Allow", чтобы дать возможноÑÑ‚ÑŒ Chrome иÑпользовать Вашу веб-камеру. bbb.videodock.title = Веб-камеры bbb.videodock.quickLink.label = Окно веб-камер bbb.video.minimizeBtn.accessibilityName = Свернуть окно веб-камер @@ -356,17 +359,18 @@ bbb.video.controls.switchPresenter.toolTip = Сделать {0} ведущим bbb.video.controls.ejectUserBtn.toolTip = ИÑключить {0} из конференции bbb.video.controls.privateChatBtn.toolTip = Чат Ñ {0} bbb.video.publish.hint.noCamera = Веб-камера недоÑтупна -bbb.video.publish.hint.cantOpenCamera = Ðевозможно открыть веб-камеру -bbb.video.publish.hint.waitingApproval = Ожидаем разрешение +bbb.video.publish.hint.cantOpenCamera = Ðевозможно подключитьÑÑ Ðº Вашей веб-камере +bbb.video.publish.hint.waitingApproval = Ожидаем Ñ€Ð°Ð·Ñ€ÐµÑˆÐµÐ½Ð¸Ñ bbb.video.publish.hint.videoPreview = Предварительный проÑмотр веб-камеры -bbb.video.publish.hint.openingCamera = Открытие веб-камеры... +bbb.video.publish.hint.openingCamera = Подключение к веб-камере... bbb.video.publish.hint.cameraDenied = ДоÑтуп к веб-камере запрещен -bbb.video.publish.hint.cameraIsBeingUsed = Ðевозможно открыть камеру, так как она иÑпользуетÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ð¼ приложением. +bbb.video.publish.hint.cameraIsBeingUsed = Ðевозможно подключитьÑÑ Ðº Вашей веб-камере. Возможно, она иÑпользуетÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ð¼ приложением. bbb.video.publish.hint.publishing = ПубликациÑ... -bbb.video.publish.closeBtn.accessName = Закрыть окно наÑтроек веб-камеры -bbb.video.publish.closeBtn.label = Отмена -bbb.video.publish.titleBar = Окно Ð²ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð²ÐµÐ±-камеры +bbb.video.publish.closeBtn.accessName = Закрыть диалоговое окно наÑтроек веб-камеры +bbb.video.publish.closeBtn.label = Отменить +bbb.video.publish.titleBar = Окно транÑлÑции веб-камеры bbb.video.streamClose.toolTip = Закрыть транÑлÑцию длÑ: {0} +bbb.video.message.browserhttp = Ðтот Ñервер не наÑтроен на иÑпользование SSL. Как результат, {0} отключает транÑлÑцию Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ñ Ð’Ð°ÑˆÐµÐ¹ веб-камеры. bbb.screensharePublish.title = ДемонÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñкрана: предпроÑмотр в режиме ведущего bbb.screensharePublish.pause.tooltip = ПриоÑтановить показ Ñкрана bbb.screensharePublish.pause.label = Пауза @@ -428,54 +432,58 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Ðе удалоÑÑŒ bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Похоже что вы в режиме инкогнито или иÑпользуете приватный режим проÑмотра. УдоÑтоверьтеÑÑŒ в наÑтройках раÑширениÑ, что вы разрешаете ему работать в инкогнито/приватном режиме проÑмотра. bbb.screensharePublish.WebRTCExtensionInstallButton.label = Ðажмите здеÑÑŒ, чтобы уÑтановить bbb.screensharePublish.WebRTCUseJavaButton.label = ДемонÑтрировать Ñкран иÑÐ¿Ð¾Ð»ÑŒÐ·ÑƒÑ Java -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = Видео загружаетÑÑ... Подождите, пожалуйÑта +bbb.screensharePublish.sharingMessage= Ðто Ваш Ñкран, который демонÑтрируетÑÑ bbb.screenshareView.title = ДемонÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñкрана bbb.screenshareView.fitToWindow = Подогнать под размеры окна bbb.screenshareView.actualSize = Оригинальный размер bbb.screenshareView.minimizeBtn.accessibilityName = Свернуть окно демонÑтрации Ñкрана bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Развернуть окно демонÑтрации Ñкрана bbb.screenshareView.closeBtn.accessibilityName = Закрыть окно демонÑтрации Ñкрана -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = Включить звук (микрофон или только проÑлушивание) +bbb.toolbar.phone.toolTip.stop = Отключить звук bbb.toolbar.phone.toolTip.mute = Прекратить Ñлушать конференцию bbb.toolbar.phone.toolTip.unmute = Ðачать Ñлушать конференцию bbb.toolbar.phone.toolTip.nomic = Микрофон не обнаружен -bbb.toolbar.deskshare.toolTip.start = Открыть окно транÑлÑции Ñкрана -bbb.toolbar.deskshare.toolTip.stop = ОÑтановить демонÑтрацию Ñкрана -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Включить транÑлÑцию вашей веб-камеры -bbb.toolbar.video.toolTip.stop = ОÑтановить транÑлÑцию вашей веб-камеры -bbb.layout.addButton.toolTip = Добавить в ÑпиÑок Ñхему Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Сменить Ñхему окон -bbb.layout.loadButton.toolTip = Загрузить Ñхемы из файла -bbb.layout.saveButton.toolTip = Сохранить Ñхемы в файл -bbb.layout.lockButton.toolTip = Заблокировать Ñхему -bbb.layout.combo.prompt = Применить Ñхему -bbb.layout.combo.custom = * ПользовательÑÐºÐ°Ñ Ñхема -bbb.layout.combo.customName = ПользовательÑÐºÐ°Ñ Ñхема +bbb.toolbar.deskshare.toolTip.start = Открыть окно демонÑтрации Ñкрана +bbb.toolbar.deskshare.toolTip.stop = ОÑтановить демонÑтрацию Вашего Ñкрана +bbb.toolbar.sharednotes.toolTip = Открыть общие заметки +bbb.toolbar.video.toolTip.start = Включить транÑлÑцию Вашей веб-камеры +bbb.toolbar.video.toolTip.stop = ОÑтановить транÑлÑцию Вашей веб-камеры +bbb.layout.addButton.label = Добавить +bbb.layout.addButton.toolTip = Добавить пользовательÑкую раÑкладку в ÑпиÑок +bbb.layout.overwriteLayoutName.title = ПерезапиÑать раÑкладку +bbb.layout.overwriteLayoutName.text = Ðто Ð¸Ð¼Ñ ÑƒÐ¶Ðµ иÑпользуетÑÑ. Хотите перезапиÑать? +bbb.layout.broadcastButton.toolTip = Применить текущую раÑкладку Ð´Ð»Ñ Ð²Ñех учаÑтников +bbb.layout.combo.toolTip = Сменить Вашу раÑкладку +bbb.layout.loadButton.toolTip = Загрузить раÑкладки из файла +bbb.layout.saveButton.toolTip = Сохранить раÑкладки в файл +bbb.layout.lockButton.toolTip = Заблокировать раÑкладку +bbb.layout.combo.prompt = Применить раÑкладку +bbb.layout.combo.custom = * ПользовательÑÐºÐ°Ñ Ñ€Ð°Ñкладка +bbb.layout.combo.customName = ПользовательÑÐºÐ°Ñ Ñ€Ð°Ñкладка bbb.layout.combo.remote = Удаленный -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Схемы уÑпешно Ñохранены -bbb.layout.load.complete = Схемы уÑпешно загруженны -bbb.layout.load.failed = Ðе удаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ макеты -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.window.name = Ðазвание раÑкладки +bbb.layout.window.close.tooltip = Закрыть +bbb.layout.window.close.accessibilityName = Закрыть окно Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð¹ раÑкладки +bbb.layout.save.complete = РаÑкладки Ñохранены уÑпешно +bbb.layout.save.ioerror = РаÑкладки не Ñохранены. Попробуйте еще раз. +bbb.layout.load.complete = РаÑкладки загружены уÑпешно +bbb.layout.load.failed = Ðе удаетÑÑ Ð·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ раÑкладки +bbb.layout.sync = Ваша раÑкладка отправлена вÑем учаÑтникам bbb.layout.name.defaultlayout = РаÑположение окон по умолчанию bbb.layout.name.closedcaption = Субтитры bbb.layout.name.videochat = Видеочат bbb.layout.name.webcamsfocus = Ð’Ð¸Ð´ÐµÐ¾ÐºÐ¾Ð½Ñ„ÐµÑ€ÐµÐ½Ñ†Ð¸Ñ bbb.layout.name.presentfocus = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ð¸Ñ + Пользователи bbb.layout.name.lectureassistant = Помощник ведущего bbb.layout.name.lecture = Ð›ÐµÐºÑ†Ð¸Ñ -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = Общие заметки +bbb.layout.addCurrentToFileWindow.title = Добавить текущую раÑкладку в файл +bbb.layout.addCurrentToFileWindow.text = Хотите Ñохранить текущую раÑкладку в файл? +bbb.layout.denyAddToFile.toolTip = Запретить добавление текущей раÑкладки +bbb.layout.confirmAddToFile.toolTip = Подтвердите добавление текущей раÑкладки bbb.highlighter.toolbar.pencil = Карандаш bbb.highlighter.toolbar.pencil.accessibilityName = Переключить курÑор на карандаш bbb.highlighter.toolbar.ellipse = ОкружноÑÑ‚ÑŒ @@ -486,14 +494,13 @@ bbb.highlighter.toolbar.panzoom = Сдвиг и маÑштабирование bbb.highlighter.toolbar.panzoom.accessibilityName = Переключить курÑор на Ñдвиг и маÑштабирование bbb.highlighter.toolbar.clear = ОчиÑтить вÑе надпиÑи bbb.highlighter.toolbar.clear.accessibilityName = ОчиÑтить Ñтраницу доÑки -bbb.highlighter.toolbar.undo = Отменить поÑледнюю надпиÑÑŒ +bbb.highlighter.toolbar.undo = Отменить надпиÑÑŒ bbb.highlighter.toolbar.undo.accessibilityName = Отменить поÑледнюю фигуру на доÑке bbb.highlighter.toolbar.color = Выбрать цвет bbb.highlighter.toolbar.color.accessibilityName = Цвет маркера bbb.highlighter.toolbar.thickness = Выбрать толщину линий bbb.highlighter.toolbar.thickness.accessibilityName = Толщина риÑÐ¾Ð²Ð°Ð½Ð¸Ñ -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Вышли +bbb.highlighter.toolbar.multiuser = МногопользовательÑкое риÑование bbb.logout.button.label = OK bbb.logout.appshutdown = Серверное приложение выключилоÑÑŒ bbb.logout.asyncerror = Ошибка аÑинхронноÑти @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Соединение Ñ Ñервером поте bbb.logout.rejected = Соединение Ñ Ñервером отклонено bbb.logout.invalidapp = Приложение red5 отÑутÑтвует bbb.logout.unknown = Ваш клиент потерÑл Ñоединение Ñ Ñервером -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = Модератор не разрешил Вам подключение к Ñтой конференции bbb.logout.usercommand = Ð’Ñ‹ вышли из конференции bbb.logour.breakoutRoomClose = Ваше окно браузера будет закрыто -bbb.logout.ejectedFromMeeting = Модератор иÑключил Ð²Ð°Ñ Ð¸Ð· конференции. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = ЕÑли Ñтот выход был неожиданным нажмите на кнопку ниже, чтобы воÑÑтановить подключение. bbb.logout.refresh.label = Повторное подключение -bbb.settings.title = Settings +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = ÐаÑтройки bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.settings.cancel = Отменить +bbb.settings.btn.toolTip = Открыть окно наÑтройки bbb.logout.confirm.title = Подтвердите выход bbb.logout.confirm.message = Ð’Ñ‹ уверены, что хотите выйти? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = Да и завершить конференцию bbb.logout.confirm.yes = Да bbb.logout.confirm.no = Ðет -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = Предупреждение +bbb.endSession.confirm.message = ЕÑли Ð’Ñ‹ закроете Ñту ÑеÑÑию, вÑе учаÑтники будут отключены. Хотите продолжить? bbb.connection.failure=Обнаружены проблемы Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ bbb.connection.reconnecting=Переподключение bbb.connection.reestablished=Соединение воÑÑтановлено @@ -530,59 +539,60 @@ bbb.notes.title = Заметки bbb.notes.cmpColorPicker.toolTip = Цвет текÑта bbb.notes.saveBtn = Сохранить bbb.notes.saveBtn.toolTip = Сохранить заметку -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = Общие заметки +bbb.sharedNotes.quickLink.label = Окно общих заметок +bbb.sharedNotes.createNoteWindow.label = Ðазвание заметки +bbb.sharedNotes.createNoteWindow.close.tooltip = Закрыть +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Закрыть диалоговое окно ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð¹ заметки +bbb.sharedNotes.typing.single = {0} печатает... +bbb.sharedNotes.typing.double = {0} и {1} печатают... +bbb.sharedNotes.typing.multiple = ÐеÑколько человек печатают... +bbb.sharedNotes.save.toolTip = Сохранить заметки в файл +bbb.sharedNotes.save.complete = Заметки Ñохранены уÑпешно +bbb.sharedNotes.save.ioerror = Заметки не Ñохранены. Попробуйте еще раз. +bbb.sharedNotes.save.htmlLabel = Форматированный текÑÑ‚ (.html) +bbb.sharedNotes.save.txtLabel = ПроÑтой текÑÑ‚ (.txt) +bbb.sharedNotes.new.label = Создать +bbb.sharedNotes.new.toolTip = Создать дополнительную заметку +bbb.sharedNotes.limit.label = ДоÑтигнут лимит заметок +bbb.sharedNotes.clear.label = ОчиÑтить Ñту заметку +bbb.sharedNotes.undo.toolTip = Отменить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ +bbb.sharedNotes.redo.toolTip = Повторить Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ +bbb.sharedNotes.toolbar.toolTip = Панель инÑтрументов Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ‚ÐµÐºÑта +bbb.sharedNotes.settings.toolTip = ÐаÑтройки общих заметок +bbb.sharedNotes.clearWarning.title = ОчиÑтка общих заметок +bbb.sharedNotes.clearWarning.message = Ðто дейÑтвие безвозвратно удалит заметки, размещенные на Ñтом окне, Ð´Ð»Ñ Ð²Ñех. Ð’Ñ‹ уверены, что хотите очиÑтить Ñти заметки? +bbb.sharedNotes.additionalNotes.closeWarning.title = Закрытие общих заметок +bbb.sharedNotes.additionalNotes.closeWarning.message = Ðто дейÑтвие безвозвратно удалит заметки, размещенные на Ñтом окне, Ð´Ð»Ñ Ð²Ñех. Ð’Ñ‹ уверены, что хотите закрыть Ñти заметки? +bbb.sharedNotes.messageLengthWarning.title = Превышен лимит Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ñимвола +bbb.sharedNotes.messageLengthWarning.text = Ваши Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¿Ñ€ÐµÐ²Ñ‹Ñили лимит на {0}. Попробуйте Ñделать меньше изменений. +bbb.sharedNotes.remaining.tooltip = ОÑтвшееÑÑ Ð¼ÐµÑто Ð´Ð»Ñ Ð¾Ð±Ñ‰Ð¸Ñ… заметок +bbb.sharedNotes.full.tooltip = ДоÑтигнут предел (попробуйте удалить чаÑÑ‚ÑŒ текÑта) bbb.settings.deskshare.instructions = Ðажмите кнопку 'Разрешить' на вÑплывающем окне, чтобы удоÑтоверитьÑÑ, что демонÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‡ÐµÐ³Ð¾ Ñтола работает корректно bbb.settings.deskshare.start = Проверить демонÑтрацию рабочего Ñтола bbb.settings.voice.volume = ÐктивноÑÑ‚ÑŒ микрофона -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = Ошибка верÑии Java +bbb.settings.java.text = У Ð’Ð°Ñ ÑƒÑтановлена Java {0}. Ð”Ð»Ñ Ð¸ÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ñ„ÑƒÐ½ÐºÑ†Ð¸Ð¾Ð½Ð°Ð»Ð° демонÑтрации рабочего Ñтола в BigBlueButton необходима, как минимум, верÑÐ¸Ñ {1}. Кнопка ниже уÑтановит поÑледнюю верÑию Java JRE. +bbb.settings.java.command = УÑтановить поÑледнюю верÑию Java bbb.settings.flash.label = Ошибка верÑии Flash -bbb.settings.flash.text = У Ð²Ð°Ñ ÑƒÑтановленный Flash верÑии {0}, но Ð´Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы BigBlueButton необходим Flash, по крайней мере, верÑии {1}. Ðажмите на кнопку нижу Ð´Ð»Ñ ÑƒÑтановки поÑледней верÑии Adobe Flash. +bbb.settings.flash.text = У Ð²Ð°Ñ ÑƒÑтановлен Flash верÑии {0}. Ð”Ð»Ñ ÐºÐ¾Ñ€Ñ€ÐµÐºÑ‚Ð½Ð¾Ð¹ работы BigBlueButton необходима, по крайней мере, верÑÐ¸Ñ {1}. Ðажмите на кнопку ниже Ð´Ð»Ñ ÑƒÑтановки поÑледней верÑии Adobe Flash. bbb.settings.flash.command = УÑтановить новейшую верÑию Flash bbb.settings.isight.label = Ошибка веб-камеры iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = ЕÑли у Ð’Ð°Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ñ‹ Ñ Ð²ÐµÐ±-камерой iSight, Ñто может быть ÑвÑзано Ñ Ñ‚ÐµÐ¼, что Ð’Ñ‹ иÑпользуете OS X 10.6.5, в которой еÑÑ‚ÑŒ извеÑÑ‚Ð½Ð°Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ð° при взаимодейÑтвии Flash Ñ Ð²ÐµÐ±-камерой iSight.\nЧтобы Ñто иÑправить, воÑпользуйтеÑÑŒ предложенной ÑÑылкой Ð´Ð»Ñ ÑƒÑтановки новой верÑии Flash-плеера или обновите Ваш Mac до новой верÑии. bbb.settings.isight.command = УÑтановить Flash 10.2 RC2 bbb.settings.warning.label = Предупреждение bbb.settings.warning.close = Закрыть Ñто предупреждение -bbb.settings.noissues = Ошибок не найдено. -bbb.settings.instructions = Разрешите Flash обращатьÑÑ Ðº веб-камере. ЕÑли вы видите и Ñлышите ÑебÑ, то ваш браузер наÑтроен корректно. Другие возможные ошибки и их Ñ€ÐµÑˆÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð²ÐµÐ´ÐµÐ½Ñ‹ ниже. ИÑÑледуйте их Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка возможных решений. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.settings.noissues = Ðикаких неразрешенных проблем не обнаружено. +bbb.settings.instructions = Разрешите Flash обращатьÑÑ Ðº Вашей веб-камере. ЕÑли вы видите и Ñлышите ÑебÑ, то ваш браузер наÑтроен корректно. Другие возможные проблемы перечиÑлены ниже. ПроÑмотрите их Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка возможных решений. +bbb.bwmonitor.title = Монитор Ñети +bbb.bwmonitor.upload = Загрузить +bbb.bwmonitor.upload.short = Вверх +bbb.bwmonitor.download = Скачать +bbb.bwmonitor.download.short = Вниз +bbb.bwmonitor.total = Ð’Ñего +bbb.bwmonitor.current = Текущий +bbb.bwmonitor.available = ДоÑтупно +bbb.bwmonitor.latency = Задержка ltbcustom.bbb.highlighter.toolbar.triangle = Треугольник ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Переключить курÑор на треугольник ltbcustom.bbb.highlighter.toolbar.line = Ð›Ð¸Ð½Ð¸Ñ @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Ð’Ñ‹ перешли на Ð¿Ð¾Ñ bbb.accessibility.chat.chatBox.navigatedLatestRead = Ð’Ñ‹ перешли к поÑледнему прочитанному Ñообщению. bbb.accessibility.chat.chatwindow.input = Ввод Ñообщений bbb.accessibility.chat.chatwindow.audibleChatNotification = Звуковое уведомление чата -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = Параметры публичного чата bbb.accessibility.chat.initialDescription = ПожалуйÑта, иÑпользуйте Ñтрелки клавиатуры Ð´Ð»Ñ Ð½Ð°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ð¸ по ÑообщениÑм в чате. bbb.accessibility.notes.notesview.input = Ввод примечаний @@ -655,7 +665,7 @@ bbb.shortcutkey.general.maximize.function = Развернуть текущее bbb.shortcutkey.flash.exit = 79 bbb.shortcutkey.flash.exit.function = Покинуть окно Flash bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Выкл./Вкл. ваш микрофон +bbb.shortcutkey.users.muteme.function = Выключить и включить Ваш микрофон bbb.shortcutkey.chat.chatinput = 73 bbb.shortcutkey.chat.chatinput.function = Перейти к окну чата bbb.shortcutkey.present.focusslide = 67 @@ -702,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Подогнать Ñлайды по bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Сделать выбранного Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð²ÐµÐ´ÑƒÑ‰Ð¸Ð¼ bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = ИÑключить выбранного Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· конференции +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Выкл./Вкл. мик. у выбранного учаÑтника bbb.shortcutkey.users.muteall = 65 @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Опубликовать bbb.polling.closeButton.label = Закрыть bbb.polling.customPollOption.label = СобÑтвенное голоÑование bbb.polling.pollModal.title = Текущие результаты опроÑа +bbb.polling.pollModal.hint = ОÑтавьте Ñто окно открытым, чтобы дать возможноÑÑ‚ÑŒ учаÑтникам ответить на опроÑ. Ðажатие на кнопку "Опубликовать" или "Закрыть" завершит опроÑ. bbb.polling.customChoices.title = ВвеÑти варианты Ð´Ð»Ñ Ð¾Ð¿Ñ€Ð¾Ñа bbb.polling.respondersLabel.novotes = Ожидание ответа bbb.polling.respondersLabel.text = {0} Пользователей откликнулиÑÑŒ @@ -773,8 +784,8 @@ bbb.polling.answer.G = G bbb.polling.results.accessible.header = Результаты голоÑÐ¾Ð²Ð°Ð½Ð¸Ñ bbb.polling.results.accessible.answer = Ответ {0} имеет {1} голоÑов. -bbb.publishVideo.startPublishBtn.labelText = Ðачать транÑлÑцию -bbb.publishVideo.changeCameraBtn.labelText = Изменить наÑтройки веб-камеры +bbb.publishVideo.startPublishBtn.labelText = Ðачать демонÑтрацию +bbb.publishVideo.changeCameraBtn.labelText = Сменить веб-камеру bbb.accessibility.alerts.madePresenter = Теперь вы ведущий. bbb.accessibility.alerts.madeViewer = Теперь вы учаÑтник. @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Применить наÑтройки блоки bbb.lockSettings.cancel = Отмена bbb.lockSettings.cancel.toolTip = Закрыть окно без ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Заблокировано модератором bbb.lockSettings.privateChat = Приватные ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ bbb.lockSettings.publicChat = Публичный чат bbb.lockSettings.webcam = Веб-камера +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Микрофон bbb.lockSettings.layout = Схема раÑÐ¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¾ÐºÐ¾Ð½ bbb.lockSettings.title=Блокировать зрителей @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Блокировать при входе bbb.users.breakout.breakoutRooms = Комнаты групповой работы bbb.users.breakout.updateBreakoutRooms = Обновить комнаты групповой работы +bbb.users.breakout.timerForRoom.toolTip = ОÑÑ‚Ð°Ð²ÑˆÐµÐµÑ Ð²Ñ€ÐµÐ¼Ñ Ð´Ð»Ñ Ñтой комнаты групповой работы bbb.users.breakout.timer.toolTip = Времени до Ð¾ÐºÐ¾Ð½Ñ‡Ð°Ð½Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ð¾Ð²Ð¾Ð¹ ÑеÑÑии bbb.users.breakout.calculatingRemainingTime = ПодÑчет оÑтавшегоÑÑ Ð²Ñ€ÐµÐ¼ÐµÐ½Ð¸ bbb.users.breakout.closing = Закрытие +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Комнаты bbb.users.breakout.roomsCombo.accessibilityName = КоличеÑтво комнат, которые будут Ñозданы bbb.users.breakout.room = ÐÑƒÐ´Ð¸Ñ‚Ð¾Ñ€Ð¸Ñ -bbb.users.breakout.randomAssign = РаÑпределить учаÑтников в Ñлучайном порÑдке bbb.users.breakout.timeLimit = Ограничение по времени bbb.users.breakout.durationStepper.accessibilityName = Временное ограничение в минутах bbb.users.breakout.minutes = Минут(Ñ‹) @@ -834,14 +848,14 @@ bbb.users.breakout.invite = ПриглаÑить bbb.users.breakout.close = Закрыть bbb.users.breakout.closeAllRooms = Закрыть вÑе групповые ÑеÑÑии bbb.users.breakout.insufficientUsers = ÐедоÑтаточно учаÑтников. ПомеÑтите в комнату Ñ…Ð¾Ñ‚Ñ Ð±Ñ‹ одного учаÑтника. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = ПриÑоединитьÑÑ Ðº комнате групповой работы +bbb.users.breakout.invited = Ð’Ñ‹ приглашены к учаÑтию в <b>Комнате групповой работы</b> +bbb.users.breakout.accept = ПринимаÑ, Ð’Ñ‹ автоматичеÑки отключитеÑÑŒ от аудио- и видеоконференций. +bbb.users.breakout.joinSession = ПодключитьÑÑ Ðº ÑеÑÑии +bbb.users.breakout.joinSession.accessibilityName = ПриÑоединитьÑÑ Ðº ÑеÑÑии комнаты групповой работы +bbb.users.breakout.joinSession.close.tooltip = Закрыть +bbb.users.breakout.joinSession.close.accessibilityName = Закрыть диалоговое окно приÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ðº комнате групповой работы +bbb.users.breakout.youareinroom = Ð’Ñ‹ находитеÑÑŒ в комнате групповой работы {0} bbb.users.roomsGrid.room = ÐÑƒÐ´Ð¸Ñ‚Ð¾Ñ€Ð¸Ñ bbb.users.roomsGrid.users = УчаÑтники bbb.users.roomsGrid.action = ДейÑтвие @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Передать аудио bbb.users.roomsGrid.join = ПриÑоединитьÑÑ bbb.users.roomsGrid.noUsers = Ð’ Ñтой аудитории нет ÑобеÑедников -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=Язык по умолчанию + +bbb.alert.cancel = Отменить +bbb.alert.ok = OK +bbb.alert.no = Ðет +bbb.alert.yes = Да diff --git a/bigbluebutton-client/locale/ru_lv/bbbResources.properties b/bigbluebutton-client/locale/ru_lv/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/ru_lv/bbbResources.properties +++ b/bigbluebutton-client/locale/ru_lv/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/si_LK/bbbResources.properties b/bigbluebutton-client/locale/si_LK/bbbResources.properties index c4b7fbd771cac67b1ca5239b39d0b55f02a6de6e..764777fb8b3a374e2bdcbcd3b7e8f43c466ea5a3 100644 --- a/bigbluebutton-client/locale/si_LK/bbbResources.properties +++ b/bigbluebutton-client/locale/si_LK/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = සේව෠දà·à¶ºà¶šà¶º සමග සම්බන්ධවීම -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = කනගà·à¶§à·”යි, අපට පරිගණක සේව෠දà·à¶ºà¶šà¶º සමග සම්බන්ධ වීය නොහà·à¶š -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = සටහන් කවුළුව විවෘචකිරීම -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = à·ƒà·à¶½à·à·ƒà·Šà¶¸ යළි පිහිටුවීම -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = ඔබ à·ƒà¶à·”à·€ ඇà¶à·Šà¶à·š BigBlueButton à·„à·’ පà·à¶»à¶«à·’ භà·à·‚෠පරිවර්à¶à¶±à¶ºà¶šà·Š විය à·„à·à¶š. bbb.oldlocalewindow.reminder2 = කරුණà·à¶šà¶» ඔබගේ බ්â€à¶»à·€à·Šà·ƒà¶»à¶ºà·š à¶à·à·€à¶šà·à¶½à·’ක මà¶à¶šà¶º මකà·à¶¯à¶¸à· නà·à·€à¶ උà¶à·Šà·ƒà·à·„ කරන්න. bbb.oldlocalewindow.windowTitle = අවවà·à¶¯à¶ºà¶ºà·’: පà·à¶»à¶«à·’ භà·à·‚෠පරිවර්à¶à¶± -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = ස්පීකරය පරීක්ෂ෠කිරීම bbb.micSettings.playSound.toolTip = ස්පීකරය පරීක්ෂ෠කිරීමේ හඬ à·€à·à¶¯à¶±à¶º කරන්න bbb.micSettings.hearFromHeadset = ඔබට හඬ à·à·Šâ€à¶»à·€à¶«à¶º විය යුà¶à·Šà¶à·š කන්යොමුව à¶à·”ලින් මිස පරිගණකයේ ස්පීකරයෙන් නොවේ. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = මයික්â€à¶»à·†à·à¶±à¶º වෙනස් කිරීම/පරීක්ෂ෠කිරීම -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = à·à·Šâ€à¶»à·€à·Šâ€à¶º පද්ධà¶à·’ය හ෠සම්බන්ධවීම -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = උදව් bbb.mainToolbar.logoutBtn = ඉවà¶à·Šà·€à·“ම -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = bbb.mainToolbar.settingsBtn = සකස් කිරීම් bbb.mainToolbar.settingsBtn.toolTip = සකස් කිරීම් විවෘචකිරීම -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ඉදිරිපà¶à·Š කිරීම -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = පෙර ස්ලයිඩය -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = ඊළඟ ස්ලයිඩය bbb.presentation.maxUploadFileExceededAlert = à·€à·à¶»à¶¯à·’: අනුමචප්â€à¶»à¶¸à·à¶±à¶ºà¶§ වඩ෠ගොනුව විà·à·à¶½à¶º. bbb.presentation.uploadcomplete = ආරà·à·„නය කරීම \tසම්පූර්ණයි. \tකරුණà·à¶šà¶» ලේඛනය පරිවර්à¶à¶±à¶º කරන à¶à·™à¶šà·Š මදක් රà·à¶³à·™à¶±à·Šà¶±. bbb.presentation.uploaded = ආරà·à·„නය විය. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = ඉදිරිපà¶à·Š කිරීමේ ගොනුව bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = bbb.fileupload.uploadBtn = ආරà·à·„නය bbb.fileupload.uploadBtn.toolTip = ගොනුව ආරà·à·„නය කිරීම bbb.fileupload.deleteBtn.toolTip = ඉදිරිපà¶à·Š කිරීම් මක෠දමන්න bbb.fileupload.showBtn = පෙන්වන්න -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = ඉදිරිපà¶à·Š කිරීම පෙන්වන්න -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = bbb.fileupload.progBarLbl = ප්â€à¶»à¶œà¶à·’ය: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = කà¶à· කරන්න -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = අකුරු පà·à¶§ -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = පණිවිඩය යවන්න -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = සියල්ල -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = bbb.chat.fontSize = අකුරු ප්â€à¶»à¶¸à·à¶±à¶º -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = හරි -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = අවලංගු කිරීම -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/sk_SK/bbbResources.properties b/bigbluebutton-client/locale/sk_SK/bbbResources.properties index 30c8b66a8c0eef5f6a5915d21dfe945d169cb949..29e127e834dd31bbf1541a4616e951527e8d121e 100644 --- a/bigbluebutton-client/locale/sk_SK/bbbResources.properties +++ b/bigbluebutton-client/locale/sk_SK/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Pripája sa ku serveru -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Ľutujeme, nepodarilo sa pripojiÅ¥ k serveru. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = OtvoriÅ¥ okno záznamov bbb.mainshell.meetingNotFound = Lekcia nenájdená bbb.mainshell.invalidAuthToken = Neplatná autentifikácia bbb.mainshell.resetLayoutBtn.toolTip = ResetovaÅ¥ rozmiestnenie bbb.mainshell.notification.tunnelling = Tunelovanie bbb.mainshell.notification.webrtc = WebRTC zvuk -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Je možné že máte starý preklad BigBlueButton-u. bbb.oldlocalewindow.reminder2 = VyÄistite vyrovnávaciu pamäť vášho prehliadaÄa a skúste znova. bbb.oldlocalewindow.windowTitle = Upozornenie: Starý preklad @@ -54,7 +54,7 @@ bbb.micSettings.cancel = ZruÅ¡iÅ¥ bbb.micSettings.connectingtoecho = Pripájanie bbb.micSettings.connectingtoecho.error = Chyba v skúške ozveny: ProsÃm kontaktujte administrátora. bbb.micSettings.cancel.toolTip = ZruÅ¡iÅ¥ pripojenie zvuku -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Nastavenia zvuku. Dokým nezatvorÃte okno, zvuk sa bude nastavovaÅ¥ tu. bbb.micSettings.webrtc.title = WebRTC podpora bbb.micSettings.webrtc.capableBrowser = Váš prehliadaÄ podporuje WebRTC. @@ -63,44 +63,45 @@ bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Kliknite sem, pokiaľ bbb.micSettings.webrtc.notCapableBrowser = WebRTC nie je podporovaný vaÅ¡Ãm prehlidaÄom. ProsÃm, použite Google Chrome (verzia 32 a vyÅ¡Å¡ie) alebo Mozilla Firefox (verzia 26 a vyÅ¡Å¡ie). Stále budete maÅ¥ možnosÅ¥ pridaÅ¥ sa k hlasovej konferencii použijúc Adobe Flash platformu. bbb.micSettings.webrtc.connecting = Volá bbb.micSettings.webrtc.waitingforice = Pripájanie -bbb.micSettings.webrtc.transferring = Transferring +bbb.micSettings.webrtc.transferring = bbb.micSettings.webrtc.endingecho = Pripájanie zvuku bbb.micSettings.webrtc.endedecho = Test ozveny ukonÄený. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox povolenia mikrofónu -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome povolenia mikrofónu -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Zvukové upozornenie bbb.micWarning.joinBtn.label = PridaÅ¥ sa aj tak bbb.micWarning.testAgain.label = VyskúšaÅ¥ znovu bbb.micWarning.message = Váš mikrofón nevykazuje žiadnu aktivitu, ostatnà úÄastnÃci vás pravdepodobne nebudú poÄas lekcie poÄuÅ¥. bbb.webrtcWarning.message = Zistený nasledovný problém s WebRTC: {0}. Chcete radÅ¡ej vyskúšaÅ¥ Flash? -bbb.webrtcWarning.title = WebRTC Audio Failure +bbb.webrtcWarning.title = bbb.webrtcWarning.failedError.1001 = Chyba 1001: WebSocket odpojený bbb.webrtcWarning.failedError.1002 = Chyba 1002: Nepodarilo sa vytvoriÅ¥ WebSocket pripojenie bbb.webrtcWarning.failedError.1003 = Chyba 1003: Nepodporovaná verzia prehliadaÄa -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) +bbb.webrtcWarning.failedError.1004 = bbb.webrtcWarning.failedError.1005 = Chyba 1005: Hovor neÄakane ukonÄený bbb.webrtcWarning.failedError.1006 = Chyba 1006: PreruÅ¡enie hovoru bbb.webrtcWarning.failedError.1007 = Chyba 1007: ICE jednanie zlyhalo -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = bbb.webrtcWarning.failedError.unknown = Chyba {0}: Neznámy kód chyby -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Nápoveda bbb.mainToolbar.logoutBtn = Odhlásenie bbb.mainToolbar.logoutBtn.toolTip = OdhlásiÅ¥ -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Výber jazyka bbb.mainToolbar.settingsBtn = Nastavenia bbb.mainToolbar.settingsBtn.toolTip = OtvoriÅ¥ nastavenia @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = SpustiÅ¥ nahrávanie bbb.mainToolbar.recordBtn.toolTip.stop = ZastaviÅ¥ nahrávanie bbb.mainToolbar.recordBtn.toolTip.recording = Lekcia je nahrávaná bbb.mainToolbar.recordBtn.toolTip.notRecording = Lekcia nie je nahrávaná -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = PotvrdiÅ¥ nahrávanie bbb.mainToolbar.recordBtn.confirm.message.start = Ste si istý, že chcete spustiÅ¥ nahrávanie lekcie? bbb.mainToolbar.recordBtn.confirm.message.stop = Ste si istý, že chcete zastaviÅ¥ nahrávanie lekcie? -bbb.mainToolbar.recordBtn..notification.title = NahraÅ¥ upozornenie -bbb.mainToolbar.recordBtn..notification.message1 = Túto lekciu si môžete nahraÅ¥. -bbb.mainToolbar.recordBtn..notification.message2 = MusÃte kliknúť na tlaÄidlo Zapnúť/Vypnúť nahrávanie v titulke na zaÄatie/ukonÄenie nahrávania. +bbb.mainToolbar.recordBtn.notification.title = NahraÅ¥ upozornenie +bbb.mainToolbar.recordBtn.notification.message1 = Túto lekciu si môžete nahraÅ¥. +bbb.mainToolbar.recordBtn.notification.message2 = MusÃte kliknúť na tlaÄidlo Zapnúť/Vypnúť nahrávanie v titulke na zaÄatie/ukonÄenie nahrávania. bbb.mainToolbar.recordingLabel.recording = (Nahrávanie) bbb.mainToolbar.recordingLabel.notRecording = Nenahráva sa -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = MinimalizovaÅ¥ bbb.window.maximizeRestoreBtn.toolTip = MaximalizovaÅ¥ bbb.window.closeBtn.toolTip = ZavrieÅ¥ @@ -171,8 +172,8 @@ bbb.users.settings.webcamSettings = Nastavenia webkamery bbb.users.settings.muteAll = StlmiÅ¥ vÅ¡etkých použÃvateľov bbb.users.settings.muteAllExcept = StlmiÅ¥ vÅ¡etkých použÃvateľov okrem prezentéra bbb.users.settings.unmuteAll = StlmiÅ¥ vÅ¡etkých užÃvateľov -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = bbb.users.roomMuted.text = Diváci stlmenà bbb.users.roomLocked.text = Diváci zamknutà bbb.users.pushToTalk.toolTip = HovoriÅ¥ @@ -180,7 +181,7 @@ bbb.users.pushToMute.toolTip = StlmiÅ¥ seba bbb.users.muteMeBtnTxt.talk = Vypnúť stlmenie bbb.users.muteMeBtnTxt.mute = StlmiÅ¥ bbb.users.muteMeBtnTxt.muted = Stlmený -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Zoznam užÃvateľov. Na navigáciu použite Å¡Ãpky bbb.users.usersGrid.nameItemRenderer = Meno bbb.users.usersGrid.nameItemRenderer.youIdentifier = Vy @@ -188,24 +189,24 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Kliknúť a spraviÅ¥ prezentérom bbb.users.usersGrid.statusItemRenderer.presenter = Prezentér bbb.users.usersGrid.statusItemRenderer.moderator = Moderátor -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Divák -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Médium bbb.users.usersGrid.mediaItemRenderer.talking = Hovorà bbb.users.usersGrid.mediaItemRenderer.webcam = Zdieľanie webkamery @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Vypnuté stlmenie {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Stlmenie {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Zamknúť {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Odomknúť {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = VyhodiÅ¥ {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Zdieľanie webkamery bbb.users.usersGrid.mediaItemRenderer.micOff = Vypnúť mikrofón bbb.users.usersGrid.mediaItemRenderer.micOn = Zapnúť mikrofón bbb.users.usersGrid.mediaItemRenderer.noAudio = NeprÃtomný v zvukovej konferencii -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentácia bbb.presentation.titleWithPres = Prezentácia: {0} bbb.presentation.quickLink.label = Okno prezentácie bbb.presentation.fitToWidth.toolTip = PrispôsobiÅ¥ prezentáciu Å¡Ãrke bbb.presentation.fitToPage.toolTip = PrispôsobiÅ¥ prezentáciu stránke bbb.presentation.uploadPresBtn.toolTip = NahraÅ¥ prezentáciu -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Predchádzajúca roleta. bbb.presentation.btnSlideNum.accessibilityName = Slajd {0} z {1} bbb.presentation.btnSlideNum.toolTip = VybraÅ¥ slajd @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Nahrávanie dokonÄené. ProsÃm Äakajte, pre bbb.presentation.uploaded = nahrané. bbb.presentation.document.supported = Nahratý súbor je podporovaný. ZaÄÃna sa konvertovaÅ¥... bbb.presentation.document.converted = Office dokument bol úspeÅ¡ne zkonvertovaný. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Chyba: Kontaktuje administrátora. bbb.presentation.error.security = BezpeÄnostná chyba: Kontaktuje administrátora. bbb.presentation.error.convert.notsupported = Chyba: Nahraný súbor nie je podporovaný. Nahrajte kompaktibilný súbor. @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = NahraÅ¥ bbb.fileupload.uploadBtn.toolTip = NahraÅ¥ súbor bbb.fileupload.deleteBtn.toolTip = OdstrániÅ¥ prezentáciu bbb.fileupload.showBtn = UkázaÅ¥ -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = UkázaÅ¥ prezentáciu -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Vytváranie náhľadu... bbb.fileupload.progBarLbl = Priebeh: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Pokec bbb.chat.quickLink.label = Okno chatu bbb.chat.cmpColorPicker.toolTip = Farba textu bbb.chat.input.accessibilityName = Pole úpravy chatovej správy bbb.chat.sendBtn.toolTip = OdoslaÅ¥ správu bbb.chat.sendBtn.accessibilityName = PoslaÅ¥ správu na chate -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = SkopÃrovaÅ¥ celý text bbb.chat.publicChatUsername = VÅ¡etky bbb.chat.optionsTabName = Možnosti bbb.chat.privateChatSelect = OznaÄte osobu s ktorou chcete zaviesÅ¥ osobný Pokec. -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Možnosti Pokecu bbb.chat.fontSize = VeľkosÅ¥ pÃsma bbb.chat.cmbFontSize.toolTip = VybraÅ¥ veľkosÅ¥ pÃsma chatovej správy -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = MinimalizovaÅ¥ okno chatu bbb.chat.maximizeRestoreBtn.accessibilityName = MaximalizovaÅ¥ okno chatu bbb.chat.closeBtn.accessibilityName = ZatvoriÅ¥ okno chatu bbb.chat.chatTabs.accessibleNotice = Nová správa v tomto okne. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = ZmeniÅ¥ webkameru bbb.publishVideo.changeCameraBtn.toolTip = OtvoriÅ¥ dialógové okno zmeny webkamery bbb.publishVideo.cmbResolution.tooltip = VybraÅ¥ rozlÃÅ¡enie webkamery bbb.publishVideo.startPublishBtn.labelText = ZaÄaÅ¥ zdieľanie bbb.publishVideo.startPublishBtn.toolTip = ZaÄaÅ¥ zdieľanie -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} +bbb.publishVideo.startPublishBtn.errorName = bbb.webcamPermissions.chrome.title = Chrome povolenia pre webkameru -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Základňa videa bbb.videodock.quickLink.label = Okno webkamery bbb.video.minimizeBtn.accessibilityName = MinimalizovaÅ¥ okno webkamier @@ -361,95 +364,97 @@ bbb.video.publish.hint.waitingApproval = ÄŒakajúce na potvrdenie bbb.video.publish.hint.videoPreview = Náhľad videa bbb.video.publish.hint.openingCamera = NaÄÃtava kameru bbb.video.publish.hint.cameraDenied = PrÃstup webkamery bol zamietnutý -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Zverejňovanie... bbb.video.publish.closeBtn.accessName = ZatvoriÅ¥ dialógové okno nastavenà webkamery bbb.video.publish.closeBtn.label = ZruÅ¡iÅ¥ bbb.video.publish.titleBar = PublikovaÅ¥ okno webkamery -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = PrestaÅ¥ poÄúvaÅ¥ lekciu bbb.toolbar.phone.toolTip.unmute = ZaÄaÅ¥ poÄúvaÅ¥ lekciu bbb.toolbar.phone.toolTip.nomic = Mikrofón nebol nájdený -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = ZdieľaÅ¥ webkameru bbb.toolbar.video.toolTip.stop = UkonÄiÅ¥ zdieľanie webkamery +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = PridaÅ¥ vlastné rozloženie do zoznamu -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = ZmeniÅ¥ rozloženie bbb.layout.loadButton.toolTip = NaÄÃtaÅ¥ rozloženia zo súboru bbb.layout.saveButton.toolTip = UložiÅ¥ rozloženia do súboru @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = PoužiÅ¥ rozloženie bbb.layout.combo.custom = * Vlastné rozloženie bbb.layout.combo.customName = Vlastné rozloženie bbb.layout.combo.remote = Vzdialený -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Rozloženia boli úspeÅ¡ne uložené +bbb.layout.save.ioerror = bbb.layout.load.complete = Rozloženia boli úspeÅ¡ne naÄÃtané -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Prednastavené rozloženie -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Video chat bbb.layout.name.webcamsfocus = Lekcia s webkamerou bbb.layout.name.presentfocus = Lekcia s prezentáciou -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asistent lekcie bbb.layout.name.lecture = Lekcia -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = ZvýrazňovaÄ bbb.highlighter.toolbar.pencil.accessibilityName = Prepnúť kurzor na tabuli na ceruzku bbb.highlighter.toolbar.ellipse = Kruh @@ -492,97 +500,99 @@ bbb.highlighter.toolbar.color = VybraÅ¥ farbu bbb.highlighter.toolbar.color.accessibilityName = Farba kreslenia na tabuli bbb.highlighter.toolbar.thickness = ZmeniÅ¥ hrúbku bbb.highlighter.toolbar.thickness.accessibilityName = Hrúbka kreslenia na tabuľu -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Boli ste odhlásený +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serverová aplikácia bola vypnutá. bbb.logout.asyncerror = Vyskytla sa Async chyba bbb.logout.connectionclosed = Pripojenie k serveru bolo ukonÄené -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Pripojenie k serveru bolo odmietnuté bbb.logout.invalidapp = NenaÅ¡la sa žiadna red5 aplikácia bbb.logout.unknown = Váš klient stratil pripojenie so serverom -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Boli ste odhlásený z konferencie -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Pokiaľ toto odhlásenie bolo neÄakané, kliknite na tlaÄidlo nižšie kvôli znovupripojeniu. bbb.logout.refresh.label = Znovu pripojiÅ¥ -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = PotvrdiÅ¥ odhlásenie bbb.logout.confirm.message = Ste si istý, že sa chcete odhlásiÅ¥? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Ãno bbb.logout.confirm.no = Nie -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Poznámky bbb.notes.cmpColorPicker.toolTip = Farba textu bbb.notes.saveBtn = UložiÅ¥ bbb.notes.saveBtn.toolTip = UložiÅ¥ poznámku -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Kliknite na tlaÄidlo PovoliÅ¥ v riadku, ktorý sa objavà pre uistenie, že zdieľanie pracovnej plochy funguje správne pre Vás bbb.settings.deskshare.start = SkontrolovaÅ¥ Zdieľanie plochy bbb.settings.voice.volume = Aktivita mikrofónu -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Chybná verzia Flashového prehrávaÄa bbb.settings.flash.text = Máte nainÅ¡talovaný Flash prehrávaÄ {0}, ale potrebujete minimálne verziu {1} aby ste prehraÅ¥ BigBlueButton. Kliknite na tlaÄÃtko nižšie pre inÅ¡taláciu najnovÅ¡ieho Adobe Flash prehrávaÄa. bbb.settings.flash.command = NainÅ¡talovaÅ¥ najnovÅ¡Ã Flash player bbb.settings.isight.label = Chyba iSight kamery -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = NainÅ¡talovaÅ¥ Flash 10.2 RC2 bbb.settings.warning.label = Upozornenie bbb.settings.warning.close = ZavrieÅ¥ toto upozornenie bbb.settings.noissues = Neboli nájdené žiadne výnimoÄné problémy\n bbb.settings.instructions = Prijmite výzvu Flash-u, ktorý od vás pýta povolenie prÃstupu na kameru. Ak môžete vidieÅ¥ sami seba a poÄuje sa, tak váš prehliadaÄ je správne nastavený. Iné možné problémy sú uvedené nižšie. Kliknite na každý aby ste naÅ¡li možné rieÅ¡enie. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = TrojuholnÃk ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Prepnúť kurzor na tabuli na trojuholnÃk ltbcustom.bbb.highlighter.toolbar.line = Priamka @@ -591,34 +601,34 @@ ltbcustom.bbb.highlighter.toolbar.text = Text ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Prepnúť kurzor na tabuli na text ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Farba textu ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = VeľkosÅ¥ pÃsma -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = bbb.accessibility.chat.chatBox.reachedFirst = Obdržali ste prvú správu bbb.accessibility.chat.chatBox.reachedLatest = Obdržali ste poslednú správu @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Dostali ste sa k prvej správe. bbb.accessibility.chat.chatBox.navigatedLatest = Dostali ste sa k poslednej správe. bbb.accessibility.chat.chatBox.navigatedLatestRead = Dostali ste sa k posledne preÄÃtanej správe. bbb.accessibility.chat.chatwindow.input = Vstúp do chatu -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = ProsÃm použite Å¡Ãpky na navigáciu v chatových správach bbb.accessibility.notes.notesview.input = Vstup do poznámok bbb.shortcuthelp.title = Klávesové skratky -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = MinimalizovaÅ¥ okno pomocnÃka klávesových skratiek bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = MaximalizovaÅ¥ okno pomocnÃka klávesových skratiek bbb.shortcuthelp.closeBtn.accessibilityName = ZatvoriÅ¥ okno pomocnÃka klávesových skratiek -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Globálne skratky bbb.shortcuthelp.dropdown.presentation = PrezentaÄné skratky bbb.shortcuthelp.dropdown.chat = Chatové skratky bbb.shortcuthelp.dropdown.users = UžÃvateľské skratky -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = Skratka bbb.shortcuthelp.headers.function = Funkcia @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = MinimalizovaÅ¥ aktuálne okno bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = MaximalizovaÅ¥ aktuálne okno -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = ZaostriÅ¥ mimo Flash okna bbb.shortcutkey.users.muteme = 7 bbb.shortcutkey.users.muteme.function = Stlmte a vypnite stlmenie vášho mikrofónu @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Presunúť zaostrenie na okno prezentácie bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Presunúť zaostrenie na okno chatu -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = OtvoriÅ¥ okno zdieľania obrazovky @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = OdhlásiÅ¥ sa z tejto lekcie bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Zdvihnúť ruku -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = NahraÅ¥ prezentáciu bbb.shortcutkey.present.previous = 6 bbb.shortcutkey.present.previous.function = ChoÄ na predchádzajúci slajd @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = ÃsÅ¥ na ÄalÅ¡Ã slajd bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = PrispôsobiÅ¥ slajdy na Å¡Ãrku -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = PrispôsobiÅ¥ slajdy stránke -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = UrobiÅ¥ vybranú osobu prezentérom -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = VyhodiÅ¥ vybranú osobu z lekcie +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = StlmiÅ¥ alebo vypnúť stlmenie vybranej osoby bbb.shortcutkey.users.muteall = 6 bbb.shortcutkey.users.muteall.function = StlmiÅ¥ alebo vypnúť stlmenie vÅ¡etkých užÃvateľov bbb.shortcutkey.users.muteAllButPres = 6 bbb.shortcutkey.users.muteAllButPres.function = StlmiÅ¥ každého okrem prezentéra -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = ZaostriÅ¥ na záložku chatu -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = ZaostriÅ¥ na výber farby pÃsma bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = PoslaÅ¥ správu na chate -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = Pre navigáciu v správe musÃte zaostriÅ¥ na okno chatu. @@ -746,32 +756,33 @@ bbb.shortcutkey.chat.chatbox.goread.function = NavigovaÅ¥ k posledne preÄÃtane bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = DoÄasný kláves na odstránenie chýb -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = PublikovaÅ¥ bbb.polling.closeButton.label = ZavrieÅ¥ -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Ãno bbb.polling.answer.No = Nie -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = ZaÄaÅ¥ zdieľanie bbb.publishVideo.changeCameraBtn.labelText = ZmeniÅ¥ webkameru @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = ZatvoriÅ¥ vÅ¡etky videá bbb.users.settings.lockAll = Zamknúť vÅ¡etkých užÃvateľov bbb.users.settings.lockAllExcept = Zamknúť vÅ¡etkých užÃvateľov okrem prezentéra bbb.users.settings.lockSettings = Zamknúť divákov ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Odomknúť vÅ¡etkých divákov bbb.users.settings.roomIsLocked = Prednastavene zamknuté bbb.users.settings.roomIsMuted = Prednastavene stlmené @@ -802,102 +813,59 @@ bbb.lockSettings.save.tooltip = PoužiÅ¥ nastavenia zámku bbb.lockSettings.cancel = ZruÅ¡iÅ¥ bbb.lockSettings.cancel.toolTip = ZatvoriÅ¥ okno bez ukladania +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Zamknutie moderátorom bbb.lockSettings.privateChat = Súkromný chat bbb.lockSettings.publicChat = Verejný chat bbb.lockSettings.webcam = Webkamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofón bbb.lockSettings.layout = Rozmiestnenie bbb.lockSettings.title=Zamknúť užÃvateľov bbb.lockSettings.feature=Prvok bbb.lockSettings.locked=Zamknutý -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/sl_SI/bbbResources.properties b/bigbluebutton-client/locale/sl_SI/bbbResources.properties index 8b4b6c1aa72cc1586bcb1b2b296342d336296d8e..65156430feeacdf91e9d302b4275d14bfc4d7472 100644 --- a/bigbluebutton-client/locale/sl_SI/bbbResources.properties +++ b/bigbluebutton-client/locale/sl_SI/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Povezujem se s strežnikom -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Oprostite, ne moremo se povezati s strežnikom. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Odpri beležno okno -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Ponastavite razporeditev -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = MogoÄe imate stare prevode BigBlueButton-a. bbb.oldlocalewindow.reminder2 = Prosimo, poÄistite predpomnilnik vaÅ¡ega brskalnika, ter poskusite ponovno. bbb.oldlocalewindow.windowTitle = Pozor: Stari jezikovni prevodi -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = bbb.micSettings.playSound = Predvajaj testni zvok -bbb.micSettings.playSound.toolTip = Play music to test your speakers +bbb.micSettings.playSound.toolTip = bbb.micSettings.hearFromHeadset = Zvok bi morali zasliÅ¡ati v vaÅ¡ih sluÅ¡alkah in ne iz zvoÄnikov. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Spremeni mikrofon -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Združi avdio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = PomoÄ bbb.mainToolbar.logoutBtn = Izpis -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = bbb.mainToolbar.settingsBtn = Nastavitve bbb.mainToolbar.settingsBtn.toolTip = Odpri nastavitve -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Predstavitev -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = PrejÅ¡nji diapozitiv. -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = Naslednji diapozitiv bbb.presentation.maxUploadFileExceededAlert = Napaka: Velikost datoteke presega omejitev velikosti. bbb.presentation.uploadcomplete = Nalaganje zakljuÄeno. Prosimo poÄakajte, medtem ko pretvorimo dokument. bbb.presentation.uploaded = naloženo. bbb.presentation.document.supported = Naloženi dokument je podprt. ZaÄenjam pretvorbo... bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO Napaka: Prosimo, kontaktirajte skrbnika. bbb.presentation.error.security = Varnostna napaka: Prosimo, kontaktirajte skrbnika. bbb.presentation.error.convert.notsupported = Napaka: Naložena datoteka ni podprta. Prosimo naložite podprto vrsto datoteke. bbb.presentation.error.convert.nbpage = Napaka: V naloženem dokumentu nismo mogli preÅ¡teti strani. bbb.presentation.error.convert.maxnbpagereach = Napaka: Naložena datoteka vsebuje preveÄ strani. bbb.presentation.converted = Konvertirane {0} od {1} strani. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Prezentacijska datoteka bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT bbb.presentation.uploadwindow.image = SLIKA -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = bbb.fileupload.title = Naložite predstavitev -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = bbb.fileupload.selectBtn.toolTip = Brskaj datoteko bbb.fileupload.uploadBtn = Naloži bbb.fileupload.uploadBtn.toolTip = Naloži datoteko bbb.fileupload.deleteBtn.toolTip = IzbriÅ¡ite predstavitev bbb.fileupload.showBtn = Prikaži -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Prikaži predstavitev -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Ustvarjam predoglede.. bbb.fileupload.progBarLbl = Napredek: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Klepet -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = Barva besedila -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = PoÅ¡lji sporoÄilo -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Vse -bbb.chat.optionsTabName = Options +bbb.chat.optionsTabName = bbb.chat.privateChatSelect = Izberite osebo, s katero želite zasebno klepetati -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Možnosti klepeta bbb.chat.fontSize = Velikost pisave -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = bbb.publishVideo.startPublishBtn.toolTip = PriÄnite z deljenjem -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Video dock -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = OznaÄevalec -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = Krog -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = Pravokotnik -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = Izberite barvo -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = Spremeni debelino -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = The server app has been shut down bbb.logout.asyncerror = Pojavila se je Async napaka bbb.logout.connectionclosed = Povezava s strežnikom je bila prekinjena -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Povezava s strežnikom je bila zavrnjena bbb.logout.invalidapp = The red5 app does not exist bbb.logout.unknown = VaÅ¡a stranka je izgubila povezavo s strežnikom -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Izpisali ste se iz konference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Click Allow on the prompt that pops up to check that desktop sharing is working properly for you bbb.settings.deskshare.start = Preverite deljenje namizja bbb.settings.voice.volume = Dejavnost mikrofona -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash version error bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. Click on the button bellow to install the newest Adobe Flash version. bbb.settings.flash.command = Namestite najnovejÅ¡i Flash bbb.settings.isight.label = iSight napaka kamere -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Namestite Flash 10.2 RC2 bbb.settings.warning.label = Opozorilo bbb.settings.warning.close = Zapri opozorilo bbb.settings.noissues = Zasledene ni bilo nobene izjemne težave. bbb.settings.instructions = Accept the Flash prompt that asks you for camera permissions. If you can see yourself and hear yourself, your browser has been set up correctly. Other potentials issues are shown bellow. Click on each to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Zapri -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/sq/bbbResources.properties b/bigbluebutton-client/locale/sq/bbbResources.properties index 37cabc2345ef3bc79deb3b3d638c436ee2c894e0..d374ba88b5c2ee0fcfd4004363c8185e2c861c80 100644 --- a/bigbluebutton-client/locale/sq/bbbResources.properties +++ b/bigbluebutton-client/locale/sq/bbbResources.properties @@ -1,33 +1,33 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Duke u lidhur me serverin -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Na vjen keq, nuk mund te lidhemi me serverin -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Hapni faqen per tu loguar bbb.mainshell.meetingNotFound = Mbledhja nuk u gjet bbb.mainshell.invalidAuthToken = Fjale jo e sakte autentikimi bbb.mainshell.resetLayoutBtn.toolTip = Rregullo paraqitjen bbb.mainshell.notification.tunnelling = Tunnelling bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Ju mund te jeni duke perdorur nje perkthim te vjeter per BigBlueButton bbb.oldlocalewindow.reminder2 = Ju lutemi pastroni kutine e kerkimit dhe provojeni perseri bbb.oldlocalewindow.windowTitle = Kujdes: Perkthim i vjeter bbb.audioSelection.title = Si doni qe ti bashkoheni audios? bbb.audioSelection.btnMicrophone.label = Mikrofon -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone +bbb.audioSelection.btnMicrophone.toolTip = bbb.audioSelection.btnListenOnly.label = Vetem degjo -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only +bbb.audioSelection.btnListenOnly.toolTip = bbb.audioSelection.txtPhone.text = Per tju bashkuar kesaj mbledhje me ane te telefonit shtypni, : {0} pastaj vendosni {1} si kod pin per konferencen. bbb.micSettings.title = Testi i audios bbb.micSettings.speakers.header = Testoni bokset @@ -36,7 +36,7 @@ bbb.micSettings.playSound = Testoni bokset bbb.micSettings.playSound.toolTip = Luani muzik qe te testoni bokset bbb.micSettings.hearFromHeadset = Ju duhet te degjoni me kufje, jo nga bokset e kompjuterit bbb.micSettings.speakIntoMic = Nese po perdorni kufje, ju duhet te degjoni audion nga kofjet tuaja -- jo nga bokset e kompjuterit. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = Po bbb.micSettings.echoTestAudioNo = Jo bbb.micSettings.speakIntoMicTestLevel = Flisni ne mikrofonin tuaj. Ju duhet te shihni treguesin te levize. Nese jo, zgjidhni nje mikrofon tjeter. @@ -46,7 +46,7 @@ bbb.micSettings.changeMic.toolTip = Hapni kutine e konfigurimit per flash player bbb.micSettings.comboMicList.toolTip = Zgjidhni nje mikrofon bbb.micSettings.micRecordVolume.label = Shtim bbb.micSettings.micRecordVolume.toolTip = Shtoni mikrofonin tuaj -bbb.micSettings.nextButton = Next +bbb.micSettings.nextButton = bbb.micSettings.nextButton.toolTip = Filloni testimin e zerit bbb.micSettings.join = Bashkohuni me audio bbb.micSettings.join.toolTip = Bashkohuni ne konferencen audio @@ -54,7 +54,7 @@ bbb.micSettings.cancel = Anullo bbb.micSettings.connectingtoecho = Duke u lidhur bbb.micSettings.connectingtoecho.error = Gabim: Ju lutem kontaktoni administratorin. bbb.micSettings.cancel.toolTip = Anulo aksesin ne konferencen audio -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Konfigurimi i zerit. Fokusimi do te rri hapur tek konfigurimi i zerit deri sa faqja e fokusimit do te mbyllet bbb.micSettings.webrtc.title = WebRTC Suport bbb.micSettings.webrtc.capableBrowser = Browseri juaj suporton WebRTC. @@ -66,41 +66,42 @@ bbb.micSettings.webrtc.waitingforice = Duke u lidhur bbb.micSettings.webrtc.transferring = Duke u transferuar bbb.micSettings.webrtc.endingecho = Duke u bashkuar audios bbb.micSettings.webrtc.endedecho = Testi i degjimit mbaroi. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox lejimet per mikrofonat -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Chrome Lejimet per mikrofonat -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Paralajmerim per audion bbb.micWarning.joinBtn.label = Bashkojuni gjithsesi bbb.micWarning.testAgain.label = TTesto perseri bbb.micWarning.message = Mikrofoni juaj nuk tregoi asnje aktivitet, te tjeret me shume mundesi nuk do jene ne gjendje tju degjojne gjate sesionit. bbb.webrtcWarning.message = Percaktoni problemin WebRTC me poshte: {0}. Deshironi te perdorni Flash ne vend te saj? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = bbb.webrtcWarning.failedError.1004 = Gabim 1004: Gabim ne thirrje(arsye={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly +bbb.webrtcWarning.failedError.1005 = bbb.webrtcWarning.failedError.1006 = Gabim 1006: Ndodhi nje tiomeout -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed +bbb.webrtcWarning.failedError.1007 = bbb.webrtcWarning.failedError.1008 = Gabim 1008: Transferimi deshtoi -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = bbb.webrtcWarning.failedError.mediamissing = Nuk gjendet mikrofoni per thirrjen WebRTC bbb.webrtcWarning.failedError.endedunexpectedly = Testimi i WebRTC perfundoi ne menyre te papritur -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Ndihme bbb.mainToolbar.logoutBtn = Dilni nga llogaria bbb.mainToolbar.logoutBtn.toolTip = Dil -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Zgjidhni Gjuhen bbb.mainToolbar.settingsBtn = Konfigurim bbb.mainToolbar.settingsBtn.toolTip = Hapni konfigurimin @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = Fillo rregjistrimet bbb.mainToolbar.recordBtn.toolTip.stop = Ndalo rregjistrimet bbb.mainToolbar.recordBtn.toolTip.recording = Sesioni po rregjistrohet bbb.mainToolbar.recordBtn.toolTip.notRecording = Sesioni nuk po rregjistrohet -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Konfirmo rregjistrimin bbb.mainToolbar.recordBtn.confirm.message.start = Jeni te sigurt qe doni te filloni rregjistrimin e sesionit? bbb.mainToolbar.recordBtn.confirm.message.stop = Jeni te sigurt qe doni te mbaroni rregjistrimin e sesionit? -bbb.mainToolbar.recordBtn..notification.title = Rregjistroni njoftimet -bbb.mainToolbar.recordBtn..notification.message1 = Ju mund te rregjistroni kete mbledhje. -bbb.mainToolbar.recordBtn..notification.message2 = Ju duhet te klikoni ne butonin Fillo/Mbaro ne shiritin e titullit per te filluar/mbaruar rregjistrimin. +bbb.mainToolbar.recordBtn.notification.title = Rregjistroni njoftimet +bbb.mainToolbar.recordBtn.notification.message1 = Ju mund te rregjistroni kete mbledhje. +bbb.mainToolbar.recordBtn.notification.message2 = Ju duhet te klikoni ne butonin Fillo/Mbaro ne shiritin e titullit per te filluar/mbaruar rregjistrimin. bbb.mainToolbar.recordingLabel.recording = (Duke rregjistruar) bbb.mainToolbar.recordingLabel.notRecording = Nuk po rregjistron -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Njoftimet per konfigurimet bbb.clientstatus.notification = Njoftimet e palexuara -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = bbb.clientstatus.tunneling.message = Firewall pengon klientin tuaj qe te lidhet direkt ne porten 1935 te serverit remote. Rekomandohet qe te lidhet ne nje rrjet me pak strikt per nje lidhje me stabel. bbb.clientstatus.browser.title = Versioni i browserit -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = bbb.clientstatus.flash.message = Flash Player ({0}) eshte out-of-date. Rekomandohet te merret versioni me i fundit. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Rekomandohet perdorimi i Firefox ose Chrome per audio me te mire -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimizo bbb.window.maximizeRestoreBtn.toolTip = Maksimizo bbb.window.closeBtn.toolTip = Mbyll @@ -171,8 +172,8 @@ bbb.users.settings.webcamSettings = Konfigurimi i kameras bbb.users.settings.muteAll = Mbyll zerin per te gjithe perdoruesit bbb.users.settings.muteAllExcept = Mbyll zerin per te gjithe perdoruesit pervec Mesuesit bbb.users.settings.unmuteAll = Komuniko me te gjithe perdoruesit -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = bbb.users.roomMuted.text = Shikueseve iu hoq zeri bbb.users.roomLocked.text = Shikuesit u kycen bbb.users.pushToTalk.toolTip = Flisni @@ -188,24 +189,24 @@ bbb.users.usersGrid.statusItemRenderer = Statusi bbb.users.usersGrid.statusItemRenderer.changePresenter = Kliko per ta bere prezantues bbb.users.usersGrid.statusItemRenderer.presenter = Mesuesi bbb.users.usersGrid.statusItemRenderer.moderator = Moderatori -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Shikues -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Media bbb.users.usersGrid.mediaItemRenderer.talking = Flisni bbb.users.usersGrid.mediaItemRenderer.webcam = Ndani Kameran @@ -214,40 +215,41 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Degjoni {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mos degjoni bbb.users.usersGrid.mediaItemRenderer.pushToLock = Kyc {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Shkyc {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Gjuaj {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Ndani Kameran bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofoni eshte i fikur bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofoni eshte i ndezur bbb.users.usersGrid.mediaItemRenderer.noAudio = Jo ne mesim me ze -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezantim bbb.presentation.titleWithPres = Prezantim:{0} bbb.presentation.quickLink.label = Dritarja e prezantimit bbb.presentation.fitToWidth.toolTip = Pershtat prezantimin me gjeresine bbb.presentation.fitToPage.toolTip = Pershtat prezantimin me faqen bbb.presentation.uploadPresBtn.toolTip = Ngarko prezantimin -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Faqja pararendese -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = Zgjidhni faqen e prezantimit bbb.presentation.forwardBtn.toolTip = Faqja tjeter bbb.presentation.maxUploadFileExceededAlert = Gabim: Dokumenti eshte me i madh se sa lejohet @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Ngarkimi u krye: Ju lutemi prisni seri sa te k bbb.presentation.uploaded = U ngarkua bbb.presentation.document.supported = Ddokumenti eshte ngarkur. Ka filluar te pershtatet bbb.presentation.document.converted = Pershtatja e dokumentit u krye me sukses -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Gabim: Ju lutemi te kontaktoni administratorin bbb.presentation.error.security = Gabim sigurie: Ju lutemi kontaktoni administratorin bbb.presentation.error.convert.notsupported = Gabim: Dokumenti qe kerkuat te pershtatet nuk ngarkohet. Ju lutemi ngarkoni dokumentin ne menyre qe te perputhet @@ -283,70 +285,71 @@ bbb.fileupload.uploadBtn = Ngarko bbb.fileupload.uploadBtn.toolTip = Ngarko materialin e zgjedhur bbb.fileupload.deleteBtn.toolTip = Fshini prezantimin bbb.fileupload.showBtn = Trego -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Trego prezantimin -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Gjeneroni bbb.fileupload.progBarLbl = Progresi: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = catoni bbb.chat.quickLink.label = Dritarja e chatit bbb.chat.cmpColorPicker.toolTip = Ngjyra e tekstit bbb.chat.input.accessibilityName = komuniko ne fushen e ndryshimeve bbb.chat.sendBtn.toolTip = Dergo mesazh bbb.chat.sendBtn.accessibilityName = Dergoni nje mesazh ne chat -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopjoni gjithe tekstin bbb.chat.publicChatUsername = Publike bbb.chat.optionsTabName = Opsionet bbb.chat.privateChatSelect = Zgjidhni personi qe deshironi te komunikoni privatisht -bbb.chat.private.userLeft = The user has left. +bbb.chat.private.userLeft = bbb.chat.private.userJoined = Perdoruesi i eshte bashkuar grupit -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Opsionet e chatit bbb.chat.fontSize = Madhesia e germave ne mesazhet e chatit bbb.chat.cmbFontSize.toolTip = Selekto madhesine e shkrimit per mesazhet e chatit -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimizo faqen e chatit bbb.chat.maximizeRestoreBtn.accessibilityName = Maksimizo faqen e chatit bbb.chat.closeBtn.accessibilityName = Mbyll faqen e chatit bbb.chat.chatTabs.accessibleNotice = Mesazhe te reja ne kete faqe -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Ndrysho kameran bbb.publishVideo.changeCameraBtn.toolTip = habni kutine e dialogut per te ndryshuar kameran bbb.publishVideo.cmbResolution.tooltip = Zgjidhni rezulucionin e kameras bbb.publishVideo.startPublishBtn.labelText = Filloni te shperndani bbb.publishVideo.startPublishBtn.toolTip = Filloni te shperndani pamjet nga kamera juaj -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Kamerat bbb.videodock.quickLink.label = Dritarja e Kamerave bbb.video.minimizeBtn.accessibilityName = Minimizoni faqen e kameras @@ -361,95 +364,97 @@ bbb.video.publish.hint.waitingApproval = Duke pritur per aprovim bbb.video.publish.hint.videoPreview = Shikim paraprak i kameras bbb.video.publish.hint.openingCamera = Duke hapur kameran bbb.video.publish.hint.cameraDenied = Nuk lejohet hyrja ne kamera -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Publiko bbb.video.publish.closeBtn.accessName = Mbyll kutine e konfigurimit te kameras bbb.video.publish.closeBtn.label = Anullo bbb.video.publish.titleBar = Publikoni faqen e kameras -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Ndaloni degjimin e konferences bbb.toolbar.phone.toolTip.unmute = Filloni te degjoni konferencen bbb.toolbar.phone.toolTip.nomic = Nuk u gjet asnje mikrofon -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Ndani kameren tuaj bbb.toolbar.video.toolTip.stop = Mos ndani me kameren tuaj +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Shtoni paraqitjen e zakonshme ne liste -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Ndryshoni paraqitjen e faqes tuaj bbb.layout.loadButton.toolTip = Ngarkoni nga nje dokument bbb.layout.saveButton.toolTip = Ruaj paraqitjen ne nje dokument @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Aplikoni paraqitjen bbb.layout.combo.custom = * Paraqitje e personalizuar bbb.layout.combo.customName = Paraqitje e personalizuar bbb.layout.combo.remote = E larget -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Paraqitja u ruajt me sukses +bbb.layout.save.ioerror = bbb.layout.load.complete = Paraqitja u ngarkua me sukses -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.load.failed = +bbb.layout.sync = bbb.layout.name.defaultlayout = Paraqitja e zakonshme -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = bbb.layout.name.webcamsfocus = Mbledhje me kamer bbb.layout.name.presentfocus = Mbledhje per prezantim -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asistent i lektorit bbb.layout.name.lecture = Leksioni -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Laps bbb.highlighter.toolbar.pencil.accessibilityName = Ndryshoni kursorin e derrases se bardhe ne laps bbb.highlighter.toolbar.ellipse = rreth @@ -492,97 +500,99 @@ bbb.highlighter.toolbar.color = Zgjidhni ngjyrat bbb.highlighter.toolbar.color.accessibilityName = Shenues me ngjyre per derrasen e bardhe bbb.highlighter.toolbar.thickness = Ndrysho trashesine bbb.highlighter.toolbar.thickness.accessibilityName = Vizato trashesine ne derrasen e bardhe -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Doli nga sistemi +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Ne rregull bbb.logout.appshutdown = Aplikacioni server eshte fikur bbb.logout.asyncerror = Ka ndodhur nje gabim bbb.logout.connectionclosed = Lidhja me serverin eshte mbyllur -bbb.logout.connectionfailed = The connection to the server has ended +bbb.logout.connectionfailed = bbb.logout.rejected = Lidhja me serverin eshte refuzuar bbb.logout.invalidapp = Aplikacioni red5 nuk ekziston bbb.logout.unknown = Klienti juaj ka humbur lidhjen me serverin -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Ju keni dale nga konferencave -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Konfirmoni daljen bbb.logout.confirm.message = Jeni te sigurt qe doni te dilni? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Po bbb.logout.confirm.no = Jo -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = Shenime bbb.notes.cmpColorPicker.toolTip = Ngjyra e tekstit bbb.notes.saveBtn = Ruaj bbb.notes.saveBtn.toolTip = Ruaj shenimet -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Zgjidhni Lejo ne faqen qe del per te kontrolluar qe ndarja e ekranit punon sic duhet bbb.settings.deskshare.start = Kontrollo ndarjen e ekranit bbb.settings.voice.volume = Aktiviteti i mikrofonit -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Gabim ne versionin e Flash bbb.settings.flash.text = Ju keni Flash {0} te instaluar, por ju duhet te pakten versioni {1} per te punuar si duhet me BigBlueButton.Butoni me poshte do te instaloje versionin me te ri te Adobe Flash bbb.settings.flash.command = Instalo versionin me te ri te Flash bbb.settings.isight.label = iSight gabim me kameren -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instalo Flash 10.2 RC2 bbb.settings.warning.label = Lajmerim bbb.settings.warning.close = Mbyllni kete lajmerim bbb.settings.noissues = Nuk jane zbuluar ceshtje te pazgjidhura. bbb.settings.instructions = Prononi njoftimin e Flash qe ju kerkon leje per kameren. Nese rezultati perkon me ate qe pritet, browseri juaj eshte sic duhet. Ceshtje te tjera te mundshme jane me poshte. Kontrollojini qe te gjeni nje zgjidhje. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Trekendesh ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Ndryshoni kursorin e derrases se bardhe ne trekendesh ltbcustom.bbb.highlighter.toolbar.line = Vije @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Tekst ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Ndryshoni kursorin e derrases se bardhe ne tekst ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Ngjyra e tekstit ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = mdhesia e shkrimit -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Gati @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = Ju keni naviguar der ne mesazhi bbb.accessibility.chat.chatBox.navigatedLatest = Ju keni naviguar der ne mesazhin e fundit. bbb.accessibility.chat.chatBox.navigatedLatestRead = Ju keni naviguar der ne mesazhin me te fundit qe keni lexuar. bbb.accessibility.chat.chatwindow.input = Hyrja e chat-it -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Ju lutem perdorni shigjetat per te levizuar ne mesazh. bbb.accessibility.notes.notesview.input = Hyrja per shenimer bbb.shortcuthelp.title = Mjetet e shkurtimit -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimizoni faqen e ndihmes per nje rruge me te shkurter bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maksimizo faqen e ndihmes per nje rruge me te shkurter bbb.shortcuthelp.closeBtn.accessibilityName = Mbyll faqen e ndihmes per nje rruge me te shkurter -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = Ndihme per nje rruge me te shkurter globale bbb.shortcuthelp.dropdown.presentation = Ndihme per nje rruge me te shkurter ne prezantim bbb.shortcuthelp.dropdown.chat = Ndihme per nje rruge me te shkurter ne chat bbb.shortcuthelp.dropdown.users = Perdor Ndihme per nje rruge me te shkurter -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = nje rruge me te shkurter bbb.shortcuthelp.headers.function = Fuksioni @@ -652,7 +662,7 @@ bbb.shortcutkey.general.minimize.function = Minimizo faqen aktuale bbb.shortcutkey.general.maximize = 187 bbb.shortcutkey.general.maximize.function = Maksimizo faqen aktuale -bbb.shortcutkey.flash.exit = 79 +bbb.shortcutkey.flash.exit = bbb.shortcutkey.flash.exit.function = Fokusohu jashte dritares se Flash bbb.shortcutkey.users.muteme = 77 bbb.shortcutkey.users.muteme.function = Hiqi dhe veri zerin mikrofonit tuaj @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Zhvendose fokusin ne dritaren e prezantimit bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Zhvendose fokusin ne dritaren e chat-it -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Hap dritaren e ndarjes se ekranit @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Dilni jashte nga kjo klase bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Ngrini doren -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Ngarkoni prezantimin bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Shkoni ne faqen e meparme @@ -696,38 +706,38 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Shkoni ne faqen tjeter te prezantimit bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = pershtat ne gjeresi -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Pershtat ne faqe -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Perzgjith personin per te prezantuar -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Perjashto personin e perzgjedhur nga klasa +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Blloko ose zhblloko personin e perzgjedhur bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Blloko ose zhblloko te gjithe perdoruesit bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = bllokoi te gjithe pervec mesuesit -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Fokusohu ne etiketat e chatit -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Fokusohu ne zgjedhjen e ngjyres se shkrimit. bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Dergoni nje mesazh ne chat -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = bbb.shortcutkey.chat.explanation = ---- bbb.shortcutkey.chat.explanation.function = Per te kontrolluar mesazhet duhet te fokusoheni tek kutia e chatit @@ -746,32 +756,33 @@ bbb.shortcutkey.chat.chatbox.goread.function = Navigoni ne mesazhin e fundit qe bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Kontroll i perkohshem per gabime -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = bbb.polling.publishButton.label = Publiko bbb.polling.closeButton.label = Mbyll -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = Po bbb.polling.answer.No = Jo -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Filloni te shperndani bbb.publishVideo.changeCameraBtn.labelText = Ndrysho kameran @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Mbyllni te gjitha videot bbb.users.settings.lockAll = Kycni te gjithe perdoruesit bbb.users.settings.lockAllExcept = Kycni te gjithe perdoruesit pervec prezantuesit bbb.users.settings.lockSettings = Kyc shikuesit ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Shkyc te gjithe shikuesit bbb.users.settings.roomIsLocked = I kycur paraprakisht bbb.users.settings.roomIsMuted = Pa ze paraprakisht @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Apliko parametrat e kycjes bbb.lockSettings.cancel = Anullo bbb.lockSettings.cancel.toolTip = Mbyll kete dritare pa e ruajtur +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Kycja e moderatorit bbb.lockSettings.privateChat = Chat privat bbb.lockSettings.publicChat = Chat publik bbb.lockSettings.webcam = Kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofoni bbb.lockSettings.layout = Paraqitja bbb.lockSettings.title=Kyc shikuesit @@ -813,91 +826,46 @@ bbb.lockSettings.feature=Parametra bbb.lockSettings.locked=E kycur bbb.lockSettings.lockOnJoin=Kycet ne lidhje -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/sr_RS/bbbResources.properties b/bigbluebutton-client/locale/sr_RS/bbbResources.properties index 70e44623031d51ca18075b8ddb2584220d92ccd3..3bef40ade2d21602e75977521b5c64158184002b 100644 --- a/bigbluebutton-client/locale/sr_RS/bbbResources.properties +++ b/bigbluebutton-client/locale/sr_RS/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Povezuje se sa serverom -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Nažalost nije moguće uspostaviti vezu sa serverom. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Otvori log prozor bbb.mainshell.meetingNotFound = Nije pronadjena sesija bbb.mainshell.invalidAuthToken = Nevažeći kod za autentifikaciju bbb.mainshell.resetLayoutBtn.toolTip = Resetuj izgled bbb.mainshell.notification.tunnelling = Tunel bbb.mainshell.notification.webrtc = WebRTC zvuk -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Moguće imate staru verziju prevoda. bbb.oldlocalewindow.reminder2 = Molimo ispraznite keÅ¡ pretraživaÄa i pokuÅ¡ajte ponovo. bbb.oldlocalewindow.windowTitle = Upozorenje: Stara verzija prevoda @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Povezivanje bbb.micSettings.webrtc.transferring = Prebacivanje bbb.micSettings.webrtc.endingecho = PrikljuÄivanje zvuka bbb.micSettings.webrtc.endedecho = Kraj eho testa. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Dozvole za mikrofon Firefox-a -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Dozvole Chrome mikrofona -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = ZvuÄno upozorenje bbb.micWarning.joinBtn.label = PriljuÄi se svakako bbb.micWarning.testAgain.label = Ponovi test @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC eho test se iznenada za bbb.webrtcWarning.connection.dropped = WebRTC konekcija je izgubljena bbb.webrtcWarning.connection.reconnecting = PokuÅ¡aj ponovnog povezivanja bbb.webrtcWarning.connection.reestablished = WebRTC konekcija je ponovo uspostavljena -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Pomoć bbb.mainToolbar.logoutBtn = Odjava bbb.mainToolbar.logoutBtn.toolTip = Odjava -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Odaberi jezik bbb.mainToolbar.settingsBtn = PodeÅ¡avanja bbb.mainToolbar.settingsBtn.toolTip = Otvori podeÅ¡avanja @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = ZapoÄni snimanje bbb.mainToolbar.recordBtn.toolTip.stop = Zaustavi snimanje bbb.mainToolbar.recordBtn.toolTip.recording = Sesija se snima bbb.mainToolbar.recordBtn.toolTip.notRecording = Sesija se ne snima -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Potvrdi snimanje bbb.mainToolbar.recordBtn.confirm.message.start = Da li ste sigurni da želite da zapoÄnete snimanje ove sesije? bbb.mainToolbar.recordBtn.confirm.message.stop = Da li ste sigurni da želite da prekinete snimanje sesije? -bbb.mainToolbar.recordBtn..notification.title = Zabeleži obaveÅ¡tenje -bbb.mainToolbar.recordBtn..notification.message1 = Možete da snimite ovu sesiju. -bbb.mainToolbar.recordBtn..notification.message2 = Morate da klinknete na dugme Zapocni/Zaustavi snimanje u traci naziva kako biste zapoÄeli/zaustavili snimanje. +bbb.mainToolbar.recordBtn.notification.title = Zabeleži obaveÅ¡tenje +bbb.mainToolbar.recordBtn.notification.message1 = Možete da snimite ovu sesiju. +bbb.mainToolbar.recordBtn.notification.message2 = Morate da klinknete na dugme Zapocni/Zaustavi snimanje u traci naziva kako biste zapoÄeli/zaustavili snimanje. bbb.mainToolbar.recordingLabel.recording = (Snimanje) bbb.mainToolbar.recordingLabel.notRecording = Ne snima -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = ObaveÅ¡tenja o konfiguraciji bbb.clientstatus.notification = NeproÄitana obaveÅ¡tenja bbb.clientstatus.close = Zatvori @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = VaÅ¡ pretraživaÄ ({0}) nije ažuriran. Pre bbb.clientstatus.flash.title = Flash Player bbb.clientstatus.flash.message = Plug-in ({0}) VaÅ¡eg Flash Player-a nije ažuriran. PreporuÄuje se ažuriranje na najnoviju verziju. bbb.clientstatus.webrtc.title = Zvuk -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = PreporuÄuje se korišćenje Firefox-a ili Chrom-a zbog boljeg zvuka. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Smanji bbb.window.maximizeRestoreBtn.toolTip = RaÅ¡iri bbb.window.closeBtn.toolTip = Zatvori @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Status bbb.users.usersGrid.statusItemRenderer.changePresenter = Klikni da dodeliÅ¡ ulogu predavaÄa bbb.users.usersGrid.statusItemRenderer.presenter = PredavaÄ bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Brisanje statusa bbb.users.usersGrid.statusItemRenderer.viewer = PosmatraÄ bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Deljenje web kamere @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Ponovo ukljuÄi {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = IskljuÄi {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = ZakljuÄaj {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = OdkljuÄaj {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Izbaci {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Deli web kameru bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon iskljuÄen bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon ukljuÄen bbb.users.usersGrid.mediaItemRenderer.noAudio = Nije prisutan na audio konferenciji -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Brisanje -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Prezentacija bbb.presentation.titleWithPres = Prezentacija: {0} bbb.presentation.quickLink.label = Prozor prezentacije bbb.presentation.fitToWidth.toolTip = Prilagodi presentaciju po Å¡irini bbb.presentation.fitToPage.toolTip = Prilagodi prezentaciju po stranici bbb.presentation.uploadPresBtn.toolTip = UÄitaj prezentaciju -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Prethodni slajd bbb.presentation.btnSlideNum.accessibilityName = Slajd {0} od {1} bbb.presentation.btnSlideNum.toolTip = Odaberi slajd @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Prebacivanje kompletno. Molimo saÄekajte dok bbb.presentation.uploaded = prebaÄen. bbb.presentation.document.supported = PrebaÄeni dokument je podržan. PoÄinje konvertovanje... bbb.presentation.document.converted = UspeÅ¡no konvertovan office dokument. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = bbb.presentation.error.document.convert.invalid = Molim vas da prvo konvertujete dokument u PDF format. bbb.presentation.error.io = IO greÅ¡ka: Molimo kontaktirajte administratora. bbb.presentation.error.security = Sigurnosna greÅ¡ka: Molimo kontaktirajte administratora. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Prebaci bbb.fileupload.uploadBtn.toolTip = Prebaci datoteku bbb.fileupload.deleteBtn.toolTip = IzbriÅ¡i prezentaciju bbb.fileupload.showBtn = Prikaži -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Prikaži prezentaciju -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = GeneriÅ¡i sliÄice. bbb.fileupload.progBarLbl = Progres: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Ćaskanje bbb.chat.quickLink.label = Prozor Äeta bbb.chat.cmpColorPicker.toolTip = Boja teksta bbb.chat.input.accessibilityName = Polje za ureÄ‘ivanje poruke u Äetu bbb.chat.sendBtn.toolTip = PoÅ¡alji poruku bbb.chat.sendBtn.accessibilityName = PoÅ¡alji poruku na Äetu -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Kopiraj sav tekst bbb.chat.publicChatUsername = Javno bbb.chat.optionsTabName = Opcije @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = Odaberi korisnike za otvaranje privatnog bbb.chat.chatOptions = PodeÅ¡avanja ćaskanja bbb.chat.fontSize = VeliÄina fonta bbb.chat.cmbFontSize.toolTip = Odaberi veliÄinu fonta za poruke u Äetu -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Umanjite prozor za Äet bbb.chat.maximizeRestoreBtn.accessibilityName = ProÅ¡irite prozor za Äet bbb.chat.closeBtn.accessibilityName = Zatvori prozor Äeta bbb.chat.chatTabs.accessibleNotice = Nova poruka u novom tabu bbb.chat.chatMessage.systemMessage = Sistem -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Poruka je za {0} karakter(a) predugaÄka bbb.publishVideo.changeCameraBtn.labelText = Promeni web kameru bbb.publishVideo.changeCameraBtn.toolTip = Otvori dijalog prozor promene web kamere @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = ZapooÄni deljenje bbb.publishVideo.startPublishBtn.toolTip = PoÄni da deliÅ¡ tvoju web kameru bbb.publishVideo.startPublishBtn.errorName = Nije moguće deliti web kameru: Razlog : {0} bbb.webcamPermissions.chrome.title = Dozvole Chrome web kamera -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Web kamere bbb.videodock.quickLink.label = Prozor web kamera bbb.video.minimizeBtn.accessibilityName = Umanji prozor web kamere @@ -367,14 +370,15 @@ bbb.video.publish.closeBtn.accessName = Zatvori prozor dijaloga web kamere bbb.video.publish.closeBtn.label = Odustani bbb.video.publish.titleBar = Objavljivanje prozora web kamere bbb.video.streamClose.toolTip = Zatvori prenos za : {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = Deljenje ekrana: Prikaz predavaÄa bbb.screensharePublish.pause.tooltip = Pauziraj deljenje ekrana bbb.screensharePublish.pause.label = Pauziraj -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = Ne možete raÅ¡iriti ovaj prozor. bbb.screensharePublish.closeBtn.toolTip = Zaustavi deljenje i zatvori -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Smanji bbb.screensharePublish.minimizeBtn.accessibilityName = Umanji prozor objavljivanja ekrana deljenja bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = ProÅ¡iri prozor objavljivanja deljenja ekrana @@ -416,40 +420,41 @@ bbb.screensharePublish.startFailed.label = Nije detektovan poÄetak deljenja ekr bbb.screensharePublish.restartFailed.label = Nije detektovan ponovni poÄetak deljenja ekrana. bbb.screensharePublish.jwsCrashed.label = Aplikacija deljenja ekrana se neoÄekivano zatvorila. bbb.screensharePublish.commonErrorMessage.label = Odaberi 'Odustani' i pokuÅ¡aj ponovo. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = bbb.screensharePublish.cancelButton.label = Odustani bbb.screensharePublish.startButton.label = ZapoÄni bbb.screensharePublish.stopButton.label = Zaustavi -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Deljenje ekrana bbb.screenshareView.fitToWindow = Prilagodi prozoru bbb.screenshareView.actualSize = Prikaži stvarnu veliÄinu bbb.screenshareView.minimizeBtn.accessibilityName = Umanji prozor prikaza deljenja ekrana bbb.screenshareView.maximizeRestoreBtn.accessibilityName = ProÅ¡iri prozor prikaza deljenja ekrana bbb.screenshareView.closeBtn.accessibilityName = Zatvori prozor prikaza deljenja ekrana -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = Onemogući Zvuk bbb.toolbar.phone.toolTip.mute = Prestani sa sluÅ¡anjem konferencije bbb.toolbar.phone.toolTip.unmute = PoÄni da sluÅ¡aÅ¡ konfeenciju bbb.toolbar.phone.toolTip.nomic = Mikrofon nije detektovan -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window +bbb.toolbar.deskshare.toolTip.start = bbb.toolbar.deskshare.toolTip.stop = Prekini deljenje svog ekrana -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Podeli svoju web kameru bbb.toolbar.video.toolTip.stop = Prekini deljenje svoje web kamere +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Dodaj prilagoÄ‘en prikaz na listu -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Promeni svoj prikaz bbb.layout.loadButton.toolTip = UÄitaj izgled iz datoteke bbb.layout.saveButton.toolTip = SaÄuvaj izgled u datoteku @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Primeni izgled bbb.layout.combo.custom = * PrilagoÄ‘eni izgled bbb.layout.combo.customName = PrilagoÄ‘eni prikaz bbb.layout.combo.remote = Udaljeni -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Izgledi su uspeÅ¡no saÄuvani +bbb.layout.save.ioerror = bbb.layout.load.complete = Izgledii su uspeÅ¡no uÄitani bbb.layout.load.failed = Izgled nije moguće uÄitati -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Podrazumevani izgled bbb.layout.name.closedcaption = Zatvoren natpis bbb.layout.name.videochat = Video Äet bbb.layout.name.webcamsfocus = Sesija sa web kamerom bbb.layout.name.presentfocus = Sesija sa prezentacijom -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Asistent predavanja bbb.layout.name.lecture = Predavanje -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Olovka bbb.highlighter.toolbar.pencil.accessibilityName = Promeni kursor na tabli u olovku bbb.highlighter.toolbar.ellipse = Kružnica @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Izaberi boju bbb.highlighter.toolbar.color.accessibilityName = Boja markera na tabli bbb.highlighter.toolbar.thickness = Promeni debljinu bbb.highlighter.toolbar.thickness.accessibilityName = Debljina ispisa na tabli -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Odjavljen +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = Serverska aplikacija je iskljuÄena bbb.logout.asyncerror = DoÅ¡lo je do greÅ¡ke u sinhronizaciji @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Veza sa serverom je prekinuta bbb.logout.rejected = Konekcija sa serverom odbaÄena bbb.logout.invalidapp = red5 aplikacija ne postoji bbb.logout.unknown = Izgubljena veza sa serverom -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = UspeÅ¡no ste izaÅ¡li iz konferencije bbb.logour.breakoutRoomClose = VaÅ¡ pretraživaÄ Ä‡e biti zatvoren -bbb.logout.ejectedFromMeeting = Moderator Vas je izbacio sa sesije. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Ako ste se sluÄajno odjavili, kliknite dugme ispod da biste se ponovo povezali. bbb.logout.refresh.label = Poveži se ponovo -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Potvrdi odjavu bbb.logout.confirm.message = Da li ste sigurni da želite da se odjavite? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Da bbb.logout.confirm.no = Ne -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Detektovani problemi prilikom povezivanja bbb.connection.reconnecting=Ponovno povezivanje bbb.connection.reestablished=Konekcija je ponovno uspostavljena @@ -530,59 +539,60 @@ bbb.notes.title = Napomene bbb.notes.cmpColorPicker.toolTip = Boja teksta bbb.notes.saveBtn = SaÄuvaj bbb.notes.saveBtn.toolTip = SaÄuvaj napomenu -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Odaberi opciju Dozvoli koja iskaÄe kako biste proverili da li deljenje radne povrÅ¡ine ispravno funkcioniÅ¡e bbb.settings.deskshare.start = OznaÄi podelu radne ploÄe bbb.settings.voice.volume = Aktivnost mikrofona -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = GreÅ¡ka u Flash verziji bbb.settings.flash.text = Imate instaliran Flash {0}, a vama je potrebna makar verzija {1}, da bi BigBlueButtor ispravno funkcionisao. Kliknite na dugme ispod, kako biste instalirali najnoviju verziju Adobe Flash-a. bbb.settings.flash.command = Instaliraj najnoviji Flash bbb.settings.isight.label = GreÅ¡ka sa iSight web kamerom -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Instaliraj Flash 10.2 RC2 bbb.settings.warning.label = Upozorenje bbb.settings.warning.close = Zatvori ovo upozorenje bbb.settings.noissues = Nema pronaÄ‘enih otvorenih stavki. bbb.settings.instructions = Prihvatite Flash zahtev koji traži dozvolu korišćenja kamere. Ako možete da vidite i Äujete sebe, VaÅ¡ pretraživaÄ je podeÅ¡en ispravno. Druge potencijalne mogućnosti su prikazane ispod. Kliknite na svaku kako biste naÅ¡li moguće reÅ¡enje. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = Trougao ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Promeni kursor na tabli u trougao ltbcustom.bbb.highlighter.toolbar.line = Linija @@ -592,7 +602,7 @@ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Promeni kursor table ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Boja teksta ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = VeliÄina fonta bbb.caption.window.title = Zatvoren natpis -bbb.caption.quickLink.label = Closed Caption Window +bbb.caption.quickLink.label = bbb.caption.window.titleBar = Zatvoreni prozor trake natpisa bbb.caption.window.minimizeBtn.accessibilityName = Umanji zatvoren prozor natpisa bbb.caption.window.maximizeRestoreBtn.accessibilityName = RaÅ¡iri zatvoren prozor natpisa @@ -600,8 +610,8 @@ bbb.caption.transcript.noowner = Nijedan bbb.caption.transcript.youowner = Ti bbb.caption.transcript.pastewarning.title = Upozorenje nalepljenog natpisa bbb.caption.transcript.pastewarning.text = Nije moguće nalepiti tekst koji je duži od {0} karaktera. Nalepili ste {1} karaktera. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = bbb.caption.option.label = Opcije bbb.caption.option.language = Jezik bbb.caption.option.language.tooltip = Odaberi jezik natpisa @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = DoÅ¡li ste do poslednje poruke bbb.accessibility.chat.chatBox.navigatedLatestRead = DoÅ¡li ste do poslednje proÄitane poruke bbb.accessibility.chat.chatwindow.input = Unos Äeta bbb.accessibility.chat.chatwindow.audibleChatNotification = ObaveÅ¡tenje sa Äeta koje je moguće Äuti -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Koristite strelice za navigaciju kroz poruke na Äetu bbb.accessibility.notes.notesview.input = Unos napomena bbb.shortcuthelp.title = PreÄice -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Smanji prozor za pomoć sa preÄicama bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = RaÅ¡iri prozor za pomoć sa preÄicama bbb.shortcuthelp.closeBtn.accessibilityName = Zatvori prozor za pomoć sa preÄicama -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = OpÅ¡te preÄice bbb.shortcuthelp.dropdown.presentation = PreÄice za prezentaciju bbb.shortcuthelp.dropdown.chat = PreÄice za Äet bbb.shortcuthelp.dropdown.users = KorisniÄke preÄice -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = PreÄica bbb.shortcuthelp.headers.function = Funkcija @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Pomeri fokus na prozor prezentacije bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Pomeri fokus na prozor Äeta -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Otvori prozor deljenja radne povrÅ¡ine @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Odjavi se sa sesije bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Podigni ruku -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = UÄitaj prezentaciju bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Idi na prethodni slajd @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Idi na sledeći slajd bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Prilagodi slajdove po Å¡irini -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Prilagodi slajdove po stranici -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Dodeli odabranoj osobi ulogu predavaÄa -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Izbaci odabranu osobu sa sesije +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = IskljuÄi ton ili ponovo ukljuÄi zvuk odabranoj osobi bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = IskljuÄi ton ili ponovo ukljuÄi zvuk svima bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = IskljuÄi zvuk svima osim predavaÄu -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Fokusiraj na tab Äeta -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Fokusiraj na biraÄ boje fonta bbb.shortcutkey.chat.sendMessage = 83 @@ -746,8 +756,8 @@ bbb.shortcutkey.chat.chatbox.goread.function = Navigacija na poslednju proÄitan bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = Brza preÄica za trenutno ispravku greÅ¡ke -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = PoÄetak ankete bbb.polling.startButton.label = ZapoÄni anketu @@ -755,6 +765,7 @@ bbb.polling.publishButton.label = Objavljivanje bbb.polling.closeButton.label = Zatvori bbb.polling.customPollOption.label = PrilagoÄ‘ena anketa... bbb.polling.pollModal.title = Aktuelni rezultati ankete +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Unesi izbore ankete bbb.polling.respondersLabel.novotes = ÄŒekaju se odgovori bbb.polling.respondersLabel.text = {0} korisnika je odgovorilo @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Primeni podeÅ¡avanja zakljuÄavanja bbb.lockSettings.cancel = Odustani bbb.lockSettings.cancel.toolTip = Zatvori ovaj prozor bez Äuvanja +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = ZakljuÄvanje moderatora bbb.lockSettings.privateChat = Privatni Äet bbb.lockSettings.publicChat = Javni Äet bbb.lockSettings.webcam = Web kamera +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Mikrofon bbb.lockSettings.layout = Izgled bbb.lockSettings.title=ZakljuÄaj posmatraÄe @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Pridruživanje je zakljuÄano bbb.users.breakout.breakoutRooms = Sobe za predah bbb.users.breakout.updateBreakoutRooms = Ažuriraj sobe za predah +bbb.users.breakout.timerForRoom.toolTip = bbb.users.breakout.timer.toolTip = Isteklo vreme za sobe za predah bbb.users.breakout.calculatingRemainingTime = ProraÄunavanje preostalog vremena... bbb.users.breakout.closing = prekidanje +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Sobe bbb.users.breakout.roomsCombo.accessibilityName = Broj soba za kreiranje bbb.users.breakout.room = Soba -bbb.users.breakout.randomAssign = Dodeli korisnike nasumiÄno bbb.users.breakout.timeLimit = Vremensko ograniÄenje bbb.users.breakout.durationStepper.accessibilityName = Vremensko ograniÄenje u minutima bbb.users.breakout.minutes = Minuti @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Pozovi bbb.users.breakout.close = Zatvori bbb.users.breakout.closeAllRooms = Zatvori sve sobe za predah bbb.users.breakout.insufficientUsers = Nedovoljan broj korisnika. Morate postaviti makar jednog korisnika u sobu za predah -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = Soba bbb.users.roomsGrid.users = Korisnici bbb.users.roomsGrid.action = Akcija @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Prebaci zvuk bbb.users.roomsGrid.join = PrikljuÄi se bbb.users.roomsGrid.noUsers = Nema korisnika u ovoj sobi -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/sv_SE/bbbResources.properties b/bigbluebutton-client/locale/sv_SE/bbbResources.properties index 30e022ff5f3f5e9f6ef8f17c1bc8a98194472366..c3b29c4b54eabf92458f7019a0bf80e931d34817 100644 --- a/bigbluebutton-client/locale/sv_SE/bbbResources.properties +++ b/bigbluebutton-client/locale/sv_SE/bbbResources.properties @@ -1,159 +1,160 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Ansluter till server -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Beklagar, servern kan inte nÃ¥s. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Öppna loggfönster -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Ã…terställ layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Du har antagligen en översättning för BigBlueButton som är gammal. bbb.oldlocalewindow.reminder2 = Vänligen rensa webbläsarens cacheminne och försök igen. bbb.oldlocalewindow.windowTitle = Varning: översättningsfilerna är förÃ¥ldrade -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = bbb.micSettings.speakers.header = Testa högtalare -bbb.micSettings.microphone.header = Test Microphone +bbb.micSettings.microphone.header = bbb.micSettings.playSound = Testa högtalare bbb.micSettings.playSound.toolTip = Spela testmusik i högtalarna bbb.micSettings.hearFromHeadset = Du ska nu höra ljud i ditt headset, inte i dina datorhögtalare -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Testa eller ändra mikrofon bbb.micSettings.changeMic.toolTip = Öppna dialogrutan för flashspelarens mikrofoninställningar -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Anslut med ljud -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = bbb.micSettings.access.title = Ljudinställningar. Ljudinställningar kommer vara aktiva tills fönstret stängs. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Hjälp bbb.mainToolbar.logoutBtn = Logga ut -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Välj sprÃ¥k bbb.mainToolbar.settingsBtn = Inställningar bbb.mainToolbar.settingsBtn.toolTip = Öppna inställningar -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Minimera bbb.window.maximizeRestoreBtn.toolTip = Maximera bbb.window.closeBtn.toolTip = Stäng @@ -162,92 +163,93 @@ bbb.presentation.titleBar = Titelrad presentation bbb.chat.titleBar = Titelrad chatt bbb.users.title = Användare{0} {1} bbb.users.titleBar = Titelrad användare -bbb.users.quickLink.label = Users Window +bbb.users.quickLink.label = bbb.users.minimizeBtn.accessibilityName = Minimera användarfönster bbb.users.maximizeRestoreBtn.accessibilityName = Maximera användarfönster bbb.users.settings.buttonTooltip = Inställningar -bbb.users.settings.audioSettings = Audio Test +bbb.users.settings.audioSettings = bbb.users.settings.webcamSettings = Webbkamerainställningar bbb.users.settings.muteAll = Inaktivera ljud för alla användare bbb.users.settings.muteAllExcept = Inaktivera ljud för alla användare förutom presentatör bbb.users.settings.unmuteAll = Aktivera ljud för alla användare -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = Prata bbb.users.pushToMute.toolTip = Avaktivera min mikrofon bbb.users.muteMeBtnTxt.talk = Aktivera min mikrofon bbb.users.muteMeBtnTxt.mute = Avaktivera mikrofon bbb.users.muteMeBtnTxt.muted = Tystad -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names +bbb.users.usersGrid.contextmenu.exportusers = bbb.users.usersGrid.accessibilityName = Användarlista. Använd piltangenter för att navigera. bbb.users.usersGrid.nameItemRenderer = Namn bbb.users.usersGrid.nameItemRenderer.youIdentifier = du bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter +bbb.users.usersGrid.statusItemRenderer.changePresenter = bbb.users.usersGrid.statusItemRenderer.presenter = Presentatör bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = bbb.users.usersGrid.statusItemRenderer.viewer = Visningsprogram -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = bbb.users.usersGrid.mediaItemRenderer = Media bbb.users.usersGrid.mediaItemRenderer.talking = Talar bbb.users.usersGrid.mediaItemRenderer.webcam = Delar webbkamera bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Visa webbkamera bbb.users.usersGrid.mediaItemRenderer.pushToTalk = bbb.users.usersGrid.mediaItemRenderer.pushToMute = Avaktivera mikrofon {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Avlägsna {0} +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Delar webbkamera bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon avstängd bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon pÃ¥slagen bbb.users.usersGrid.mediaItemRenderer.noAudio = Inte i ljudkonferens -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Presentation bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = FöregÃ¥ende bild -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} +bbb.presentation.btnSlideNum.accessibilityName = bbb.presentation.btnSlideNum.toolTip = Välj en bild bbb.presentation.forwardBtn.toolTip = Nästa bild bbb.presentation.maxUploadFileExceededAlert = Fel: Filstorleken är större än vad som är tillÃ¥tett @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Filuppladdning genomförd. Vänligen vänta ti bbb.presentation.uploaded = Uppladdad. bbb.presentation.document.supported = Det uppladdade dokumentet stöds, startar konvertering... bbb.presentation.document.converted = Konverteringen av dokumentet lyckades. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Fel: vänligen kontakta administratören. bbb.presentation.error.security = Säkerhetsfel: vänligen kontakta administratören. bbb.presentation.error.convert.notsupported = Fel: det uppladdade dokumentet stöds inte. Vänligen ladda upp en fil i kompatibelt format. @@ -264,8 +266,8 @@ bbb.presentation.error.convert.nbpage = Fel: misslyckades med att fastställa an bbb.presentation.error.convert.maxnbpagereach = Fel: det uppladdade dokumentet bestÃ¥r av för mÃ¥nga sidor. bbb.presentation.converted = {0} av {1} sidor konverterade. bbb.presentation.slider = ZoomningsnivÃ¥ för presentation -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = Presentationsfil bbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD @@ -276,79 +278,80 @@ bbb.presentation.minimizeBtn.accessibilityName = Minimera presentationsfönstret bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximera presentationsfönstret bbb.presentation.closeBtn.accessibilityName = Stäng presentationsfönster bbb.fileupload.title = Lägg till filer till din presentation -bbb.fileupload.lblFileName.defaultText = No file selected +bbb.fileupload.lblFileName.defaultText = bbb.fileupload.selectBtn.label = Välj fil bbb.fileupload.selectBtn.toolTip = Öppna dialogruta för att välja fil bbb.fileupload.uploadBtn = Ladda upp bbb.fileupload.uploadBtn.toolTip = Ladda upp vald fil bbb.fileupload.deleteBtn.toolTip = Radera presentation bbb.fileupload.showBtn = Visa -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Visa presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Skapar miniatyrbilder... bbb.fileupload.progBarLbl = FramgÃ¥ng: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Chatta -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = Textfärg bbb.chat.input.accessibilityName = Redigeringsfönster för chattmeddelande bbb.chat.sendBtn.toolTip = Skicka meddelande bbb.chat.sendBtn.accessibilityName = Sänd chattmeddelande -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = Alla bbb.chat.optionsTabName = Valmöjligheter bbb.chat.privateChatSelect = Välj en person att chatta med privat -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = Chattalternativ bbb.chat.fontSize = Textstorlek chattmeddelande -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Minimera chattfönster bbb.chat.maximizeRestoreBtn.accessibilityName = Maximera chattfönster bbb.chat.closeBtn.accessibilityName = Stäng chattfönster -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = Ändra webbkamera bbb.publishVideo.changeCameraBtn.toolTip = Öppna dialogrutan för att ändra webbkamera bbb.publishVideo.cmbResolution.tooltip = Välj upplösning för webbkamera bbb.publishVideo.startPublishBtn.labelText = Starta delning bbb.publishVideo.startPublishBtn.toolTip = Starta delning av din webbkamera -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = bbb.video.minimizeBtn.accessibilityName = Minimera fönstret för webbkameror bbb.video.maximizeRestoreBtn.accessibilityName = Maximera fönstret för webbkameror bbb.video.controls.muteButton.toolTip = Aktivera eller avaktivera mikrofon @@ -361,96 +364,98 @@ bbb.video.publish.hint.waitingApproval = Väntar pÃ¥ tillstÃ¥nd bbb.video.publish.hint.videoPreview = Förhandsvisning webbkamera bbb.video.publish.hint.openingCamera = Öppnar webbkamera... bbb.video.publish.hint.cameraDenied = Ã…tkomst till webbkamera nekades -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application +bbb.video.publish.hint.cameraIsBeingUsed = bbb.video.publish.hint.publishing = Publicerar... bbb.video.publish.closeBtn.accessName = Stäng dialogrutan för webbkamerainställningar -bbb.video.publish.closeBtn.label = Cancel +bbb.video.publish.closeBtn.label = bbb.video.publish.titleBar = Publicera webbkamerafönster -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Lägg till anpassad layout till listan -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = bbb.layout.loadButton.toolTip = Ladda laoyouts frÃ¥n fil bbb.layout.saveButton.toolTip = Spara layouts till fil bbb.layout.lockButton.toolTip = LÃ¥s layout @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Använd en layout bbb.layout.combo.custom = * Anpassad layout bbb.layout.combo.customName = Anpassad layout bbb.layout.combo.remote = Fjärr -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Layouter sparades +bbb.layout.save.ioerror = bbb.layout.load.complete = Layouter laddades -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Penna bbb.highlighter.toolbar.pencil.accessibilityName = Ändra pekare för whiteboard till penna bbb.highlighter.toolbar.ellipse = Cirkel @@ -484,420 +492,380 @@ bbb.highlighter.toolbar.rectangle = Rektangel bbb.highlighter.toolbar.rectangle.accessibilityName = Ändra markören för whiteboard till rektangel bbb.highlighter.toolbar.panzoom = Panorera och zooma bbb.highlighter.toolbar.panzoom.accessibilityName = Ändra markör för whiteboard till panorera och zooma -bbb.highlighter.toolbar.clear = Clear All Annotations +bbb.highlighter.toolbar.clear = bbb.highlighter.toolbar.clear.accessibilityName = Rensa whiteboardsidan -bbb.highlighter.toolbar.undo = Undo Annotation +bbb.highlighter.toolbar.undo = bbb.highlighter.toolbar.undo.accessibilityName = Ã…ngra senaste whiteboardform bbb.highlighter.toolbar.color = Välj färg -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = bbb.notes.cmpColorPicker.toolTip = Textfärg -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = bbb.shortcutkey.chat.sendMessage.function = Sänd chattmeddelande -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Stäng -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = Starta delning bbb.publishVideo.changeCameraBtn.labelText = Ändra webbkamera -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/te/bbbResources.properties b/bigbluebutton-client/locale/te/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/te/bbbResources.properties +++ b/bigbluebutton-client/locale/te/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/th/bbbResources.properties b/bigbluebutton-client/locale/th/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/th/bbbResources.properties +++ b/bigbluebutton-client/locale/th/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/th_TH/bbbResources.properties b/bigbluebutton-client/locale/th_TH/bbbResources.properties index b712769b152fea06e196cedb5fcf9844f5901b0e..ea6a7722f1b1093dbea1cf0d047f57e99805e584 100644 --- a/bigbluebutton-client/locale/th_TH/bbbResources.properties +++ b/bigbluebutton-client/locale/th_TH/bbbResources.properties @@ -1,280 +1,282 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = à¸à¸³à¸¥à¸±à¸‡à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•à¹ˆà¸à¹€à¸„รื่à¸à¸‡à¹à¸¡à¹ˆà¸‚่าย -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = ขà¸à¸à¸ ัยเราไม่สามารถติดต่à¸à¹€à¸„รื่à¸à¸‡à¹à¸¡à¹ˆà¸‚่ายได้ในขณะนี้ -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = เปิดà¸à¸²à¸£à¸—ำงาน -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = จัดตั้งเค้าโครงใหม่ -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = คุณà¸à¸²à¸ˆà¸ˆà¸°à¸¡à¸µà¸à¸²à¸£à¹à¸›à¸¥à¸ าษาเà¸à¹ˆà¸²à¸‚à¸à¸‡ BigBlueButton bbb.oldlocalewindow.reminder2 = โปรดลบà¹à¸„ชà¸à¸à¸à¸ˆà¸²à¸à¹€à¸§à¹‡à¸šà¹€à¸šà¸£à¸²à¸§à¹Œà¹€à¸‹à¸à¸£à¹Œà¹à¸¥à¸°à¸¥à¸à¸‡à¹ƒà¸«à¸¡à¹ˆà¸à¸µà¸à¸„รั้ง bbb.oldlocalewindow.windowTitle = คำเตืà¸à¸™ : à¸à¸²à¸£à¹à¸›à¸¥à¸ าษาà¹à¸šà¸šà¹€à¸à¹ˆà¸² -bbb.audioSelection.title = How do you want to join the audio? +bbb.audioSelection.title = bbb.audioSelection.btnMicrophone.label = ไมโครโฟน -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone +bbb.audioSelection.btnMicrophone.toolTip = bbb.audioSelection.btnListenOnly.label = ฟังเท่านั้น -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = bbb.micSettings.title = ทดสà¸à¸šà¹€à¸ªà¸µà¸¢à¸‡ -bbb.micSettings.speakers.header = Test Speakers +bbb.micSettings.speakers.header = bbb.micSettings.microphone.header = ทดสà¸à¸šà¹„มโครโฟน -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = bbb.micSettings.echoTestAudioYes = ใช่ bbb.micSettings.echoTestAudioNo = ไม่ใช่ -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = ทดสà¸à¸šà¸«à¸£à¸·à¸à¹€à¸›à¸¥à¸µà¹ˆà¸¢à¸™à¹„มโครโฟน -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box +bbb.micSettings.changeMic.toolTip = bbb.micSettings.comboMicList.toolTip = โปรดเลืà¸à¸à¹„มโครโฟน -bbb.micSettings.micRecordVolume.label = Gain +bbb.micSettings.micRecordVolume.label = bbb.micSettings.micRecordVolume.toolTip = ตั้งค่าไมโครโฟนขà¸à¸‡à¸„ุณ bbb.micSettings.nextButton = ถัดไป -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = bbb.micSettings.join.toolTip = เข้าร่วมà¸à¸²à¸£à¸›à¸£à¸°à¸Šà¸¸à¸¡à¸—างเสียง -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = bbb.micWarning.testAgain.label = ทดสà¸à¸šà¸à¸µà¸à¸„รั้ง -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = ช่วยเหลืภbbb.mainToolbar.logoutBtn = à¸à¸à¸à¸ˆà¸²à¸à¸£à¸°à¸šà¸š -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = bbb.mainToolbar.settingsBtn = ตั้งค่า bbb.mainToolbar.settingsBtn.toolTip = เปิดà¸à¸²à¸£à¸•à¸±à¹‰à¸‡à¸„่า bbb.mainToolbar.shortcutBtn = คีย์ลัด -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window +bbb.mainToolbar.shortcutBtn.toolTip = bbb.mainToolbar.recordBtn.toolTip.start = เริ่มต้นà¸à¸²à¸£à¸šà¸±à¸™à¸—ึà¸à¸§à¸µà¸”ีโภbbb.mainToolbar.recordBtn.toolTip.stop = พัà¸à¸§à¸µà¸”ีโภ-bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = bbb.users.settings.buttonTooltip = ตั้งค่า bbb.users.settings.audioSettings = ทดสà¸à¸šà¹€à¸ªà¸µà¸¢à¸‡ bbb.users.settings.webcamSettings = ตั้งค่าà¸à¸¥à¹‰à¸à¸‡à¸§à¸µà¸”ีโภbbb.users.settings.muteAll = ปิดเสียงทั้งหมด -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter +bbb.users.settings.muteAllExcept = bbb.users.settings.unmuteAll = ยà¸à¹€à¸¥à¸´à¸à¸à¸²à¸£à¸›à¸´à¸”เสียงทั้งหมด -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = bbb.users.pushToTalk.toolTip = คุย -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = bbb.users.usersGrid.nameItemRenderer = ชื่ภ-bbb.users.usersGrid.nameItemRenderer.youIdentifier = you +bbb.users.usersGrid.nameItemRenderer.youIdentifier = bbb.users.usersGrid.statusItemRenderer = สถานะ -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = bbb.users.usersGrid.mediaItemRenderer.micOff = ปิดไมโครโฟน bbb.users.usersGrid.mediaItemRenderer.micOn = เปิดไมโครโฟน -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = à¸à¸²à¸£à¸™à¸³à¹€à¸ªà¸™à¸ -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = ภาพสไลด์à¸à¹ˆà¸à¸™à¸«à¸™à¹‰à¸²à¸™à¸µà¹‰ -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = bbb.presentation.forwardBtn.toolTip = ภาพสไลด์ถัดไป bbb.presentation.maxUploadFileExceededAlert = ผิดพลาด: ไฟล์ใหà¸à¹ˆà¹€à¸à¸´à¸™à¹„ปà¸à¸§à¹ˆà¸²à¸—ี่ได้รับà¸à¸“ุà¸à¸²à¸•à¸´ bbb.presentation.uploadcomplete = à¸à¸±à¸žà¹‚หลดสำเร็จ à¸à¸£à¸¸à¸“ารà¸à¸‚ณะที่เราà¸à¸³à¸¥à¸±à¸‡à¹à¸›à¸¥à¸‡à¹€à¸à¸à¸ªà¸²à¸£ bbb.presentation.uploaded = à¸à¸±à¸žà¹‚หลดเรียบร้à¸à¸¢à¹à¸¥à¹‰à¸§ bbb.presentation.document.supported = เà¸à¸à¸ªà¸²à¸£à¸—ี่ถูà¸à¸à¸±à¸›à¹‚หลดผ่านà¸à¸²à¸£à¸£à¸±à¸šà¸£à¸à¸‡ à¸à¸³à¸¥à¸±à¸‡à¹€à¸£à¸´à¹ˆà¸¡à¸à¸²à¸£à¹à¸›à¸¥à¸‡à¹€à¸à¸à¸ªà¸²à¸£... bbb.presentation.document.converted = เà¸à¸à¸ªà¸²à¸£à¸–ูà¸à¹à¸›à¸¥à¸‡à¹€à¸£à¸µà¸¢à¸šà¸£à¹‰à¸à¸¢à¹à¸¥à¹‰à¸§ -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO เà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาดระหว่างà¸à¹ˆà¸²à¸™à¸‚้à¸à¸¡à¸¹à¸¥ à¸à¸£à¸¸à¸“าติดต่à¸à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸š bbb.presentation.error.security = à¸à¸²à¸£à¸£à¸±à¸à¸©à¸²à¸„วามปลà¸à¸”ภัยเà¸à¸´à¸”ข้à¸à¸œà¸´à¸”พลาด : à¸à¸£à¸¸à¸“าติดต่à¸à¸œà¸¹à¹‰à¸”ูà¹à¸¥à¸£à¸°à¸šà¸š bbb.presentation.error.convert.notsupported = ผิดพลาด : ไม่รà¸à¸‡à¸£à¸±à¸šà¹„ฟล์ที่à¸à¸±à¸›à¹‚หลด à¸à¸£à¸¸à¸“าà¸à¸±à¸›à¹‚หลดไฟล์ที่รà¸à¸‡à¸£à¸±à¸š bbb.presentation.error.convert.nbpage = ข้à¸à¸œà¸´à¸”พลาด : ไม่สามารถระบุจำนวนหน้าในเà¸à¸à¸ªà¸²à¸£à¸—ี่à¸à¸±à¸›à¹‚หลด bbb.presentation.error.convert.maxnbpagereach = ข้à¸à¸œà¸´à¸”พลาด : เà¸à¸à¸ªà¸²à¸£à¸—ี่à¸à¸±à¸›à¹‚หลดมีจำนวนหน้ามาà¸à¹€à¸à¸´à¸™à¹„ป bbb.presentation.converted = à¹à¸›à¸¥à¸‡ {0} จาภ{1} สไลด์ -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = bbb.presentation.uploadwindow.presentationfile = ไฟล์นำเสนภbbb.presentation.uploadwindow.pdf = PDF bbb.presentation.uploadwindow.word = WORD bbb.presentation.uploadwindow.excel = EXCEL bbb.presentation.uploadwindow.powerpoint = POWERPOINT bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = bbb.fileupload.title = à¸à¸±à¸žà¹‚หลดไฟล์นำเสนภbbb.fileupload.lblFileName.defaultText = ไม่ได้เลืà¸à¸à¹„ฟล์ bbb.fileupload.selectBtn.label = เลืà¸à¸à¹„ฟล์ @@ -283,621 +285,587 @@ bbb.fileupload.uploadBtn = à¸à¸±à¸žà¹‚หลด bbb.fileupload.uploadBtn.toolTip = à¸à¸±à¸žà¹‚หลดไฟล์ bbb.fileupload.deleteBtn.toolTip = ลบไฟล์นำเสนภbbb.fileupload.showBtn = à¹à¸ªà¸”ง -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = à¹à¸ªà¸”งà¸à¸²à¸£à¸™à¸³à¹€à¸ªà¸™à¸ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = à¸à¸³à¸¥à¸±à¸‡à¸ªà¸£à¹‰à¸²à¸‡à¸ าพขนาดเล็ภbbb.fileupload.progBarLbl = ความคืบหน้า: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = สนทนา -bbb.chat.quickLink.label = Chat Window +bbb.chat.quickLink.label = bbb.chat.cmpColorPicker.toolTip = สีà¸à¸±à¸à¸©à¸£ -bbb.chat.input.accessibilityName = Chat Message Editing Field +bbb.chat.input.accessibilityName = bbb.chat.sendBtn.toolTip = ส่งข้à¸à¸„วาม -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = bbb.chat.publicChatUsername = ทั้งหมด -bbb.chat.optionsTabName = Options +bbb.chat.optionsTabName = bbb.chat.privateChatSelect = เลืà¸à¸à¸šà¸¸à¸„คลเพื่à¸à¸ªà¸™à¸—นาà¹à¸šà¸šà¸ªà¹ˆà¸§à¸™à¸•à¸±à¸§ -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = ตัวเลืà¸à¸à¹ƒà¸™à¸à¸²à¸£à¸ªà¸™à¸—นา bbb.chat.fontSize = ขนาดà¸à¸±à¸à¸©à¸£ -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = bbb.publishVideo.startPublishBtn.toolTip = เริ่มà¸à¸²à¸£à¹€à¸œà¸¢à¹à¸žà¸£à¹ˆà¸ˆà¸²à¸à¹€à¸§à¸›à¹à¸„ม -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = bbb.videodock.title = à¸à¸¥à¹‰à¸à¸‡ -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = bbb.toolbar.phone.toolTip.nomic = ไม่พบไมโครโฟน -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = เปลี่ยนรูปà¹à¸šà¸š Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = bbb.layout.name.videochat = วีดีโà¸à¹à¸Šà¸— -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = เน้นข้à¸à¸„วาม -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil +bbb.highlighter.toolbar.pencil.accessibilityName = bbb.highlighter.toolbar.ellipse = วงà¸à¸¥à¸¡ -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle +bbb.highlighter.toolbar.ellipse.accessibilityName = bbb.highlighter.toolbar.rectangle = สี่เหลี่ยมผืนผ้า -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = bbb.highlighter.toolbar.color = เลืà¸à¸à¸ªà¸µ -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color +bbb.highlighter.toolbar.color.accessibilityName = bbb.highlighter.toolbar.thickness = เปลี่ยนความหนา -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = ตà¸à¸¥à¸‡ -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured +bbb.logout.appshutdown = +bbb.logout.asyncerror = bbb.logout.connectionclosed = à¸à¸²à¸£à¹€à¸Šà¸·à¹ˆà¸à¸¡à¸•à¹ˆà¸à¸à¸±à¸šà¹€à¸„รื่à¸à¸‡à¹à¸¡à¹ˆà¸‚่ายถูà¸à¸›à¸´à¸”ลง -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = bbb.logout.usercommand = คุณได้à¸à¸à¸à¸ˆà¸²à¸à¸«à¹‰à¸à¸‡à¸›à¸£à¸°à¸Šà¸¸à¸¡à¹à¸¥à¹‰à¸§ -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = ใช่ bbb.logout.confirm.no = ไม่ใช่ -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= bbb.notes.title = โน๊ต bbb.notes.cmpColorPicker.toolTip = สีตัวà¸à¸±à¸à¸©à¸£ bbb.notes.saveBtn = บันทึภbbb.notes.saveBtn.toolTip = บันทึà¸à¹‚น๊ต -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = เà¸à¸´à¸”ความผิดพลาดà¸à¸±à¸šà¸£à¸¸à¹ˆà¸™à¸‚à¸à¸‡ Flash bbb.settings.flash.text = คุณติดตั้ง Flash รุ่น {0} à¹à¸•à¹ˆà¸£à¸°à¸šà¸š BigBlueButton ต้à¸à¸‡à¸à¸²à¸£à¸à¸¢à¹ˆà¸²à¸‡à¸™à¹‰à¸à¸¢à¸£à¸¸à¹ˆà¸™ {1} เพื่à¸à¸—ำงานได้à¸à¸¢à¹ˆà¸²à¸‡à¸–ูà¸à¸•à¹‰à¸à¸‡ คลิà¸à¸›à¸¸à¹ˆà¸¡à¸”้านล่างนี้เพื่à¸à¸•à¸´à¸”ตั้ง Adobe Flash รุ่นล่าสุด bbb.settings.flash.command = ติดตั้ง Flash รุ่นใหม่ล่าสุด bbb.settings.isight.label = เà¸à¸´à¸”ความผิดพลาดà¸à¸±à¸šà¸à¸¥à¹‰à¸à¸‡ iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = ติดตั้ง Flash รุ่น 10.2 RC2 -bbb.settings.warning.label = Warning +bbb.settings.warning.label = bbb.settings.warning.close = ปิดà¸à¸²à¸£à¹à¸ˆà¹‰à¸‡à¹€à¸•à¸·à¸à¸™à¸™à¸µà¹‰ -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = ltbcustom.bbb.highlighter.toolbar.text = ตัวà¸à¸±à¸à¸©à¸£ -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = สีตัวà¸à¸±à¸à¸©à¸£ ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = ขนาดตัวà¸à¸±à¸à¸©à¸£ -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = bbb.caption.option.textcolor.tooltip = สีตัวà¸à¸±à¸à¸©à¸£ -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = bbb.shortcuthelp.title = คีย์ลัด -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = ปิด -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = bbb.polling.answer.Yes = ใช่ bbb.polling.answer.No = ไม่ใช่ -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = bbb.lockSettings.privateChat = à¹à¸Šà¸—ส่วนตัว bbb.lockSettings.publicChat = à¹à¸Šà¸—สาธารณะ bbb.lockSettings.webcam = à¸à¸¥à¹‰à¸à¸‡à¸§à¸µà¸”ีโภ+bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = ไมโครโฟน -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/tr/bbbResources.properties b/bigbluebutton-client/locale/tr/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/tr/bbbResources.properties +++ b/bigbluebutton-client/locale/tr/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/tr_TR/bbbResources.properties b/bigbluebutton-client/locale/tr_TR/bbbResources.properties index 74ab611f9057e34aaa191d0f2c2436c6cc5331e6..31561540c790bf1a2b8a377e9603243881c922ae 100644 --- a/bigbluebutton-client/locale/tr_TR/bbbResources.properties +++ b/bigbluebutton-client/locale/tr_TR/bbbResources.properties @@ -1,42 +1,42 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Sunucuya baÄŸlanıyor -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = Yükleniyor bbb.mainshell.statusProgress.cannotConnectServer = Ãœzgünüz, sunucuya baÄŸlanamıyoruz. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (sürüm {0}) bbb.mainshell.logBtn.toolTip = Sistem Kayıtlarını Aç bbb.mainshell.meetingNotFound = Görüşme Bulunamadı bbb.mainshell.invalidAuthToken = Kimlik DoÄŸrulama Dizesi Hatalı -bbb.mainshell.resetLayoutBtn.toolTip = Sayfa Düzenini Sıfırla +bbb.mainshell.resetLayoutBtn.toolTip = Görünümü Sıfırla bbb.mainshell.notification.tunnelling = BaÄŸlantı Köprüleniyor bbb.mainshell.notification.webrtc = WebRTC Sesi -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. +bbb.mainshell.fullscreenBtn.toolTip = Tam ekrana geç +bbb.mainshell.quote.sentence.1 = BaÅŸarıda gizem yoktur; hazırlık, çok çalışma ve baÅŸarısızlıklardan ders alabilmenin sonucudur. bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. +bbb.mainshell.quote.sentence.2 = Bana söylersen unuturum. Öğretirsen hatırlarım. Beni de dahil edersen öğrenirim. bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. +bbb.mainshell.quote.sentence.3 = Çok çalışarak zor iÅŸin deÄŸerini öğrendim. bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. +bbb.mainshell.quote.sentence.4 = Öğrenme tutkusunu harekete geçirebilirseniz, geliÅŸimi asla engelleyemezsiniz. bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. +bbb.mainshell.quote.sentence.5 = AraÅŸtırma yeni bilgiyi doÄŸurur. bbb.mainshell.quote.attribution.5 = Neil Armstrong bbb.oldlocalewindow.reminder1 = Eski bir BigBlueButton dil çevirisine sahip olabilirsiniz. bbb.oldlocalewindow.reminder2 = Lütfen tarayıcınızın önbelleÄŸini temizleyip tekrar deneyin. bbb.oldlocalewindow.windowTitle = Uyarı: Dil Çevirisi Eski -bbb.audioSelection.title = Sesli Görüşmeye Katılma Åžekli Seç +bbb.audioSelection.title = Sesli Görüşmeye nasıl katılmak istiyorsunuz? bbb.audioSelection.btnMicrophone.label = Mikrofon bbb.audioSelection.btnMicrophone.toolTip = Mikrofonunuzu kullanarak sesli katılın bbb.audioSelection.btnListenOnly.label = Yalnızca Dinle -bbb.audioSelection.btnListenOnly.toolTip = Mikrofon kullanmadan dinleyici olarak katılın +bbb.audioSelection.btnListenOnly.toolTip = Yalnızca dinleyici olarak katılın bbb.audioSelection.txtPhone.text = Bu görüşmeye telefonla baÄŸlanmak için, {0} numarasını arayın ve ardından konferans pin numarası olarak {1} tuÅŸlayın. -bbb.micSettings.title = Ses testi +bbb.micSettings.title = Ses Sınama bbb.micSettings.speakers.header = Hoparlörü Sına bbb.micSettings.microphone.header = Mikrofonu Sına bbb.micSettings.playSound = Hoparlörü Sına -bbb.micSettings.playSound.toolTip = Hoparlörü sınamak için müzik çalın +bbb.micSettings.playSound.toolTip = Hoparlörü sınamak için müzik oynatın bbb.micSettings.hearFromHeadset = Sesi bilgisayarınızın hoparlöründen deÄŸil, kulaklığınızdan duymalısınız. bbb.micSettings.speakIntoMic = Kulaklık kullanıyorsanız, sesi hoparlörlerden deÄŸil kulaklığınızdan duymalısınız. -bbb.micSettings.echoTestMicPrompt = Bu bir ses testidir. Lütfen bir kaç kelime konuÅŸun. Hoparlörünüzden kendi sesinizi duydunuz mu? +bbb.micSettings.echoTestMicPrompt = Bu bir özel ses testidir. Birkaç kelime konuÅŸun. Sesinizi duydunuz mu? bbb.micSettings.echoTestAudioYes = Evet bbb.micSettings.echoTestAudioNo = Hayır bbb.micSettings.speakIntoMicTestLevel = Mikrofona konuÅŸun. EÄŸer alttaki mavi barda hareket görmezseniz baÅŸka bir mikrofon seçin. @@ -47,33 +47,34 @@ bbb.micSettings.comboMicList.toolTip = Mikrofonu seç bbb.micSettings.micRecordVolume.label = Sinyal Seviyesi bbb.micSettings.micRecordVolume.toolTip = Mikrofonun sinyal seviyesini ayarla bbb.micSettings.nextButton = Sonraki -bbb.micSettings.nextButton.toolTip = Yankı testini baÅŸlat +bbb.micSettings.nextButton.toolTip = Ses testini baÅŸlat bbb.micSettings.join = Sesli Katıl -bbb.micSettings.join.toolTip = Sesli konferansa katıl +bbb.micSettings.join.toolTip = Sesli görüşmeye katıl bbb.micSettings.cancel = Vazgeç bbb.micSettings.connectingtoecho = BaÄŸlanıyor bbb.micSettings.connectingtoecho.error = Ses Testinde Hata: Lütfen yöneticiyle iletiÅŸim kurun. -bbb.micSettings.cancel.toolTip = Sesli konferansa katılmaktan vazgeç +bbb.micSettings.cancel.toolTip = Sesli görüşmeye katılmaktan vazgeç bbb.micSettings.access.helpButton = Yardım(yardım videolarını yeni sayfada aç) bbb.micSettings.access.title = Ses Ayarları. Pencere kapanana kadar odak bu ses ayarları penceresinde kalacaktır bbb.micSettings.webrtc.title = WebRTC DesteÄŸi bbb.micSettings.webrtc.capableBrowser = Tarayıcınızın WebRTC desteÄŸi vardır. bbb.micSettings.webrtc.capableBrowser.dontuseit = WebRTC kullanmamak için tıklayın bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = WebRTC teknolojisini (kullanımda sıkıntı yaşıyorsanız önerilir) kullanmak istemiyorsanız buraya tıklayın. -bbb.micSettings.webrtc.notCapableBrowser = Tarayıcınız için WebRTC desteÄŸi bulunmamaktadır. Lütfen Google Chrome (32 ya da üzeri sürümünü); ya da Mozilla Firefox (26 ya da üzeri sürümünü) kullanın. Bu raÄŸmen Adobe Flash Platformunu kullanarak sesli konferansa katılabileceksiniz. +bbb.micSettings.webrtc.notCapableBrowser = Web tarayıcınızın WebRTC desteÄŸi bulunmamaktadır. Lütfen Google Chrome (32 ya da üzeri sürümünü); ya da Mozilla Firefox (26 ya da üzeri sürümünü) kullanın. Halen Adobe Flash Platformunu kullanarak da sesli konferansa katılabilirsiniz. bbb.micSettings.webrtc.connecting = Aranıyor bbb.micSettings.webrtc.waitingforice = BaÄŸlanıyor bbb.micSettings.webrtc.transferring = Çevriliyor bbb.micSettings.webrtc.endingecho = Sesli katılıyor bbb.micSettings.webrtc.endedecho = Ses testi sonlandı. +bbb.micPermissions.message.browserhttp = Sunucu bilgisayarın SSL güvenlik sertifikası olmadığından {0} mikrofon paylaşımınızı engelliyor. bbb.micPermissions.firefox.title = Firefox Mikrofon Izinleri -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = Firefox'a mikrofonunuzu kullanma izni vermek için Ä°zin Ver tıklayın. bbb.micPermissions.chrome.title = Chrome Mikrofon Izinleri -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Sesli Uyarı -bbb.micWarning.joinBtn.label = Genede Katıl +bbb.micPermissions.chrome.message = Chrome'un mikrofonunuzu kullanabilmesi için Ä°zin Ver tıklayın +bbb.micWarning.title = Ses Uyarısı +bbb.micWarning.joinBtn.label = Yine de Katıl bbb.micWarning.testAgain.label = Yeniden dene -bbb.micWarning.message = Mikrofonunuzda herhangi bir hareketlilik yok, muhtemelen oturum sırasında diÄŸerleri sizi duyamıyacak. +bbb.micWarning.message = Mikrofonunuzda herhangi bir hareketlilik yok, muhtemelen oturum sırasında diÄŸerleri sizi duyamayacaktır. bbb.webrtcWarning.message = WebRTC {0} hatası tespit edildi. Flash kullanmak istermisiniz? bbb.webrtcWarning.title = WebRTC Ses Hatası bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket baÄŸlantısı koptu @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC ses denemesi beklenmedi bbb.webrtcWarning.connection.dropped = WebRTC baÄŸlantısı düştü bbb.webrtcWarning.connection.reconnecting = Yeniden baÄŸlanmaya çalışılıyor bbb.webrtcWarning.connection.reestablished = WebRTC baÄŸlantısı yeniden kuruldu -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = Hareket belirlenmedi. +bbb.inactivityWarning.message = Bu görüşme pasif görünüyor. Otomatik olarak sonlandırılıyor... +bbb.shuttingDown.message = Bu görüşme pasif kaldığı için sonlandırılıyor +bbb.inactivityWarning.cancel = Ä°ptal bbb.mainToolbar.helpBtn = Yardım bbb.mainToolbar.logoutBtn = Çıkış -bbb.mainToolbar.logoutBtn.toolTip = Çıkış -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = Çıkış Yap +bbb.mainToolbar.idleLogoutBtn = {0} | Çıkış Sayacını Sıfırla bbb.mainToolbar.langSelector = Dil seçin bbb.mainToolbar.settingsBtn = Ayarlar bbb.mainToolbar.settingsBtn.toolTip = Ayarları Aç @@ -108,33 +109,33 @@ bbb.mainToolbar.shortcutBtn = Kısayol TuÅŸları bbb.mainToolbar.shortcutBtn.toolTip = Kısayol TuÅŸları Penceresini Aç bbb.mainToolbar.recordBtn.toolTip.start = Kaydı baÅŸlat bbb.mainToolbar.recordBtn.toolTip.stop = Kaydı durdur -bbb.mainToolbar.recordBtn.toolTip.recording = Oturum kaydedilecek -bbb.mainToolbar.recordBtn.toolTip.notRecording = Oturum kaydedilmeyecek -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.recording = Oturum kaydediliyor +bbb.mainToolbar.recordBtn.toolTip.notRecording = Oturum kaydedilmiyor +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Yalnızca moderatörler kayıt baÅŸlatıp durdurabilir +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = Bu kayıt duraklatılamaz +bbb.mainToolbar.recordBtn.toolTip.wontRecord = Bu oturum kaydedilemez bbb.mainToolbar.recordBtn.confirm.title = Kayıt yapmayı onaylayın -bbb.mainToolbar.recordBtn.confirm.message.start = Oturumun kaydının baÅŸlatılmasını istediÄŸinizden emin misiniz? -bbb.mainToolbar.recordBtn.confirm.message.stop = Oturumun kaydının durdurulmasını istediÄŸinizden emin misiniz? -bbb.mainToolbar.recordBtn..notification.title = Ses Kaydı Bildirimi -bbb.mainToolbar.recordBtn..notification.message1 = Bu görüşmenin ses kaydını alabilirsiniz. -bbb.mainToolbar.recordBtn..notification.message2 = Ses kaydını baÅŸlatmak/bitirmek için baÅŸlık barındaki Kaydı BaÅŸlat/Bitir butonuna tıklayın. +bbb.mainToolbar.recordBtn.confirm.message.start = Oturum kaydını baÅŸlatmak istediÄŸinize emin misiniz? +bbb.mainToolbar.recordBtn.confirm.message.stop = Oturum kaydını durdurmak istediÄŸinize emin misiniz? +bbb.mainToolbar.recordBtn.notification.title = Ses Kaydı Bildirimi +bbb.mainToolbar.recordBtn.notification.message1 = Bu görüşmeyi kaydedebilirsiniz. +bbb.mainToolbar.recordBtn.notification.message2 = Ses kaydını baÅŸlatmak/bitirmek için baÅŸlık barındaki Kaydı BaÅŸlat/Bitir butonuna tıklayın. bbb.mainToolbar.recordingLabel.recording = (Kaydediliyor) bbb.mainToolbar.recordingLabel.notRecording = Kaydedilmiyor -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = Misafirsiniz, moderatörün onayını bekleyin. +bbb.waitWindow.waitMessage.title = Bekliyor +bbb.guests.title = Misafirler +bbb.guests.message.singular = {0} adet kullanıcı bu görüşmeye katılmak istiyor +bbb.guests.message.plural = {0} adet kullanıcı bu görüşmeye katılmak istiyor +bbb.guests.allowBtn.toolTip = Ä°zin ver +bbb.guests.allowEveryoneBtn.text = Herkese izin ver +bbb.guests.denyBtn.toolTip = Reddet +bbb.guests.denyEveryoneBtn.text = Herkesi reddet +bbb.guests.rememberAction.text = Seçimi hatırla +bbb.guests.alwaysAccept = Her zaman kabul et +bbb.guests.alwaysDeny = Her zaman reddet +bbb.guests.askModerator = Moderatöre sor +bbb.guests.Management = Misafir yönetimi bbb.clientstatus.title = Uyarı Ayarları bbb.clientstatus.notification = Okunmamış uyarılar bbb.clientstatus.close = Kapat @@ -151,9 +152,9 @@ bbb.clientstatus.webrtc.almostWeakStatus = WebRTC ses baÄŸlantınız kötü bbb.clientstatus.webrtc.weakStatus = WebRTC ses baÄŸlantınızda bir sorun olabilir. bbb.clientstatus.webrtc.message = Daha iyi ses için Firefox ya da Chrome kullanmanız önerilir. bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.notdetected = Java sürümü belirlenemedi. +bbb.clientstatus.java.notinstalled = Java yüklü deÄŸil, masaüstü paylaşımı yapabilmeniz için gerekli olan Java kurulumu için <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>BURAYI</a></font> tıklayın. +bbb.clientstatus.java.oldversion = Yüklü Java sürümünüz eskimiÅŸ, masaüstü paylaşımı yapabilmeniz için gereken yeni sürüm Java kurulumu için <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>BURAYI</a></font> tıklayın. bbb.window.minimizeBtn.toolTip = Küçült bbb.window.maximizeRestoreBtn.toolTip = Büyült bbb.window.closeBtn.toolTip = Kapat @@ -166,20 +167,20 @@ bbb.users.quickLink.label = Kullanıcı Penceresi bbb.users.minimizeBtn.accessibilityName = Kullanıcılar Penceresini Küçült bbb.users.maximizeRestoreBtn.accessibilityName = Kullanıcılar Penceresini Büyült bbb.users.settings.buttonTooltip = Ayarlar -bbb.users.settings.audioSettings = Ses testi +bbb.users.settings.audioSettings = Ses Sınama bbb.users.settings.webcamSettings = Kamera Ayarları -bbb.users.settings.muteAll = Tümünü Sessiz Yap -bbb.users.settings.muteAllExcept = Sunucu Hariç Tümünü Sessiz yap -bbb.users.settings.unmuteAll = Tümünü Sesli Yap +bbb.users.settings.muteAll = Tüm Kullanıcıları Sustur +bbb.users.settings.muteAllExcept = Sunucu Hariç Tümünü Sustur +bbb.users.settings.unmuteAll = Tüm Kullanıcıları KonuÅŸtur bbb.users.settings.clearAllStatus = Tüm durum simgelerini temizle bbb.users.emojiStatusBtn.toolTip = Durum simgemi güncelle -bbb.users.roomMuted.text = Izleyiciler susturuldu +bbb.users.roomMuted.text = Izleyiciler Susturuldu bbb.users.roomLocked.text = Izleyiciler kilitlendi bbb.users.pushToTalk.toolTip = KonuÅŸ -bbb.users.pushToMute.toolTip = Kendini sessiz yap -bbb.users.muteMeBtnTxt.talk = Sesli Yap -bbb.users.muteMeBtnTxt.mute = Sessiz Yap -bbb.users.muteMeBtnTxt.muted = Sessiz +bbb.users.pushToMute.toolTip = Kendini sustur +bbb.users.muteMeBtnTxt.talk = KonuÅŸtur +bbb.users.muteMeBtnTxt.mute = Sustur +bbb.users.muteMeBtnTxt.muted = SusturulmuÅŸ bbb.users.usersGrid.contextmenu.exportusers = Kullanıcı Ä°simlerini Kopyala bbb.users.usersGrid.accessibilityName = Kullanıcı Listesi. Gezinmek için yön tuÅŸlarını kullanın. bbb.users.usersGrid.nameItemRenderer = Adı @@ -187,21 +188,21 @@ bbb.users.usersGrid.nameItemRenderer.youIdentifier = siz bbb.users.usersGrid.statusItemRenderer = Durumu bbb.users.usersGrid.statusItemRenderer.changePresenter = Sunucuyu DeÄŸiÅŸtir bbb.users.usersGrid.statusItemRenderer.presenter = Sunucu -bbb.users.usersGrid.statusItemRenderer.moderator = Yönetici -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.moderator = Moderatör +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Yalnızca Ses +bbb.users.usersGrid.statusItemRenderer.raiseHand = El kaldırmış +bbb.users.usersGrid.statusItemRenderer.applause = Alkış +bbb.users.usersGrid.statusItemRenderer.thumbsUp = BeÄŸendim +bbb.users.usersGrid.statusItemRenderer.thumbsDown = Kötü +bbb.users.usersGrid.statusItemRenderer.speakLouder = Daha sesli konuÅŸun +bbb.users.usersGrid.statusItemRenderer.speakSofter = Daha düşük sesli konuÅŸun +bbb.users.usersGrid.statusItemRenderer.speakFaster = Daha hızlı konuÅŸun +bbb.users.usersGrid.statusItemRenderer.speakSlower = Daha yavaÅŸ konuÅŸun +bbb.users.usersGrid.statusItemRenderer.away = Dışarıda +bbb.users.usersGrid.statusItemRenderer.confused = Åžaşırmış +bbb.users.usersGrid.statusItemRenderer.neutral = Nötr +bbb.users.usersGrid.statusItemRenderer.happy = Mutlu +bbb.users.usersGrid.statusItemRenderer.sad = Ãœzgün bbb.users.usersGrid.statusItemRenderer.clearStatus = Durumu temizle bbb.users.usersGrid.statusItemRenderer.viewer = Ä°zleyici bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Kamerayı paylaşılıyor. @@ -210,42 +211,43 @@ bbb.users.usersGrid.mediaItemRenderer = Medya bbb.users.usersGrid.mediaItemRenderer.talking = KonuÅŸuyor bbb.users.usersGrid.mediaItemRenderer.webcam = Kamera Paylaşılıyor bbb.users.usersGrid.mediaItemRenderer.webcamBtn = Kamerayı görüntüle -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = {0} sesini aç -bbb.users.usersGrid.mediaItemRenderer.pushToMute = {0} sesini kapat +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = KonuÅŸtur {0} +bbb.users.usersGrid.mediaItemRenderer.pushToMute = Sustur {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Kilitle {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Kilidi Aç {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kullanıcı At +bbb.users.usersGrid.mediaItemRenderer.kickUser = Çıkar {0} bbb.users.usersGrid.mediaItemRenderer.webcam = Kamera Paylaşılıyor bbb.users.usersGrid.mediaItemRenderer.micOff = Mikrofon devre dışı bbb.users.usersGrid.mediaItemRenderer.micOn = Mikrofon devrede bbb.users.usersGrid.mediaItemRenderer.noAudio = Sesli görüşmede deÄŸil -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = {0} kullanıcısını moderatör yap +bbb.users.usersGrid.mediaItemRenderer.demoteUser = {0} kullanıcısını izleyici yap bbb.users.emojiStatus.clear = Temizle -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = El kaldır +bbb.users.emojiStatus.happy = Mutlu +bbb.users.emojiStatus.neutral = Nötr +bbb.users.emojiStatus.sad = Ãœzgün +bbb.users.emojiStatus.confused = Åžaşırmış +bbb.users.emojiStatus.away = Dışarıda +bbb.users.emojiStatus.thumbsUp = BeÄŸendim +bbb.users.emojiStatus.thumbsDown = BeÄŸenmedim +bbb.users.emojiStatus.applause = Alkış +bbb.users.emojiStatus.agree = Katılıyorum +bbb.users.emojiStatus.disagree = Katılıyorum +bbb.users.emojiStatus.none = Temizle +bbb.users.emojiStatus.speakLouder = Daha sesli konuÅŸabilir misiniz? +bbb.users.emojiStatus.speakSofter = Daha düşük sesli konuÅŸabilir misiniz? +bbb.users.emojiStatus.speakFaster = Daha hızlı konuÅŸabilir misiniz? +bbb.users.emojiStatus.speakSlower = Daha yavaÅŸ konuÅŸabilir misiniz? +bbb.users.emojiStatus.beRightBack = Hemen döneceÄŸim bbb.presentation.title = Sunum bbb.presentation.titleWithPres = Sunum: {0} bbb.presentation.quickLink.label = Sunum Penceresi bbb.presentation.fitToWidth.toolTip = Sunumu GeniÅŸliÄŸe Sığdır bbb.presentation.fitToPage.toolTip = Sunumu Sayfaya Sığdır bbb.presentation.uploadPresBtn.toolTip = Sunum Yükle -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = Sunumları Ä°ndir +bbb.presentation.poll.response = Oylamayı yanıtla bbb.presentation.backBtn.toolTip = Önceki slayt. bbb.presentation.btnSlideNum.accessibilityName = Slayt {0} - {1} bbb.presentation.btnSlideNum.toolTip = Bir slayt seç @@ -255,7 +257,7 @@ bbb.presentation.uploadcomplete = Yükleme tamamlandı. Belgeyi dönüştürürk bbb.presentation.uploaded = yüklendi. bbb.presentation.document.supported = Yüklenen belge desteklenmektedir. Dönüştürmeye baÅŸlıyor... bbb.presentation.document.converted = Ofis belgesi baÅŸarıyla dönüştürüldü. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. +bbb.presentation.error.document.convert.failed = Dosyayı PDF olarak kaydedip yeniden yüklemeyi deneyin. bbb.presentation.error.document.convert.invalid = Lütfen bu belgeyi önce PDF'e çevirin. bbb.presentation.error.io = IO Hatası: Lütfen yöneticiye baÅŸvurun. bbb.presentation.error.security = Güvenlik Hatası: Lütfen yöneticiye baÅŸvurun. @@ -283,46 +285,47 @@ bbb.fileupload.uploadBtn = Yükle bbb.fileupload.uploadBtn.toolTip = Seçili dosyayı yükle bbb.fileupload.deleteBtn.toolTip = Sunumu Sil bbb.fileupload.showBtn = Göster -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = BaÅŸka bir dosya deneyin bbb.fileupload.showBtn.toolTip = Sunumu Göster -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = Kapat +bbb.fileupload.close.accessibilityName = Dosya Yükleme penceresini kapat bbb.fileupload.genThumbText = Küçük resimler oluÅŸturuluyor... bbb.fileupload.progBarLbl = AÅŸama: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = Herhangi bir Ofis ya da PDF dosyası yükleyebilirsiniz. En iyi sonuç için PDF yüklemenizi tavsiye ederiz. +bbb.fileupload.letUserDownload = Sunumu indirilebilir yap +bbb.fileupload.letUserDownload.tooltip = DiÄŸer kullanıcıların sunumunuzu indirmesini istiyorsanız burayı seçin +bbb.filedownload.title = Sunumları Ä°ndir +bbb.filedownload.close.tooltip = Kapat +bbb.filedownload.close.accessibilityName = Dosya Ä°ndirme penceresini kapat +bbb.filedownload.fileLbl = Ä°ndirilecek Dosyayı Seçin +bbb.filedownload.downloadBtn = Ä°ndir +bbb.filedownload.downloadBtn.toolTip = Sunumu Ä°ndir +bbb.filedownload.thisFileIsDownloadable = Ä°ndirilebilir dosya bbb.chat.title = Sohbet bbb.chat.quickLink.label = Sohbet Penceresi bbb.chat.cmpColorPicker.toolTip = Metin Rengi bbb.chat.input.accessibilityName = Sohbet Mesajı Düzenleme Alanı bbb.chat.sendBtn.toolTip = Mesajı Gönder bbb.chat.sendBtn.accessibilityName = Sohbet mesajını gönder -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = Sohbeti kaydet +bbb.chat.saveBtn.accessibilityName = Sohbeti metin dosyasına kaydet +bbb.chat.saveBtn.label = Kaydet +bbb.chat.save.complete = Sohbet baÅŸarıyla kaydedildi. +bbb.chat.save.ioerror = Sohbet kaydedilemedi. Tekrar kaydetmeyi deneyin. +bbb.chat.save.filename = genel-sohbet +bbb.chat.copyBtn.toolTip = Sohbeti kopyala +bbb.chat.copyBtn.accessibilityName = Sohbeti panoya kopyala +bbb.chat.copyBtn.label = Kopyala +bbb.chat.copy.complete = Sohbet panoya kopyalandı +bbb.chat.clearBtn.toolTip = Genel Sohbeti Temizle +bbb.chat.clearBtn.accessibilityName = Genel Sohbet geçmiÅŸini temizle +bbb.chat.clearBtn.chatMessage = Genel sohbet geçmiÅŸi moderatör tarafından temizlendi +bbb.chat.clearBtn.alert.title = Uyarı +bbb.chat.clearBtn.alert.text = Genel Sohbet geçmiÅŸini temizliyorsunuz ve bu eylem geri alınamaz. Devam etmek istiyor musunuz? bbb.chat.contextmenu.copyalltext = Tüm Metni Kopyala bbb.chat.publicChatUsername = Tümü bbb.chat.optionsTabName = Seçenekler -bbb.chat.privateChatSelect = Özel yazışmak istediÄŸiniz kiÅŸiyi seçin +bbb.chat.privateChatSelect = Özel sohbet etmek istediÄŸiniz kiÅŸiyi seçin bbb.chat.private.userLeft = Kullanıcı çıkış yaptı. bbb.chat.private.userJoined = Kullanıcı giriÅŸ yaptı. bbb.chat.private.closeMessage = Bu sekmeyi {0} tuÅŸ kombinasyonunu kullanarak kapatabilirsiniz. @@ -331,7 +334,7 @@ bbb.chat.usersList.accessibilityName = Özel sohbet baÅŸlatmak için kullanıcı bbb.chat.chatOptions = Sohbet Seçenekleri bbb.chat.fontSize = Sohbet Mesajı Yazı Boyutu bbb.chat.cmbFontSize.toolTip = Chat Mesajı Font Büyüklüğü -bbb.chat.messageList = Sohbet Mesajlar +bbb.chat.messageList = Sohbet Mesajları bbb.chat.minimizeBtn.accessibilityName = Sohbet Penceresini Küçült bbb.chat.maximizeRestoreBtn.accessibilityName = Sohbet Penceresini Büyült bbb.chat.closeBtn.accessibilityName = Sohbet Penceresini Kapat @@ -346,14 +349,14 @@ bbb.publishVideo.startPublishBtn.labelText = Paylaşımı BaÅŸlat bbb.publishVideo.startPublishBtn.toolTip = Kameranızı paylaÅŸmaya baÅŸlayın bbb.publishVideo.startPublishBtn.errorName = Web kamerası paylaşılamadı. Sebebi: {0} bbb.webcamPermissions.chrome.title = Chrome Webcam Ä°zinleri -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = Chrome'un web kameranızı kullanabilmesi için Ä°zin Ver tıklayın bbb.videodock.title = Kameralar bbb.videodock.quickLink.label = Kamera Penceresi bbb.video.minimizeBtn.accessibilityName = Kamera Penceresini Küçült bbb.video.maximizeRestoreBtn.accessibilityName = Kamera Penceresini Büyült -bbb.video.controls.muteButton.toolTip = {0} sesli ya da sessiz yap +bbb.video.controls.muteButton.toolTip = Sustur ya da konuÅŸtur {0} bbb.video.controls.switchPresenter.toolTip = {0} sunucu yap -bbb.video.controls.ejectUserBtn.toolTip = Toplantıdan {0} çıkart +bbb.video.controls.ejectUserBtn.toolTip = {0} kullanıcısını görüşmeden çıkart bbb.video.controls.privateChatBtn.toolTip = {0} ile sohbet et bbb.video.publish.hint.noCamera = Kamera bulunamadı bbb.video.publish.hint.cantOpenCamera = Kameranız açılamıyor @@ -367,6 +370,7 @@ bbb.video.publish.closeBtn.accessName = Kamera ayarları iletiÅŸim kutusunu kapa bbb.video.publish.closeBtn.label = Vazgeç bbb.video.publish.titleBar = Kamera Penceresini Yayımla bbb.video.streamClose.toolTip = Kapatılacak yayın akışı: {0} +bbb.video.message.browserhttp = Sunucu bilgisayarın SSL güvenlik sertifikası olmadığından {0} web kamera paylaşımınızı engelliyor. bbb.screensharePublish.title = Ekran Paylaşımı: Sunucu Önizlemesi bbb.screensharePublish.pause.tooltip = Masaüstü paylaşımını durdur bbb.screensharePublish.pause.label = Durdur @@ -378,7 +382,7 @@ bbb.screensharePublish.closeBtn.accessibilityName = PaylaÅŸmayı Durdur ve Ekran bbb.screensharePublish.minimizeBtn.toolTip = Küçült bbb.screensharePublish.minimizeBtn.accessibilityName = Ekran Paylaşımı Yayımlama Penceresini Küçült bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Ekran Paylaşımı Yayımlama Penceresini Büyült -bbb.screensharePublish.commonHelpText.text = AÅŸağıdaki adımlar sizi baÅŸlama ekranını paylaÅŸmaya yönlendirecek (Java gereklidir). +bbb.screensharePublish.commonHelpText.text = Ekran paylaşımını baÅŸlatmanız için aÅŸağıdaki adımlar sizi yönlendirecektir (Java gereklidir). bbb.screensharePublish.helpButton.toolTip = Yardım bbb.screensharePublish.helpButton.accessibilityName = Yardım (yardım videolarını yeni sayfada açar) bbb.screensharePublish.helpText.PCIE1 = 1. "Aç"ı seçin. @@ -428,54 +432,58 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Ekran paylaşımı ek bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = Gizli sekmede olabilirsiniz ya da özel tarayıcı kullanıyor olabilirsiniz. Eklenti ayarlarından eklentileri gizli sekmede/özel tarayıcıda kullanabilme ayarını yaptığınızdan emin olun. bbb.screensharePublish.WebRTCExtensionInstallButton.label = Yüklemek için tıkla bbb.screensharePublish.WebRTCUseJavaButton.label = Java Ekran Paylaşımını Kullan -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.WebRTCVideoLoading.label = Video yükleniyor... Lütfen bekleyin +bbb.screensharePublish.sharingMessage= Bu sizin paylaşılan ekranınız bbb.screenshareView.title = Ekran Paylaşımı bbb.screenshareView.fitToWindow = Pencereye Sığdır bbb.screenshareView.actualSize = Gerçek boyutta görüntüle bbb.screenshareView.minimizeBtn.accessibilityName = Ekran Paylaşım Penceresini Küçült bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Ekran Paylaşım Penceresini Büyült bbb.screenshareView.closeBtn.accessibilityName = Masaüstü Paylaşım Ä°zleme Penceresini Kapat -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = Sesi etkinleÅŸtir (mikrofon ya da yalnızca dinleme) +bbb.toolbar.phone.toolTip.stop = Ses Ä°ptal bbb.toolbar.phone.toolTip.mute = Konferansı dinlemeyi durdur bbb.toolbar.phone.toolTip.unmute = Konferansı dinlemeye baÅŸla. bbb.toolbar.phone.toolTip.nomic = Mikrofon bulunamadı bbb.toolbar.deskshare.toolTip.start = Masaüstü Paylaşım Penceresini Aç bbb.toolbar.deskshare.toolTip.stop = Ekran Paylaşımını Durdur -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = Paylaşılan Notları Aç bbb.toolbar.video.toolTip.start = Kameramı PaylaÅŸ bbb.toolbar.video.toolTip.stop = Kameramı PaylaÅŸmayı Durdur -bbb.layout.addButton.toolTip = OluÅŸturulan sayfa düzenini listeye ekle -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Sayfa Düzenini DeÄŸiÅŸtir -bbb.layout.loadButton.toolTip = Bir dosyadan sayfa düzeni yükle -bbb.layout.saveButton.toolTip = Sayfa düzenini bir dosyaya kaydet -bbb.layout.lockButton.toolTip = Sayfa düzenini kilitle -bbb.layout.combo.prompt = Sayfa düzenini uygula -bbb.layout.combo.custom = * Özel sayfa düzeni -bbb.layout.combo.customName = Özel sayfa düzeni +bbb.layout.addButton.label = Ekle +bbb.layout.addButton.toolTip = OluÅŸturulan görünümü listeye ekle +bbb.layout.overwriteLayoutName.title = Görünümü üzerine yaz +bbb.layout.overwriteLayoutName.text = Bu isim kullanımda. Ãœzerine yazmak istiyor musunuz? +bbb.layout.broadcastButton.toolTip = Mevcut görünümü tüm izleyicilere uygula +bbb.layout.combo.toolTip = Görünümü DeÄŸiÅŸtir +bbb.layout.loadButton.toolTip = Dosyadan görünüm yükle +bbb.layout.saveButton.toolTip = Görünümü dosyaya kaydet +bbb.layout.lockButton.toolTip = Görünümü kilitle +bbb.layout.combo.prompt = Görünüm uygula +bbb.layout.combo.custom = * Özel görünüm +bbb.layout.combo.customName = Özel görünüm bbb.layout.combo.remote = Uzaktan -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Sayfa düzeni baÅŸarıyla kaydedildi -bbb.layout.load.complete = Sayfa düzeni baÅŸarıyla yüklendi -bbb.layout.load.failed = Sayfa düzeni yüklenemedi -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.window.name = Görünüm adı +bbb.layout.window.close.tooltip = Kapat +bbb.layout.window.close.accessibilityName = Yeni görünüm ekleme penceresini kapat +bbb.layout.save.complete = Görünümler baÅŸarıyla kaydedildi +bbb.layout.save.ioerror = Görünümler kaydedilemedi. Tekrar kaydetmeyi deneyin. +bbb.layout.load.complete = Görünümler baÅŸarıyla yüklendi +bbb.layout.load.failed = Görünüm yüklenemedi +bbb.layout.sync = Görünümünüz tüm katılımcılara gönderildi. bbb.layout.name.defaultlayout = Varsayılan Görünüm bbb.layout.name.closedcaption = Altyazı -bbb.layout.name.videochat = Video Görünümü +bbb.layout.name.videochat = Video Sohbet bbb.layout.name.webcamsfocus = Web Kamerası Görünümü bbb.layout.name.presentfocus = Sunum Görünümü -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = Sunum + Kullanıcılar bbb.layout.name.lectureassistant = Ders Asistanı Görünümü bbb.layout.name.lecture = Ders Görünümü -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = Paylaşılan Notlar +bbb.layout.addCurrentToFileWindow.title = Mevcut Görünümü dosyaya kaydet +bbb.layout.addCurrentToFileWindow.text = Mevcut görünümü dosyaya kaydetmek istiyor musunuz? +bbb.layout.denyAddToFile.toolTip = Mevcut görünümü eklemeyi reddet +bbb.layout.confirmAddToFile.toolTip = Mevcut görünümü eklemeyi onaylayın bbb.highlighter.toolbar.pencil = Kalem bbb.highlighter.toolbar.pencil.accessibilityName = Beyaz tahta imlecini kalem olarak deÄŸiÅŸtir bbb.highlighter.toolbar.ellipse = Daire @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Renk Seç bbb.highlighter.toolbar.color.accessibilityName = Beyaz tahta çizim iÅŸareti rengi bbb.highlighter.toolbar.thickness = Çizgi Kalınlığını DeÄŸiÅŸtir bbb.highlighter.toolbar.thickness.accessibilityName = Beyaz tahta çizim kalınlığı -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Çıkış +bbb.highlighter.toolbar.multiuser = Çok-kullanıcılı Çizim bbb.logout.button.label = TAMAM bbb.logout.appshutdown = Sunucu uygulaması sonlandırıldı bbb.logout.asyncerror = EÅŸzamansızlık Hatası oluÅŸtu @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Sunucuya olan baÄŸlantı sonlandı. bbb.logout.rejected = Sunucu olan baÄŸlantı reddedildi. bbb.logout.invalidapp = Red5 uygulaması mevcut deÄŸil bbb.logout.unknown = Kullanıcı sunucuyla olan baÄŸlantısını kaybetti. -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = Moderatör sizin görüşmeye katılımınıza onay vermedi bbb.logout.usercommand = Konferanstan ayrıldınız bbb.logour.breakoutRoomClose = Tarayıcı penceresi kapatılacak. -bbb.logout.ejectedFromMeeting = Moderatör sizi toplantıdan çıkardı. +bbb.logout.ejectedFromMeeting = Görüşmeden çıkarıldınız bbb.logout.refresh.message = EÄŸer baÄŸlantınız beklenmedik bir ÅŸekilde koptuysa Tekrar BaÄŸlan butonuna basarak yeniden baÄŸlanabilirsiniz. bbb.logout.refresh.label = Tekrar BaÄŸlan -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = BigBlueButton'ı nasıl daha iyi yapabiliriz? +bbb.logout.feedback.label = BigBlueButton deneyiminizi bizimle paylaşın (zorunlu deÄŸil) +bbb.settings.title = Ayarlar +bbb.settings.ok = TAMAM +bbb.settings.cancel = Ä°ptal +bbb.settings.btn.toolTip = Ayarlar penceresini aç bbb.logout.confirm.title = Çıkışı Onayla bbb.logout.confirm.message = Çıkmak istediÄŸinizden emin misiniz? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = Evet ve görüşmeyi sonlandır bbb.logout.confirm.yes = Evet bbb.logout.confirm.no = Hayır -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = Uyarı +bbb.endSession.confirm.message = Oturumu kapatırsanız tüm katılımcıların baÄŸlantısı kesilecektir. Devam etmek istiyor musunuz? bbb.connection.failure=BaÄŸlantı Sorunları Algılandı bbb.connection.reconnecting=Yeniden baÄŸlanılıyor bbb.connection.reestablished=BaÄŸlantı yeniden kuruldu @@ -530,59 +539,60 @@ bbb.notes.title = Notlar bbb.notes.cmpColorPicker.toolTip = Metin Rengi bbb.notes.saveBtn = Kaydet bbb.notes.saveBtn.toolTip = Notları Kaydet -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = Paylaşılan notlar +bbb.sharedNotes.quickLink.label = Paylaşılan Notlar Penceresi +bbb.sharedNotes.createNoteWindow.label = Not ismi +bbb.sharedNotes.createNoteWindow.close.tooltip = Kapat +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Yeni not oluÅŸtur penceresini kapat +bbb.sharedNotes.typing.single = {0} yazıyor... +bbb.sharedNotes.typing.double = {0} ve {1} yazıyor... +bbb.sharedNotes.typing.multiple = Birçok kiÅŸi yazıyor... +bbb.sharedNotes.save.toolTip = Notları dosyaya kaydet +bbb.sharedNotes.save.complete = Notlar baÅŸarıyla kaydedildi. +bbb.sharedNotes.save.ioerror = Notlar kaydedilmedi. Tekrar kaydetmeyi deneyin. +bbb.sharedNotes.save.htmlLabel = BiçimlendirilmiÅŸ metin (.html) +bbb.sharedNotes.save.txtLabel = Düz metin +bbb.sharedNotes.new.label = OluÅŸtur +bbb.sharedNotes.new.toolTip = Ä°lave not oluÅŸtur +bbb.sharedNotes.limit.label = Notlar limitine ulaşıldı +bbb.sharedNotes.clear.label = Bu notu temizle +bbb.sharedNotes.undo.toolTip = Düzenlemeyi geri al +bbb.sharedNotes.redo.toolTip = Düzenlemeyi geri al +bbb.sharedNotes.toolbar.toolTip = Metin biçimlendirme araç çubuÄŸu +bbb.sharedNotes.settings.toolTip = Paylaşılan notlar ayarları +bbb.sharedNotes.clearWarning.title = Paylaşılan notlar temizleniyor +bbb.sharedNotes.clearWarning.message = Bu eylem tüm kullanıcılar için bu ekrandaki notları silecektir ve tekrar geri alma imkanı yoktur. Bu notları temizlemek istediÄŸinize emin misiniz? +bbb.sharedNotes.additionalNotes.closeWarning.title = Paylaşılan notlar kapatılıyor +bbb.sharedNotes.additionalNotes.closeWarning.message = Bu eylem tüm kullanıcılar için bu ekrandaki notları silecektir ve tekrar geri alma imkanı yoktur. Bu notları kapatmak istediÄŸinize emin misiniz? +bbb.sharedNotes.messageLengthWarning.title = Karakter deÄŸiÅŸtirme limiti aşıldı +bbb.sharedNotes.messageLengthWarning.text = Yaptığınız deÄŸiÅŸiklikler limitleri {0} aşıyor. Daha küçük deÄŸiÅŸiklikler yapmayı deneyin. +bbb.sharedNotes.remaining.tooltip = Paylaşılan notlarda kalan boÅŸ alan miktarı +bbb.sharedNotes.full.tooltip = Kapasite doldu (biraz metin silmeyi deneyin) bbb.settings.deskshare.instructions = Masaüstü paylaşımınızın düzgün çalışıp çalışmadığını denetleyen iletilerde Kabul seçeneÄŸini tıklayın bbb.settings.deskshare.start = Masaüstü Paylaşımını Kontrol Et bbb.settings.voice.volume = Mikrofon Hareketleri -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = Java sürüm hatası +bbb.settings.java.text = Java {0} sürümü yüklü, fakat BigBlueButton masaüstü paylaşımı özelliÄŸini kullanabilmek için en az {1} sürümüne ihtiyacınız var. AÅŸağıdaki buton en son Java JRE sürümünü yükleyecektir. +bbb.settings.java.command = Yeni sürüm Java yükleyin bbb.settings.flash.label = Flash sürüm hatası bbb.settings.flash.text = Bilgisayarınızda Flash {0} sürümü yüklü, fakat BigBlueButton’ı düzgün çalıştırmak için Flash {1} ve üzeri sürümüne ihtiyacınız var. Güncel Adobe Flash sürümünü yüklemek için düğmeye tıklayın. bbb.settings.flash.command = Flash'ın yenisürümünü Yükle bbb.settings.isight.label = iSight kamera hatası -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = iSight web kameranızla ilgili sorun yaşıyorsanız bunun nedeni iSight web kameradan Flash video yakalama problemi olduÄŸu bilinen OS X 10.6.5 olabilir.\nBu durumu düzeltmek için aÅŸağıdaki linkten Flash Player yeni sürümünü yükleyin ya da Mac cihazınızı yeni versiyona güncelleyin. bbb.settings.isight.command = Flash 10.2 RC2 Yükle bbb.settings.warning.label = Uyarı bbb.settings.warning.close = Bu Uyarıyı kapat bbb.settings.noissues = ÇözümlenmemiÅŸ soruna rastlanmadı. bbb.settings.instructions = Flash'ın kamera kullanım izni isteÄŸini onaylayın. EÄŸer kendinizi görebiliyor ve duyabiliyorsanız tarayıcınız düzgün bir ÅŸekilde ayarlanmıştır. DiÄŸer potansiyel sorunlar aÅŸağıda sıralanmıştır. Olası çözümleri bulabilmek için her birine tıklayın. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = AÄŸ izleme +bbb.bwmonitor.upload = Yükle +bbb.bwmonitor.upload.short = Yukarı +bbb.bwmonitor.download = Ä°ndir +bbb.bwmonitor.download.short = AÅŸağı +bbb.bwmonitor.total = Toplam +bbb.bwmonitor.current = Mevcut +bbb.bwmonitor.available = Müsait +bbb.bwmonitor.latency = Gecikme ltbcustom.bbb.highlighter.toolbar.triangle = Üçgen ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Beyaz tahta imlecini üçgen olarak deÄŸiÅŸtir ltbcustom.bbb.highlighter.toolbar.line = Düz Çizgi @@ -592,8 +602,8 @@ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Beyaz tahta imlecini ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Metin rengi ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Yazı büyüklüğü bbb.caption.window.title = Altyazı -bbb.caption.quickLink.label = Kapalı Altyazı Penceresi -bbb.caption.window.titleBar = Kapalı Altyazı Penceresi BaÅŸlık ÇubuÄŸu +bbb.caption.quickLink.label = Altyazı Penceresi +bbb.caption.window.titleBar = Altyazı Penceresi BaÅŸlık ÇubuÄŸu bbb.caption.window.minimizeBtn.accessibilityName = Altyazı Penceresini Küçült bbb.caption.window.maximizeRestoreBtn.accessibilityName = Altyazı Penceresini Büyüt bbb.caption.transcript.noowner = Hiçbiri @@ -627,7 +637,7 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Son mesaja eriÅŸtiniz. bbb.accessibility.chat.chatBox.navigatedLatestRead = OkuduÄŸunuz en son mesaja yönlendirildiniz. bbb.accessibility.chat.chatwindow.input = Sohbet veri giriÅŸi bbb.accessibility.chat.chatwindow.audibleChatNotification = Sesli Sohbet Bildirimi -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = Genel Sohbet Seçenekleri bbb.accessibility.chat.initialDescription = Sohbet mesajları arasında gezinmek için lütfen ok tuÅŸlarını kullanın. bbb.accessibility.notes.notesview.input = Not giriÅŸi @@ -642,7 +652,7 @@ bbb.shortcuthelp.dropdown.general = Genel Kısayollar bbb.shortcuthelp.dropdown.presentation = Sunum kısayolları bbb.shortcuthelp.dropdown.chat = Sohbet kısayolları bbb.shortcuthelp.dropdown.users = Kullanıcı kısayolları -bbb.shortcuthelp.dropdown.caption = Kapalı Altyazı Kısayolları +bbb.shortcuthelp.dropdown.caption = Altyazı kısayolları bbb.shortcuthelp.browserWarning.text = kısayolların tam listesi sadece Internet Explorer'da desteklenir. bbb.shortcuthelp.headers.shortcut = Kısayol bbb.shortcuthelp.headers.function = Ä°ÅŸlev @@ -655,9 +665,9 @@ bbb.shortcutkey.general.maximize.function = Mevcut pencereyi büyült bbb.shortcutkey.flash.exit = 79 bbb.shortcutkey.flash.exit.function = Flash Penceresinden UzaklaÅŸtır bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mikrofonunuzu sesli ya da sessiz yapın +bbb.shortcutkey.users.muteme.function = Mikrofonunuzu Susturun ya da Açın bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Sohbet girdi alanına odakla +bbb.shortcutkey.chat.chatinput.function = Sohbet girdi alanını odakla bbb.shortcutkey.present.focusslide = 67 bbb.shortcutkey.present.focusslide.function = Sunu slaydına odakla bbb.shortcutkey.whiteboard.undo = 90 @@ -672,7 +682,7 @@ bbb.shortcutkey.focus.presentation.function = Odaklamayı Sunum penceresine kayd bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Odaklamayı Sohbet penceresine kaydır bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Odağı Kapalı LAtyazı bölümüne taşı +bbb.shortcutkey.focus.caption.function = Odaklanmayı Altyazı penceresine kaydır bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Masaüstü paylaşım penceresini aç @@ -682,7 +692,7 @@ bbb.shortcutkey.share.webcam.function = Kamera paylaşım penceresini aç bbb.shortcutkey.shortcutWindow = 72 bbb.shortcutkey.shortcutWindow.function = Kısayol TuÅŸları penceresini aç/odakla bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Bu toplantıdan çık +bbb.shortcutkey.logout.function = Bu görüşmeden ayrıl bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = Elini kaldır @@ -702,13 +712,13 @@ bbb.shortcutkey.present.fitPage.function = Slaytları sayfaya sığdır bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Seçili kiÅŸiyi sunucu yap bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Seçili kiÅŸiyi toplantıdan çıkart +bbb.shortcutkey.users.kick.function = Seçili kiÅŸiyi görüşmeden çıkar bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Seçili kiÅŸiyi sesli ya da sessiz yap +bbb.shortcutkey.users.mute.function = Seçili kiÅŸiyi susturun ya da konuÅŸturun bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Tüm kullanıcıları sesli ya da sessiz yap +bbb.shortcutkey.users.muteall.function = Tüm kullanıcıları susturun ya da konuÅŸturun bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Sunucu hariç tümünü sessiz yap +bbb.shortcutkey.users.muteAllButPres.function = Sunucu hariç herkesi sustur bbb.shortcutkey.users.breakoutRooms = 75 bbb.shortcutkey.users.breakoutRooms.function = Özel odalar penceresi bbb.shortcutkey.users.focusBreakoutRooms = 82 @@ -721,15 +731,15 @@ bbb.shortcutkey.users.joinBreakoutRoom.function = Seçili özel odaya katıl bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Sohbet sekmelerine odakla bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = sohbet mesaj listesine odakla +bbb.shortcutkey.chat.focusBox.function = Sohbet mesaj listesini odakla bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Yazı rengi seçimine odaklan +bbb.shortcutkey.chat.changeColour.function = Yazı rengi seçimini odakla bbb.shortcutkey.chat.sendMessage = 83 bbb.shortcutkey.chat.sendMessage.function = Sohbet mesajı gönder bbb.shortcutkey.chat.closePrivate = 69 bbb.shortcutkey.chat.closePrivate.function = Özel sohbet sekmesini kapat bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = Mesaja gitmek için sohbet kutusuna odaklamanız gerekir. +bbb.shortcutkey.chat.explanation.function = Mesajlar arasında gezinmek için sohbet kutusunu odaklamanız gerekir. bbb.shortcutkey.chat.chatbox.advance = 40 bbb.shortcutkey.chat.chatbox.advance.function = Sonraki mesaja git @@ -749,13 +759,14 @@ bbb.shortcutkey.chat.chatbox.debug.function = Geçici hata ayıklama kısayolu bbb.shortcutkey.caption.takeOwnership = 79 bbb.shortcutkey.caption.takeOwnership.function = Seçili dilin sahipliÄŸini al -bbb.polling.startButton.tooltip = Bir anket oluÅŸtur -bbb.polling.startButton.label = Anketi BaÅŸlat +bbb.polling.startButton.tooltip = Bir oylama oluÅŸtur +bbb.polling.startButton.label = Oylama BaÅŸlat bbb.polling.publishButton.label = Yayımla bbb.polling.closeButton.label = Kapat -bbb.polling.customPollOption.label = Özel Anket -bbb.polling.pollModal.title = Canlı Anket Sonuçları -bbb.polling.customChoices.title = Anket Seçeneklerini Girin +bbb.polling.customPollOption.label = Özel Oylama +bbb.polling.pollModal.title = Canlı Oylama Sonuçları +bbb.polling.pollModal.hint = Öğrencilerin oylamaya katılabilmeleri için bu pencereyi açık bırakın. Yayınla ya da Kapat tıklarsanız oylama sonlanacaktır. +bbb.polling.customChoices.title = Oylama Seçeneklerini Girin bbb.polling.respondersLabel.novotes = Cevaplar bekleniyor bbb.polling.respondersLabel.text = {0} Kullanıcı Cevapladı bbb.polling.respondersLabel.finished = Yapıldı @@ -770,7 +781,7 @@ bbb.polling.answer.D = D bbb.polling.answer.E = E bbb.polling.answer.F = F bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Anket Sonuçları +bbb.polling.results.accessible.header = Oylama Sonuçları bbb.polling.results.accessible.answer = {0} seçeneÄŸi için {1} oy kullanıldı. bbb.publishVideo.startPublishBtn.labelText = Paylaşımı BaÅŸlat @@ -795,19 +806,21 @@ bbb.users.settings.breakoutRooms = Özel Odalar ... bbb.users.settings.sendBreakoutRoomsInvitations = Özel Oda Davetiyeleri Gönder ... bbb.users.settings.unlockAll = Tüm izleyicilerin kilidini aç bbb.users.settings.roomIsLocked = Varsayılan kilitle -bbb.users.settings.roomIsMuted = Varsayılan Sessiz +bbb.users.settings.roomIsMuted = Varsayılan olarak SusturulmuÅŸ bbb.lockSettings.save = Uygula bbb.lockSettings.save.tooltip = Kilit Ayarlarını Uygula bbb.lockSettings.cancel = Vazgeç bbb.lockSettings.cancel.toolTip = Bu pencereyi kaydetmeden kapat -bbb.lockSettings.moderatorLocking = Yönetici kitliyor +bbb.lockSettings.hint = Bu seçenekler, özel sohbete katılım engellemesi gibi, izleyicilere ait bazı özellikleri kısıtlamanızı saÄŸlar. (Bu kısıtlamalar moderatörlere uygulanmaz.) +bbb.lockSettings.moderatorLocking = Moderatör kilidi bbb.lockSettings.privateChat = Özel Sohbet bbb.lockSettings.publicChat = Genel Sohbet bbb.lockSettings.webcam = Kamera +bbb.lockSettings.webcamsOnlyForModerator = DiÄŸer izleyicilerin kameralarını gizle bbb.lockSettings.microphone = Mikrofon -bbb.lockSettings.layout = Sayfa Düzeni +bbb.lockSettings.layout = Görünüm bbb.lockSettings.title=Izleyicileri Kilitle bbb.lockSettings.feature=Özellik bbb.lockSettings.locked=Kilitlendi @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=Katılım Kilitli bbb.users.breakout.breakoutRooms = Özel Odalar bbb.users.breakout.updateBreakoutRooms = Özel odaları güncelle +bbb.users.breakout.timerForRoom.toolTip = Bu özel oda için kalan süre bbb.users.breakout.timer.toolTip = Özel odalar için kalan zaman bbb.users.breakout.calculatingRemainingTime = Kalan zaman hesaplanıyor... bbb.users.breakout.closing = Kapanış +bbb.users.breakout.closewarning.text = Özel odalar bir dakika içinde kapanıyor. bbb.users.breakout.rooms = Odalar bbb.users.breakout.roomsCombo.accessibilityName = OluÅŸturulacak oda sayısı bbb.users.breakout.room = Oda -bbb.users.breakout.randomAssign = Raslantısal Atanan Kullanıcılar bbb.users.breakout.timeLimit = Zaman Kısıtı bbb.users.breakout.durationStepper.accessibilityName = Dakikalar içinde zaman kısıtlaması bbb.users.breakout.minutes = Dakika @@ -834,14 +848,14 @@ bbb.users.breakout.invite = Davet Et bbb.users.breakout.close = Kapat bbb.users.breakout.closeAllRooms = Tüm Özel Odaları Kapat bbb.users.breakout.insufficientUsers = Yetersiz kullanıcı. Bir özel odaya en az bir kullanıcı yerleÅŸtirmelisiniz. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = Bir Özel Odaya katıl +bbb.users.breakout.invited = <b>Özel Oda</b> katılım daveti aldınız +bbb.users.breakout.accept = Kabul ettiÄŸinizde sesli ve görüntülü görüşmeden otomatik olarak ayrılacaksınız. +bbb.users.breakout.joinSession = Oturuma Katıl +bbb.users.breakout.joinSession.accessibilityName = Özel Oda Oturumuna Katılın +bbb.users.breakout.joinSession.close.tooltip = Kapat +bbb.users.breakout.joinSession.close.accessibilityName = Özel Oda Katılım Penceresini Kapat +bbb.users.breakout.youareinroom = {0} Özel Odasındasınız bbb.users.roomsGrid.room = Oda bbb.users.roomsGrid.users = Kullanıcılar bbb.users.roomsGrid.action = Eylem @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = Sesi Aktar bbb.users.roomsGrid.join = Katıl bbb.users.roomsGrid.noUsers = Bu odada kullanıcı yok -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default=Varsayılan dil + +bbb.alert.cancel = Vazgeç +bbb.alert.ok = TAMAM +bbb.alert.no = Hayır +bbb.alert.yes = Evet diff --git a/bigbluebutton-client/locale/uk_UA/bbbResources.properties b/bigbluebutton-client/locale/uk_UA/bbbResources.properties index 7d41f51961668e8ecf114cbb75d0349edffdd6ca..a8f3926c4d4b65b461d803eec7bec0cb8e55993b 100644 --- a/bigbluebutton-client/locale/uk_UA/bbbResources.properties +++ b/bigbluebutton-client/locale/uk_UA/bbbResources.properties @@ -9,17 +9,17 @@ bbb.mainshell.invalidAuthToken = Ðевірний ключ аутентифік bbb.mainshell.resetLayoutBtn.toolTip = Скинути Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–ÐºÐ¾Ð½ bbb.mainshell.notification.tunnelling = ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ bbb.mainshell.notification.webrtc = ТранÑлÑÑ†Ñ–Ñ Ð·Ð²ÑƒÐºÑƒ за допомогою WebRTC -bbb.mainshell.fullscreenBtn.toolTip = -bbb.mainshell.quote.sentence.1 = -bbb.mainshell.quote.attribution.1 = -bbb.mainshell.quote.sentence.2 = -bbb.mainshell.quote.attribution.2 = -bbb.mainshell.quote.sentence.3 = -bbb.mainshell.quote.attribution.3 = -bbb.mainshell.quote.sentence.4 = -bbb.mainshell.quote.attribution.4 = +bbb.mainshell.fullscreenBtn.toolTip = Переключити на повний екран +bbb.mainshell.quote.sentence.1 = Ðемає Ñекретів Ð´Ð»Ñ ÑƒÑпіху. Це результат підготовки, напруженої роботи та Ð½Ð°Ð²Ñ‡Ð°Ð½Ð½Ñ Ñ‡ÐµÑ€ÐµÐ· невдачі. +bbb.mainshell.quote.attribution.1 = Колін Павелл +bbb.mainshell.quote.sentence.2 = Скажи мені, Ñ– Ñ Ð·Ð°Ð±ÑƒÐ´Ñƒ. Ðавчіть мене, Ñ– Ñ Ð¿Ð°Ð¼'Ñтаю. Залучіть мене, Ñ– Ñ Ð½Ð°Ð²Ñ‡ÑƒÑÑŒ. +bbb.mainshell.quote.attribution.2 = Бенджамін Франклін +bbb.mainshell.quote.sentence.3 = Я зрозумів цінніÑÑ‚ÑŒ важкої праці, важко працюючи. +bbb.mainshell.quote.attribution.3 = Маргарет Мід +bbb.mainshell.quote.sentence.4 = Розвивайте приÑтраÑÑ‚ÑŒ до навчаннÑ. Якщо ви це зробите то ніколи не переÑтанете розвиватиÑÑŒ. +bbb.mainshell.quote.attribution.4 = Ентоні Д. Ðнджело bbb.mainshell.quote.sentence.5 = ДоÑÐ»Ñ–Ð´Ð¶ÐµÐ½Ð½Ñ Ñ†Ðµ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð½Ð¾Ð²Ð¸Ñ… знань -bbb.mainshell.quote.attribution.5 = +bbb.mainshell.quote.attribution.5 = Ðіл ÐрмÑтронг bbb.oldlocalewindow.reminder1 = Можливо, у Ð²Ð°Ñ Ð·Ð°Ñтаріла верÑÑ–Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ BigBlueButton. bbb.oldlocalewindow.reminder2 = Будь лаÑка, очиÑÑ‚Ñ–Ñ‚ÑŒ кеш браузера Ñ– Ñпробуйте ще раз. bbb.oldlocalewindow.windowTitle = Увага: заÑтаріла верÑÑ–Ñ Ð¿ÐµÑ€ÐµÐºÐ»Ð°Ð´Ñƒ @@ -66,6 +66,7 @@ bbb.micSettings.webrtc.waitingforice = З'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ bbb.micSettings.webrtc.transferring = Іде передача bbb.micSettings.webrtc.endingecho = ÐŸÑ€Ð¸Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð´Ð¾ аудіо-конференції bbb.micSettings.webrtc.endedecho = Ехо теÑÑ‚ завершений. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Дозволи мікрофона Firefox bbb.micPermissions.firefox.message = ÐатиÑніть клавішу Дозволити Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ щоб Firefox отримав дозвіл викориÑтовувати ваш мікрофон bbb.micPermissions.chrome.title = Дозволи мікрофона Chrome @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Ехо-теÑÑ‚ з викор bbb.webrtcWarning.connection.dropped = WebRTC з'Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð²Ñ‚Ñ€Ð°Ñ‡ÐµÐ½Ð¾ bbb.webrtcWarning.connection.reconnecting = Спроба Ð¿ÐµÑ€ÐµÐ¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ bbb.webrtcWarning.connection.reestablished = WebRTC Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾ -bbb.inactivityWarning.title = -bbb.inactivityWarning.message = +bbb.inactivityWarning.title = Дії не виÑвлено +bbb.inactivityWarning.message = ЗдаєтьÑÑ Ð·ÑƒÑтріч неактивна. Іде автоматичне завершеннÑ... bbb.shuttingDown.message = Ð¦Ñ Ð·ÑƒÑтріч була заваршене через неактивніÑÑ‚ÑŒ bbb.inactivityWarning.cancel = Відмінити bbb.mainToolbar.helpBtn = Допомога bbb.mainToolbar.logoutBtn = Вихід bbb.mainToolbar.logoutBtn.toolTip = Вийти -bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.idleLogoutBtn = {0} | Ð¡ÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ñ‚Ð°Ð¹Ð¼ÐµÑ€Ð° виходу bbb.mainToolbar.langSelector = Вибрати мову bbb.mainToolbar.settingsBtn = ÐаÑтройки bbb.mainToolbar.settingsBtn.toolTip = Відкрити ÐаÑтройки @@ -116,12 +117,12 @@ bbb.mainToolbar.recordBtn.toolTip.wontRecord = Ð¦Ñ ÑеÑÑ–Ñ Ð½Ðµ може б bbb.mainToolbar.recordBtn.confirm.title = Підтвердіть Ð·Ð°Ð¿Ð¸Ñ bbb.mainToolbar.recordBtn.confirm.message.start = Ви впевнені, що бажаєте почати Ð·Ð°Ð¿Ð¸Ñ ÑеÑÑ–Ñ—? bbb.mainToolbar.recordBtn.confirm.message.stop = Ви впевнені що бажаєте зупинити Ð·Ð°Ð¿Ð¸Ñ ÑеÑÑ–Ñ—? -bbb.mainToolbar.recordBtn..notification.title = ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ Ð·Ð°Ð¿Ð¸Ñ -bbb.mainToolbar.recordBtn..notification.message1 = Ви можете запиÑати цю конференцію. -bbb.mainToolbar.recordBtn..notification.message2 = Щоб почати/закінчити запиÑ, ви повинні натиÑнути на кнопку Почати/Зупинити Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° верхній панелі. +bbb.mainToolbar.recordBtn.notification.title = ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ Ð·Ð°Ð¿Ð¸Ñ +bbb.mainToolbar.recordBtn.notification.message1 = Ви можете запиÑати цю конференцію. +bbb.mainToolbar.recordBtn.notification.message2 = Щоб почати/закінчити запиÑ, ви повинні натиÑнути на кнопку Почати/Зупинити Ð·Ð°Ð¿Ð¸Ñ Ð½Ð° верхній панелі. bbb.mainToolbar.recordingLabel.recording = (ВедетьÑÑ Ð·Ð°Ð¿Ð¸Ñ) bbb.mainToolbar.recordingLabel.notRecording = Ð—Ð°Ð¿Ð¸Ñ Ð½Ðµ ведетьÑÑ -bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.message = У Ð²Ð°Ñ Ð³Ð¾Ñтьовий ÑтатуÑ, зачекайте Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ модератора bbb.waitWindow.waitMessage.title = ÐžÑ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ bbb.guests.title = ГоÑÑ‚Ñ– bbb.guests.message.singular = {0} кориÑтувач бажає приєднатиÑÑŒ до зуÑтрічі @@ -132,7 +133,7 @@ bbb.guests.denyBtn.toolTip = Заборонити bbb.guests.denyEveryoneBtn.text = Заборонити уÑім bbb.guests.rememberAction.text = Запам'Ñтати вибір bbb.guests.alwaysAccept = Завжди приймати -bbb.guests.alwaysDeny = +bbb.guests.alwaysDeny = Завжи заборонÑти bbb.guests.askModerator = Запитати модератора bbb.guests.Management = Ð£Ð¿Ñ€Ð°Ð²Ð»Ñ–Ð½Ð½Ñ Ð³Ð¾ÑÑ‚Ñми bbb.clientstatus.title = ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¾ конфігурацію @@ -152,8 +153,8 @@ bbb.clientstatus.webrtc.weakStatus = Можливо у Ð²Ð°Ñ Ð¿Ñ€Ð¾Ð±Ð»ÐµÐ¼Ð° bbb.clientstatus.webrtc.message = Рекомендуємо викориÑтовувати Firefox або Chrome Ð´Ð»Ñ Ð¿Ð¾Ð»Ñ–Ð¿ÑˆÐµÐ½Ð½Ñ ÑкоÑÑ‚Ñ– аудіо. bbb.clientstatus.java.title = Java bbb.clientstatus.java.notdetected = Ðе виÑвленна верÑÑ–Ñ Java -bbb.clientstatus.java.notinstalled = -bbb.clientstatus.java.oldversion = +bbb.clientstatus.java.notinstalled = У Ð²Ð°Ñ Ð½Ðµ вÑтановлена Java, натиÑніть<font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>ТУТ</a></font> щоб втановити оÑтанню верÑÑ–ÑŽ Java +bbb.clientstatus.java.oldversion = У Ð²Ð°Ñ Ñтара верÑÑ–Ñ Java, натиÑніть <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>ТУТ</a></font> Ð´Ð»Ñ Ð²ÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ñтанньої верÑÑ–Ñ— Java. bbb.window.minimizeBtn.toolTip = Згорнути bbb.window.maximizeRestoreBtn.toolTip = Розгорнути bbb.window.closeBtn.toolTip = Закрити @@ -188,15 +189,15 @@ bbb.users.usersGrid.statusItemRenderer = Ð¡Ñ‚Ð°Ñ‚ÑƒÑ bbb.users.usersGrid.statusItemRenderer.changePresenter = ÐатиÑніть, щоб зробити ведучим bbb.users.usersGrid.statusItemRenderer.presenter = Ведучий bbb.users.usersGrid.statusItemRenderer.moderator = Модератор -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Лише Ð³Ð¾Ð»Ð¾Ñ bbb.users.usersGrid.statusItemRenderer.raiseHand = ПіднÑта рука bbb.users.usersGrid.statusItemRenderer.applause = ÐплодиÑменти bbb.users.usersGrid.statusItemRenderer.thumbsUp = Пальці вверх -bbb.users.usersGrid.statusItemRenderer.thumbsDown = -bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = Пальці вгору +bbb.users.usersGrid.statusItemRenderer.speakLouder = Говоріть голоÑніше bbb.users.usersGrid.statusItemRenderer.speakSofter = Говоріть м'Ñкше bbb.users.usersGrid.statusItemRenderer.speakFaster = Говоріть швидше -bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.speakSlower = Говоріть повільніше bbb.users.usersGrid.statusItemRenderer.away = Ðе на міÑці bbb.users.usersGrid.statusItemRenderer.confused = Здивований bbb.users.usersGrid.statusItemRenderer.neutral = Ðейтральний @@ -214,13 +215,13 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Увімкнути мікро bbb.users.usersGrid.mediaItemRenderer.pushToMute = Вимкнути мікрофон {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Заблокувати {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Розблокувати {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Виключити {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Веб-камера увімкнена bbb.users.usersGrid.mediaItemRenderer.micOff = Вимкнути мікрофон bbb.users.usersGrid.mediaItemRenderer.micOn = Увімкнути мікрофон bbb.users.usersGrid.mediaItemRenderer.noAudio = Ðе у аудіоконференції -bbb.users.usersGrid.mediaItemRenderer.promoteUser = -bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = Рекламувати {0} модератору +bbb.users.usersGrid.mediaItemRenderer.demoteUser = Знизити {0} Ð´Ð»Ñ Ð³Ð»Ñдача bbb.users.emojiStatus.clear = ОчиÑтити bbb.users.emojiStatus.raiseHand = ПіднÑти руку bbb.users.emojiStatus.happy = ВеÑелий @@ -232,12 +233,12 @@ bbb.users.emojiStatus.thumbsUp = Палець вверех bbb.users.emojiStatus.thumbsDown = Палець вниз bbb.users.emojiStatus.applause = ÐплодиÑменти bbb.users.emojiStatus.agree = Я погоджуюÑÑŒ -bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.disagree = Я не погоджуюÑÑŒ bbb.users.emojiStatus.none = ОчиÑтити -bbb.users.emojiStatus.speakLouder = -bbb.users.emojiStatus.speakSofter = -bbb.users.emojiStatus.speakFaster = -bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.speakLouder = Чи не могли б ви говорити голоÑніше +bbb.users.emojiStatus.speakSofter = Ðе могли б ви говорити м'Ñкше? +bbb.users.emojiStatus.speakFaster = Чи не могли б ви говорити швидше? +bbb.users.emojiStatus.speakSlower = Чи не могли б ви говорити повільніше bbb.users.emojiStatus.beRightBack = Скоро повернуÑÑŒ bbb.presentation.title = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ bbb.presentation.titleWithPres = ПрезентаціÑ: {0} @@ -246,7 +247,7 @@ bbb.presentation.fitToWidth.toolTip = Підігнати під ширину в bbb.presentation.fitToPage.toolTip = Підігнати під розмір вікна bbb.presentation.uploadPresBtn.toolTip = Завантажити презентацію bbb.presentation.downloadPresBtn.toolTip = Завантажити презентації -bbb.presentation.poll.response = +bbb.presentation.poll.response = ВідповіÑти на запит bbb.presentation.backBtn.toolTip = Попередній Ñлайд bbb.presentation.btnSlideNum.accessibilityName = Слайд {0} з {1} bbb.presentation.btnSlideNum.toolTip = Вибір Ñлайду @@ -287,19 +288,19 @@ bbb.fileupload.showBtn = Показати bbb.fileupload.retry = Спробуйте інший файл bbb.fileupload.showBtn.toolTip = Показати презентацію bbb.fileupload.close.tooltip = Закрити -bbb.fileupload.close.accessibilityName = +bbb.fileupload.close.accessibilityName = Закрити вікно ÑÐºÐ°Ñ‡ÑƒÐ²Ð°Ð½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ bbb.fileupload.genThumbText = Ð¡Ñ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ Ð¼Ñ–Ð½Ñ–Ð°Ñ‚ÑŽÑ€.. bbb.fileupload.progBarLbl = ЗавантаженнÑ: -bbb.fileupload.fileFormatHint = +bbb.fileupload.fileFormatHint = Ви можете завантажити будь-Ñкий документ Office або Portable Document Format (PDF). Ð”Ð»Ñ Ð½Ð°Ð¹ÐºÑ€Ð°Ñ‰Ð¾Ð³Ð¾ результату радимо завантажити PDF-файл. bbb.fileupload.letUserDownload = Увімкнути Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ— bbb.fileupload.letUserDownload.tooltip = ПоÑтавте позначку Ñкщо бажаєте щоб кориÑтувачі могли завантажувати презентацію bbb.filedownload.title = Завантажити презентації bbb.filedownload.close.tooltip = Закрити -bbb.filedownload.close.accessibilityName = +bbb.filedownload.close.accessibilityName = Закрити вікно Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ bbb.filedownload.fileLbl = Оберіть файл Ð´Ð»Ñ Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ: bbb.filedownload.downloadBtn = Заванитажити bbb.filedownload.downloadBtn.toolTip = Завантажити презентацію -bbb.filedownload.thisFileIsDownloadable = +bbb.filedownload.thisFileIsDownloadable = Файл завантажуєтьÑÑ bbb.chat.title = Чат bbb.chat.quickLink.label = Вікно чату bbb.chat.cmpColorPicker.toolTip = Колір текÑту @@ -313,14 +314,14 @@ bbb.chat.save.complete = Чат уÑпішно збережений bbb.chat.save.ioerror = Ðе може бути збережено. Спробуйте ще раз bbb.chat.save.filename = Публічний чат bbb.chat.copyBtn.toolTip = Зкопіювати чат -bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.accessibilityName = Скопіювати чат до буферу bbb.chat.copyBtn.label = Копіювати -bbb.chat.copy.complete = +bbb.chat.copy.complete = Чат Ñкопійовано в буфер обміну bbb.chat.clearBtn.toolTip = Створити публічний чат bbb.chat.clearBtn.accessibilityName = ОчиÑтити Ñ–Ñторію публічного чату bbb.chat.clearBtn.chatMessage = ІÑÑ‚Ð¾Ñ€Ñ–Ñ Ð¿ÑƒÐ±Ð»Ñ–Ñ‡Ð¾Ð³Ð¾ чату була очищена модератором bbb.chat.clearBtn.alert.title = ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ -bbb.chat.clearBtn.alert.text = +bbb.chat.clearBtn.alert.text = Ви очищуєте публічний чат Ñ– цю дію неможливо буде відмінити. Ð’Ñеодно продовжити? bbb.chat.contextmenu.copyalltext = Копіювати веÑÑŒ текÑÑ‚ bbb.chat.publicChatUsername = Публічний bbb.chat.optionsTabName = Опції @@ -369,7 +370,7 @@ bbb.video.publish.closeBtn.accessName = Закрити вікно налашту bbb.video.publish.closeBtn.label = СкаÑувати bbb.video.publish.titleBar = Вікно ÑƒÐ²Ñ–Ð¼ÐºÐ½ÐµÐ½Ð½Ñ Ð²ÐµÐ±-камери bbb.video.streamClose.toolTip = Закрити транÑлÑцію длÑ: {0} -bbb.video.message.browserhttp = +bbb.video.message.browserhttp = Ðа цьому Ñервері не налаштований SSL. Як результат, {0} вимикає вашу веб камеру. bbb.screensharePublish.title = ДемонÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ ÐµÐºÑ€Ð°Ð½Ñƒ: передпереглÑд в режимі ведучого bbb.screensharePublish.pause.tooltip = Зупинити показ екрану bbb.screensharePublish.pause.label = Пауза @@ -431,8 +432,8 @@ bbb.screensharePublish.WebRTCExtensionFailFallback.label = Ðеможливо в bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = ЗдаєтьÑÑ, ви у режимі інкогніто або викориÑтовуєте приватний режим переглÑду. Перевірте в налаштуваннÑÑ… розширеннÑ, що ви дозволÑєте розширенню працювати в інкогніто/приватному режимі. bbb.screensharePublish.WebRTCExtensionInstallButton.label = ÐатиÑніть тут, щоб вÑтановити bbb.screensharePublish.WebRTCUseJavaButton.label = ДемонÑтрувати екран викориÑтовуючи Java -bbb.screensharePublish.WebRTCVideoLoading.label = -bbb.screensharePublish.sharingMessage= +bbb.screensharePublish.WebRTCVideoLoading.label = Відео завантажуєтьÑÑ... Будь-лаÑка зачекайте +bbb.screensharePublish.sharingMessage= ÐŸÐ¾ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ Ð²Ð°ÑˆÐ¾Ð³Ð¾ екрану bbb.screenshareView.title = ДемонÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ ÐµÐºÑ€Ð°Ð½Ð° bbb.screenshareView.fitToWindow = Підлаштувати під розміри вікна bbb.screenshareView.actualSize = Показати фактичний розмір @@ -451,7 +452,7 @@ bbb.toolbar.video.toolTip.start = Увімкнути транÑлÑцію ваш bbb.toolbar.video.toolTip.stop = Зупинити транÑлÑцію вашої веб-камери bbb.layout.addButton.label = Додати bbb.layout.addButton.toolTip = Додати в ÑпиÑок Ñхему кориÑтувача -bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.title = ПерезапиÑати макет bbb.layout.overwriteLayoutName.text = Це ім'Ñ Ð²Ð¶Ðµ викориÑтовуєтьÑÑ. Бажаєте перезапиÑати? bbb.layout.broadcastButton.toolTip = ЗаÑтоÑувати поточне Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ð½Ñ Ð´Ð»Ñ Ð²ÑÑ–Ñ… кориÑтувачів bbb.layout.combo.toolTip = Змінити Ñхему вікон @@ -462,14 +463,14 @@ bbb.layout.combo.prompt = ЗаÑтоÑувати Ñхему bbb.layout.combo.custom = * Схема кориÑтувача bbb.layout.combo.customName = Схема кориÑтувача bbb.layout.combo.remote = Віддалений -bbb.layout.window.name = +bbb.layout.window.name = Ðазва макету bbb.layout.window.close.tooltip = Закрити -bbb.layout.window.close.accessibilityName = +bbb.layout.window.close.accessibilityName = Закрити вікно Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ макету bbb.layout.save.complete = Схеми уÑпішно збережені -bbb.layout.save.ioerror = +bbb.layout.save.ioerror = Макети не були збережені. Спробуйте знову. bbb.layout.load.complete = Схеми уÑпішно завантажені bbb.layout.load.failed = Ðе вдалоÑÑŒ завантажити макети -bbb.layout.sync = +bbb.layout.sync = Ваш макет був надіÑланий уÑім кориÑтувачам bbb.layout.name.defaultlayout = Ð Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–ÐºÐ¾Ð½ за замовчуваннÑм bbb.layout.name.closedcaption = Субтитри bbb.layout.name.videochat = Відеочат @@ -479,10 +480,10 @@ bbb.layout.name.presentandusers = ÐŸÑ€ÐµÐ·ÐµÐ½Ñ‚Ð°Ñ†Ñ–Ñ + КориÑтувач bbb.layout.name.lectureassistant = Помічник ведучого bbb.layout.name.lecture = Ð›ÐµÐºÑ†Ñ–Ñ bbb.layout.name.sharednotes = Спільні нотатки -bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.title = Додати поточний макет до файлу bbb.layout.addCurrentToFileWindow.text = Чи бажаєте ви зберегти поточне Ð¿Ð¾Ð»Ð¾Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ? -bbb.layout.denyAddToFile.toolTip = -bbb.layout.confirmAddToFile.toolTip = +bbb.layout.denyAddToFile.toolTip = Заборонити Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ макету +bbb.layout.confirmAddToFile.toolTip = Підтвердити Ð´Ð¾Ð´Ð°Ð²Ð°Ð½Ð½Ñ Ð¿Ð¾Ñ‚Ð¾Ñ‡Ð½Ð¾Ð³Ð¾ макету bbb.highlighter.toolbar.pencil = Олівець bbb.highlighter.toolbar.pencil.accessibilityName = Перемкнути курÑор на олівець bbb.highlighter.toolbar.ellipse = Коло @@ -499,8 +500,7 @@ bbb.highlighter.toolbar.color = Вибрати колір bbb.highlighter.toolbar.color.accessibilityName = Колір маркеру bbb.highlighter.toolbar.thickness = Вибрати товщину ліній bbb.highlighter.toolbar.thickness.accessibilityName = Товщина Ð¼Ð°Ð»ÑŽÐ²Ð°Ð½Ð½Ñ -bbb.highlighter.toolbar.multiuser = -bbb.logout.title = Вийшли +bbb.highlighter.toolbar.multiuser = БагатокориÑтувацький малюнок bbb.logout.button.label = ОК bbb.logout.appshutdown = Серверний додаток вимкнувÑÑ bbb.logout.asyncerror = Помилка аÑинхронноÑÑ‚Ñ– @@ -512,9 +512,11 @@ bbb.logout.unknown = Ваш клієнт втратив зв'Ñзок з Ñер bbb.logout.guestkickedout = Модератор не дозволив вам приєднатиÑÑŒ до зуÑтрічі bbb.logout.usercommand = Ви вийшли із конференції bbb.logour.breakoutRoomClose = Вікно вашого браузеру буде закрите -bbb.logout.ejectedFromMeeting = Модератор виключив Ð²Ð°Ñ Ñ–Ð· зуÑтрічі. +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Якщо цей вихід був неÑподіваним натиÑніть на кнопку нижче, щоб відновити підключеннÑ. bbb.logout.refresh.label = Повторне Ð¿Ñ–Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð½Ñ +bbb.logout.feedback.hint = +bbb.logout.feedback.label = bbb.settings.title = ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ bbb.settings.ok = ОК bbb.settings.cancel = Відмінити @@ -541,42 +543,42 @@ bbb.sharedNotes.title = Спільні нотатки bbb.sharedNotes.quickLink.label = Вікно Ñпільних нотаток bbb.sharedNotes.createNoteWindow.label = Ðазва нотатки bbb.sharedNotes.createNoteWindow.close.tooltip = Закрити -bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = Закрити вікно Створити нове вікно bbb.sharedNotes.typing.single = {0} пише... -bbb.sharedNotes.typing.double = -bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.typing.double = {0} Ñ– {1} пишуть... +bbb.sharedNotes.typing.multiple = Декілька людей пишуть... bbb.sharedNotes.save.toolTip = Зберегти нотатки до файлу bbb.sharedNotes.save.complete = Ðотатки були уÑпішно збережені bbb.sharedNotes.save.ioerror = Ðотатки не були збережені. Спробуйте ще раз bbb.sharedNotes.save.htmlLabel = Форматований текÑÑ‚ (.html) -bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.save.txtLabel = Звичайний текÑÑ‚ (.txt) bbb.sharedNotes.new.label = Створити bbb.sharedNotes.new.toolTip = Створити додаткову нотатку bbb.sharedNotes.limit.label = ДоÑÑнути макÑимальна кількіÑÑ‚ÑŒ нотаток bbb.sharedNotes.clear.label = ОчиÑтити цю нотатку bbb.sharedNotes.undo.toolTip = Відмінити модифікацію -bbb.sharedNotes.redo.toolTip = -bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.redo.toolTip = Повторити модифікацію +bbb.sharedNotes.toolbar.toolTip = ІнÑтрумент Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼Ð°Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ‚ÐµÐºÑту bbb.sharedNotes.settings.toolTip = ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñпільних нотаток bbb.sharedNotes.clearWarning.title = ОчиÑтити Ñпільні нотатки -bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.clearWarning.message = Ð¦Ñ Ð´Ñ–Ñ Ð¾Ñ‡Ð¸Ñтить нотатки до цього вікна Ð´Ð»Ñ Ð²ÑÑ–Ñ… кориÑтувачів, Ñ– Ñ—Ñ— неможливо ÑкаÑувати. Ви впевнені, що хочете очиÑтити ці нотатки? bbb.sharedNotes.additionalNotes.closeWarning.title = Закрити Ñпільні нотатки -bbb.sharedNotes.additionalNotes.closeWarning.message = -bbb.sharedNotes.messageLengthWarning.title = -bbb.sharedNotes.messageLengthWarning.text = -bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.additionalNotes.closeWarning.message = Ð¦Ñ Ð´Ñ–Ñ Ð·Ð½Ð¸Ñ‰Ð¸Ñ‚ÑŒ нотатки у цьому вікні Ð´Ð»Ñ Ð²ÑÑ–Ñ…, Ñ– Ñ—Ñ— неможливо ÑкаÑувати. Ви впевнені, що хочете закрити ці нотатки? +bbb.sharedNotes.messageLengthWarning.title = ДоÑÑгнений ліміт змін +bbb.sharedNotes.messageLengthWarning.text = Ваша змінені Ñимволи перевищили ліміт {0}. Спробуйте внеÑти менші зміни. +bbb.sharedNotes.remaining.tooltip = ЗалишилоÑÑŒ вільного міÑÑ†Ñ Ð² Ñпільних нотатках bbb.sharedNotes.full.tooltip = ДоÑÑгнута макÑимальна кількіÑÑ‚ÑŒ Ñимволів(Ñпробуйте видалити деÑкий текÑÑ‚) bbb.settings.deskshare.instructions = ÐатиÑніть на кнопку Дозволити на Ñпливаючому запиті, аби перевірити, що у Ð²Ð°Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾ працює транÑлÑÑ†Ñ–Ñ Ñ€Ð¾Ð±Ð¾Ñ‡Ð¾Ð³Ð¾ Ñтолу bbb.settings.deskshare.start = Перевірити демонÑтрацію робочого Ñтолу bbb.settings.voice.volume = ÐктивніÑÑ‚ÑŒ мікрофону bbb.settings.java.label = Помилка верÑÑ–Ñ— Java -bbb.settings.java.text = +bbb.settings.java.text = У Ð²Ð°Ñ Ð²Ñтановлена {0} верÑÑ–Ñ Java, проте вам потрібна хоча б {1} верÑÑ–Ñ Ð´Ð»Ñ Ð²Ð¸ÐºÐ¾Ñ€Ð¸ÑÑ‚Ð°Ð½Ð½Ñ Ñ„ÑƒÐ½ÐºÑ†Ñ–Ñ— Ð¿Ð¾ÑˆÐ¸Ñ€ÐµÐ½Ð½Ñ ÐµÐºÑ€Ð°Ð½Ñƒ BigBlueButton. Кнопка знизу вÑтановить найновішу верÑÑ–ÑŽ Java JRE. bbb.settings.java.command = Ð’Ñтановіть новішу верÑÑ–ÑŽ Java bbb.settings.flash.label = Помилка верÑÑ–Ñ— Flash bbb.settings.flash.text = У Ð²Ð°Ñ Ð²Ñтановлений флеш {0}, але Ð´Ð»Ñ ÐºÐ¾Ñ€ÐµÐºÑ‚Ð½Ð¾Ñ— роботи BigBlueButton потрібна, принаймні, верÑÑ–Ñ {1}. ÐатиÑніть на кнопку знизу, щоб вÑтановити оÑтанню верÑÑ–ÑŽ Adobe Flash. bbb.settings.flash.command = Ð’Ñтановіть новітню Flash bbb.settings.isight.label = Помилка iSight веб-камери -bbb.settings.isight.text = +bbb.settings.isight.text = Якщо у Ð²Ð°Ñ Ð²Ð¸Ð½Ð¸ÐºÐ»Ð¸ проблеми з вашою веб-камерою iSight, можливо, це означає, що ви викориÑтовуєте OS X 10.6.5, Ð´Ð»Ñ Ñкого, Ñк відомо, виникає проблема із захопленнÑм відео з веб-камери iSight.\nÐ”Ð»Ñ Ñ‚Ð¾Ð³Ð¾, щоб виправити це, наведене нижче поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð±ÑƒÐ´Ðµ вÑтановлювати нову верÑÑ–ÑŽ програвача Flash або оновлювати Mac до оÑтанньої верÑÑ–Ñ— bbb.settings.isight.command = Ð’Ñтановити Flash 10.2 RC2 bbb.settings.warning.label = ÐŸÐ¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ bbb.settings.warning.close = Закрити це Ð¿Ð¾Ð¿ÐµÑ€ÐµÐ´Ð¶ÐµÐ½Ð½Ñ @@ -587,7 +589,7 @@ bbb.bwmonitor.upload = Завантажити bbb.bwmonitor.upload.short = Вгору bbb.bwmonitor.download = Заванитажити bbb.bwmonitor.download.short = Вниз -bbb.bwmonitor.total = +bbb.bwmonitor.total = Взагалом bbb.bwmonitor.current = Поточний bbb.bwmonitor.available = ДоÑтупно bbb.bwmonitor.latency = Затримка @@ -710,7 +712,7 @@ bbb.shortcutkey.present.fitPage.function = Підігнати Ñлайди по bbb.shortcutkey.users.makePresenter = 89 bbb.shortcutkey.users.makePresenter.function = Зробити вибраного учаÑника ведучим bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Виключити вибраного учаÑника з конференції +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Вимк./Увімк. мік. у вибраного учаÑника bbb.shortcutkey.users.muteall = 65 @@ -763,7 +765,7 @@ bbb.polling.publishButton.label = Публікувати bbb.polling.closeButton.label = Закрити bbb.polling.customPollOption.label = ВлаÑне Ð¾Ð¿Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ bbb.polling.pollModal.title = Поточні результати голоÑÑƒÐ²Ð°Ð½Ð½Ñ -bbb.polling.pollModal.hint = +bbb.polling.pollModal.hint = Залиште це вікно відкритим, щоб Ñтуденти могли відповіÑти на опитуваннÑ. Вибравши кнопку "Опублікувати" або "Закрити", Ð¾Ð¿Ð¸Ñ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð±ÑƒÐ´Ðµ завершене. bbb.polling.customChoices.title = ВвеÑти варіанти вибору bbb.polling.respondersLabel.novotes = ÐžÑ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–Ð´Ð¿Ð¾Ð²Ñ–Ð´Ñ– bbb.polling.respondersLabel.text = {0} КориÑтувачів відповіли @@ -811,10 +813,12 @@ bbb.lockSettings.save.tooltip = ЗаÑтоÑувати Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ bbb.lockSettings.cancel = СкаÑувати bbb.lockSettings.cancel.toolTip = Закрити вікно без Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Заблоковано модератором bbb.lockSettings.privateChat = Приватний чат bbb.lockSettings.publicChat = Публічний чат bbb.lockSettings.webcam = Веб-камера +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Мікрофон bbb.lockSettings.layout = Схема Ñ€Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð²Ñ–ÐºÐ¾Ð½ bbb.lockSettings.title=Блокувати глÑдачів @@ -824,14 +828,14 @@ bbb.lockSettings.lockOnJoin=Блокувати при вході bbb.users.breakout.breakoutRooms = Кімнати групової роботи bbb.users.breakout.updateBreakoutRooms = Оновити кімнати групової роботи -bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timerForRoom.toolTip = Залишок чаÑу Ð´Ð»Ñ Ñ†Ñ–Ñ”Ñ— кімнати bbb.users.breakout.timer.toolTip = ЧаÑ, що залишивÑÑ Ð´Ð¾ ÐºÑ–Ð½Ñ†Ñ ÑеанÑу групової роботи bbb.users.breakout.calculatingRemainingTime = Підрахунок чаÑу що залишивÑÑ bbb.users.breakout.closing = ЗакриваєтьÑÑ +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = Кімнати bbb.users.breakout.roomsCombo.accessibilityName = КількіÑÑ‚ÑŒ кімнат Ð´Ð»Ñ ÑÑ‚Ð²Ð¾Ñ€ÐµÐ½Ð½Ñ bbb.users.breakout.room = Кімната -bbb.users.breakout.randomAssign = Розподілити учаÑників випадковим чином bbb.users.breakout.timeLimit = Ліміт чаÑу bbb.users.breakout.durationStepper.accessibilityName = Ліміт в хвилинах bbb.users.breakout.minutes = Хвилин @@ -846,12 +850,12 @@ bbb.users.breakout.closeAllRooms = Закрити вÑÑ– групові ÑеÑÑ– bbb.users.breakout.insufficientUsers = ÐедоÑтатньо учаÑників. ПоміÑÑ‚Ñ–Ñ‚ÑŒ хоча б одного учаÑника bbb.users.breakout.confirm = Завершити групово ÑеÑÑ–ÑŽ bbb.users.breakout.invited = Ви були запрошені до <b> ÑеÑÑ–Ñ— </b> -bbb.users.breakout.accept = +bbb.users.breakout.accept = ПогоджуючиÑÑŒ, ви автоматично покинете аудіо та відео конференцію bbb.users.breakout.joinSession = ПриєднатиÑÑŒ до ÑеÑÑ–Ñ— -bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.accessibilityName = ПриєднатиÑÑŒ до зуÑтрічі bbb.users.breakout.joinSession.close.tooltip = Закрити -bbb.users.breakout.joinSession.close.accessibilityName = -bbb.users.breakout.youareinroom = +bbb.users.breakout.joinSession.close.accessibilityName = Закрити вікно зуÑтрічі +bbb.users.breakout.youareinroom = Ви перебуваєте в кімнаті {0} bbb.users.roomsGrid.room = Кімната bbb.users.roomsGrid.users = КориÑтувачі bbb.users.roomsGrid.action = Ð”Ñ–Ñ @@ -860,3 +864,8 @@ bbb.users.roomsGrid.join = ПриєднатиÑÑ bbb.users.roomsGrid.noUsers = Ðемає кориÑтувачів в цій кімнаті bbb.langSelector.default=Мова по замовчуванню + +bbb.alert.cancel = Відмінити +bbb.alert.ok = OK +bbb.alert.no = ÐÑ– +bbb.alert.yes = Так diff --git a/bigbluebutton-client/locale/uz/bbbResources.properties b/bigbluebutton-client/locale/uz/bbbResources.properties index 1ee41afcb6bf3e56c7e001c7b8eeafc032c8e219..7765008fa9ddd310497ff16bf637e7ebd4f0bb0a 100644 --- a/bigbluebutton-client/locale/uz/bbbResources.properties +++ b/bigbluebutton-client/locale/uz/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Serverga ulanish -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Kechirasiz, bu serverga ulanish mumkin emas. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = bbb.micSettings.title = Ovozni tekshirmoq -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = Bekor qilish -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = bbb.micSettings.access.helpButton = Yordam (yangi sahifada ochiq tutorial video) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = Yordam bbb.mainToolbar.logoutBtn = Chiqish -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Tilni tanlang bbb.mainToolbar.settingsBtn = Sozlamalar bbb.mainToolbar.settingsBtn.toolTip = Sozlovlarni ochish bbb.mainToolbar.shortcutBtn = Qisqa tugmachalar -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = bbb.clientstatus.close = Yopmoq -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Kichraytirib ko'rsatmoq bbb.window.maximizeRestoreBtn.toolTip = Maksimal darajada kattalashtirmoq bbb.window.closeBtn.toolTip = Yopmoq -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = bbb.users.title = Foydalanuvchilar {0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = bbb.users.settings.buttonTooltip = Sozlamalar bbb.users.settings.audioSettings = Ovozni tekshirmoq bbb.users.settings.webcamSettings = Veb kamera sozlovlari bbb.users.settings.muteAll = Barcha foydalanuvchilarni ovozsiz holatga o`tkazish -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = bbb.video.publish.closeBtn.label = Bekor qilish -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = Kichraytirib ko'rsatmoq -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = bbb.screensharePublish.helpButton.toolTip = Yordam -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = bbb.screensharePublish.cancelButton.label = Bekor qilish -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = bbb.shortcuthelp.title = Qisqa tugmachalar -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Yopmoq -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = Bekor qilish -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = bbb.users.breakout.close = Yopmoq -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/vi/bbbResources.properties b/bigbluebutton-client/locale/vi/bbbResources.properties index eec9fa15e75efe314123f079ccda238025b9685a..5e2bf86baead5c56848489eb713c4e13c97d4339 100644 --- a/bigbluebutton-client/locale/vi/bbbResources.properties +++ b/bigbluebutton-client/locale/vi/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 +bbb.mainshell.locale.version = bbb.mainshell.statusProgress.connecting = Äang kết nối đến máy chủ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Xin lá»—i, chúng tôi không thể kết nối đến máy chủ. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Mở Cá»a sổ Nháºt ký -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = bbb.mainshell.resetLayoutBtn.toolTip = Äặt lại Bố cục -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Bạn có thể Ä‘ang dùng phiên bản dịch cÅ© của BigBlueButton. bbb.oldlocalewindow.reminder2 = Xin hãy xoá bá»™ nhá»› đệm của trình duyệt và thá» lại. bbb.oldlocalewindow.windowTitle = Cảnh báo: Phiên bản dịch cÅ©. -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = bbb.micSettings.speakers.header = Thá» Loa -bbb.micSettings.microphone.header = Test Microphone +bbb.micSettings.microphone.header = bbb.micSettings.playSound = Thá» Loa bbb.micSettings.playSound.toolTip = Hãy báºt nhạc để thá» loa của bạn bbb.micSettings.hearFromHeadset = Bạn có thể nghe tiếng trong tai nghe, chứ không phải loa ngoà i. bbb.micSettings.speakIntoMic = Nếu bạn Ä‘ang dùng tai nghe, bạn có thể nghe thấy tiếng từ tai nghe, chứ không phải từ loa. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = bbb.micSettings.changeMic = Thá» hoặc Thay đổi Microphone bbb.micSettings.changeMic.toolTip = Mở há»™p thoại tuỳ chá»n microphone của Trình chạy Flash -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = bbb.micSettings.join = Gia nháºp Audio -bbb.micSettings.join.toolTip = Join the audio conference +bbb.micSettings.join.toolTip = bbb.micSettings.cancel = Huá»· bá» -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = bbb.micSettings.cancel.toolTip = Huá»· việc tham gia há»™i nghị truyá»n thanh bbb.micSettings.access.helpButton = HÆ°á»›ng dẫn ( mở các video há»c táºp trong trang má»›i) bbb.micSettings.access.title = Thiết láºp âm thanh. Cá»a sổ thiết láºp âm thanh nà y sẽ giữ tiêu Ä‘iểm trá» chuá»™t cho đến khi đóng -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = HÆ°á»›ng dẫn bbb.mainToolbar.logoutBtn = Äăng xuất bbb.mainToolbar.logoutBtn.toolTip = Äăng xuất -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = bbb.video.publish.closeBtn.label = Huá»· bá» -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = bbb.polling.closeButton.label = Äóng -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = bbb.lockSettings.cancel = Huá»· bá» -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/vi_VN/bbbResources.properties b/bigbluebutton-client/locale/vi_VN/bbbResources.properties index 64ad9e006d097264f26b8cafd748a9639baaa25c..a61ae23b4f12051a5589a322a533162462f0b661 100644 --- a/bigbluebutton-client/locale/vi_VN/bbbResources.properties +++ b/bigbluebutton-client/locale/vi_VN/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = Kết nối tá»›i máy chủ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = Xin lá»—i, không thể kết nối tá»›i máy chủ. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = Mở cá»a sổ Nháºt ký bbb.mainshell.meetingNotFound = Không tìm thấy há»™i thảo bbb.mainshell.invalidAuthToken = Token xác thá»±c không đúng bbb.mainshell.resetLayoutBtn.toolTip = Äặt lại Bố cục bbb.mainshell.notification.tunnelling = Äang chá»n kênh bbb.mainshell.notification.webrtc = Âm thanh WebRTC -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = Có thể bạn Ä‘ang dùng bản dịch cÅ© của BigBlueButton. bbb.oldlocalewindow.reminder2 = Hãy xoá bá»™ nhá»› đệm của trình duyệt web và thá» lại. bbb.oldlocalewindow.windowTitle = Cảnh báo: Bản dịch Phiên bản CÅ© @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = Äang kết nối bbb.micSettings.webrtc.transferring = Äang chuyển bbb.micSettings.webrtc.endingecho = Äang tham gia nói chuyện bbb.micSettings.webrtc.endedecho = Äã kiểm tra âm thanh xong. +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Cho phép Firefox dùng Microphone -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = Cho phép Chrome dùng Microphone -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = Cảnh báo vỠâm thanh bbb.micWarning.joinBtn.label = Vẫn muốn tham gia bbb.micWarning.testAgain.label = Kiểm tra lại lần nữa @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = Kiểm tra âm thanh bằng We bbb.webrtcWarning.connection.dropped = Kết nối WebRTC đã bị ngắt bbb.webrtcWarning.connection.reconnecting = Äang cố gắng kết nối lại bbb.webrtcWarning.connection.reestablished = Kết nối WebRTC Ä‘ang được thiết láºp lại -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = HÆ°á»›ng dẫn bbb.mainToolbar.logoutBtn = Äăng xuất bbb.mainToolbar.logoutBtn.toolTip = Äăng xuất -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = Chá»n ngôn ngữ bbb.mainToolbar.settingsBtn = Tuỳ chá»n bbb.mainToolbar.settingsBtn.toolTip = Mở Tuỳ chá»n @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = Bắt đầu ghi âm bbb.mainToolbar.recordBtn.toolTip.stop = Dừng ghi âm bbb.mainToolbar.recordBtn.toolTip.recording = Phiên là m việc Ä‘ang được ghi âm bbb.mainToolbar.recordBtn.toolTip.notRecording = Phiên là m việc nà y không có ghi âm -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = Xác nháºn ghi âm bbb.mainToolbar.recordBtn.confirm.message.start = Bạn có chắc muốn bắt đầu ghi âm? bbb.mainToolbar.recordBtn.confirm.message.stop = Bạn có chắc muốn dừng ghi âm? -bbb.mainToolbar.recordBtn..notification.title = Thông báo từ ghi âm -bbb.mainToolbar.recordBtn..notification.message1 = Bạn có thể ghi âm lại buổi há»™i thảo nà y -bbb.mainToolbar.recordBtn..notification.message2 = Bạn phải click nút Bắt đầu/Dừng ghi âm trên thanh tiêu đỠđể Bắt đầu/Dừng ghi âm. +bbb.mainToolbar.recordBtn.notification.title = Thông báo từ ghi âm +bbb.mainToolbar.recordBtn.notification.message1 = Bạn có thể ghi âm lại buổi há»™i thảo nà y +bbb.mainToolbar.recordBtn.notification.message2 = Bạn phải click nút Bắt đầu/Dừng ghi âm trên thanh tiêu đỠđể Bắt đầu/Dừng ghi âm. bbb.mainToolbar.recordingLabel.recording = (Äang ghi âm) bbb.mainToolbar.recordingLabel.notRecording = Không ghi âm -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = Các thông báo cấu hình bbb.clientstatus.notification = Các thông báo chÆ°a Ä‘á»c bbb.clientstatus.close = Äóng @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = Trình duyệt ({0}) của bạn không phả bbb.clientstatus.flash.title = Máy trình chiếu Flash bbb.clientstatus.flash.message = Máy trình chiếu Flash ({0}) của bạn không phải là má»›i nhất. Khuyến nghị nên cáºp nháºt phiên bản má»›i nhất. bbb.clientstatus.webrtc.title = Âm thanh -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = Khuyến nghị sá» dụng Firefox hay Chrome để có âm thanh tốt hÆ¡n -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = Thu nhá» bbb.window.maximizeRestoreBtn.toolTip = Phóng to bbb.window.closeBtn.toolTip = Äóng lại @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = Trạng thái bbb.users.usersGrid.statusItemRenderer.changePresenter = Click để trở thà nh ngÆ°á»i trình bà y bbb.users.usersGrid.statusItemRenderer.presenter = NgÆ°á»i trình bà y bbb.users.usersGrid.statusItemRenderer.moderator = NgÆ°á»i Ä‘iá»u hà nh -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = Xóa trạng thái bbb.users.usersGrid.statusItemRenderer.viewer = NgÆ°á»i xem bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Chia sẻ webcam @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Mở lại âm {0} bbb.users.usersGrid.mediaItemRenderer.pushToMute = Tắt âm {0} bbb.users.usersGrid.mediaItemRenderer.pushToLock = Khoá {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Mở khoá {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Äuổi {0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = Chia sẻ webcam bbb.users.usersGrid.mediaItemRenderer.micOff = Tắt microphone bbb.users.usersGrid.mediaItemRenderer.micOn = Mở microphone bbb.users.usersGrid.mediaItemRenderer.noAudio = Không ở trong chế Ä‘á»™ há»™i nghị -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = Xóa -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = Trình bà y bbb.presentation.titleWithPres = Trình bà y: {0} bbb.presentation.quickLink.label = Cá»a sổ trình bà y bbb.presentation.fitToWidth.toolTip = Canh chỉnh vừa vặn chiá»u rá»™ng phần trình bà y bbb.presentation.fitToPage.toolTip = Canh chỉnh vừa vặn phần trình bà y theo trang bbb.presentation.uploadPresBtn.toolTip = Tải lên phần trình bà y -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = Trang trÆ°á»›c. bbb.presentation.btnSlideNum.accessibilityName = Slide {0} / {1} bbb.presentation.btnSlideNum.toolTip = Chá»n má»™t trang trình bà y @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = Äã tải lên xong. Hãy đợi trong khi ch bbb.presentation.uploaded = tải lên xong. bbb.presentation.document.supported = The uploaded document is supported. bbb.presentation.document.converted = Successfully converter the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = Lá»—i truy xuất IO Error khi tải tệp lên. Hãy liên hệ vá»›i NgÆ°á»i quản trị. bbb.presentation.error.security = Lá»—i Bảo máºt khi tải tệp lên. Hãy liên hệ vá»›i NgÆ°á»i quản trị.. bbb.presentation.error.convert.notsupported = Lá»—i định dạng nà y không được há»— trợ: Hãy tải lên má»™t tệp được há»— trợ. @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = Tải lên bbb.fileupload.uploadBtn.toolTip = Tải lên tệp tin bbb.fileupload.deleteBtn.toolTip = Xoá Bà i trình bà y bbb.fileupload.showBtn = Cho xem -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = Cho xem Bà i trình bà y -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = Kết xuất hình thu nhá»... bbb.fileupload.progBarLbl = Tiến trình: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = Trao đổi bbb.chat.quickLink.label = Cá»a sổ tán gẫu bbb.chat.cmpColorPicker.toolTip = Mà u chữ bbb.chat.input.accessibilityName = Khung chỉnh sá»a ná»™i dung tin nhắn tán gẫu bbb.chat.sendBtn.toolTip = Gá»i thông Ä‘iệp bbb.chat.sendBtn.accessibilityName = Gá»i tin nhắn tán gẫu -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = Sao chép tất cả text bbb.chat.publicChatUsername = Tất cả bbb.chat.optionsTabName = Tuỳ chá»n @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = Chá»n má»™t ngÆ°á»i để mở cá»a s bbb.chat.chatOptions = Tuỳ chá»n Trò chuyện bbb.chat.fontSize = KÃch thÆ°á»›c Phông bbb.chat.cmbFontSize.toolTip = Chá»n kÃch thÆ°á»›c kiểu chữ cho tin nhắn tán gẫu -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = Thu nhá» cá»a sổ tán gẫu bbb.chat.maximizeRestoreBtn.accessibilityName = Phóng to cá»a sổ tán gẫu bbb.chat.closeBtn.accessibilityName = Äóng lại cá»a sổ tán gẫu bbb.chat.chatTabs.accessibleNotice = Tin nhắn má»›i trong tab nà y. bbb.chat.chatMessage.systemMessage = Hệ thống -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = Tin nhắn quá dà i, ({0}) kà tá»± bbb.publishVideo.changeCameraBtn.labelText = Thay đổi webcam bbb.publishVideo.changeCameraBtn.toolTip = Click để mở há»™p thoại Ä‘iá»u khiển thay đổi webcam @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = Bắt đầu chia sẻ bbb.publishVideo.startPublishBtn.toolTip = Bắt đầu Chia sẻ bbb.publishVideo.startPublishBtn.errorName = Không thẻ chia sẻ webcam. Lý do: {0} bbb.webcamPermissions.chrome.title = Cho phép Chrome dùng Webcam -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = Bám dÃnh Video bbb.videodock.quickLink.label = Cá»a sổ webcam bbb.video.minimizeBtn.accessibilityName = Thu nhá» cá»a sổ webcam @@ -367,89 +370,91 @@ bbb.video.publish.closeBtn.accessName = Äóng lại há»™p thoại Ä‘iá»u chỉ bbb.video.publish.closeBtn.label = Hủy bá» bbb.video.publish.titleBar = Xuất bản cá»a sổ webcam bbb.video.streamClose.toolTip = Äóng kết nối truyá»n dữ liệu của: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = Chia sẻ mà n hình -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = bbb.screenshareView.closeBtn.accessibilityName = Äóng cá»a sổ chia sẻ mà n hình -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = Dừng nghe há»™i thảo bbb.toolbar.phone.toolTip.unmute = Bắt đầu nghe há»™i thảo bbb.toolbar.phone.toolTip.nomic = Không tìm thấy microphone -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window +bbb.toolbar.deskshare.toolTip.start = bbb.toolbar.deskshare.toolTip.stop = Ngừng chia sẻ mà n hình của bạn -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = Chia sẻ webcam của bạn bbb.toolbar.video.toolTip.stop = Ngừng chia sẻ webcam của bạn +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = Thêm và o phần bố trà tùy chá»n cho danh sách -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = Thay đổi cách trình bà y của bạn bbb.layout.loadButton.toolTip = Tải bố cục từ táºp tin bbb.layout.saveButton.toolTip = LÆ°u bố cục thà nh má»™t táºp tin @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = Ãp dụng má»™t thay đổi vá» bố cục bbb.layout.combo.custom = * Bố cục tùy chá»n bbb.layout.combo.customName = Bố cục tùy chá»n bbb.layout.combo.remote = Từ xa -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = Các bố cục đã được lÆ°u thà nh công +bbb.layout.save.ioerror = bbb.layout.load.complete = Các bố cục đã được tải thà nh công bbb.layout.load.failed = Không thể khởi tạo mẫu trình bà y -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = Kiểu trình bà y mặc định -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = Tán gẫu qua Video bbb.layout.name.webcamsfocus = Há»™i thoại qua Webcam bbb.layout.name.presentfocus = Há»™i thoại trình chiếu -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = Trợ giảng bbb.layout.name.lecture = Giảng viên -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = Äánh dấu bbb.highlighter.toolbar.pencil.accessibilityName = Chuyển đổi trá» chuá»™t trắng sang dạng hình viết chì bbb.highlighter.toolbar.ellipse = Hình tròn @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = Chá»n Mà u bbb.highlighter.toolbar.color.accessibilityName = Mà u sắc bút vẽ trên bảng trắng bbb.highlighter.toolbar.thickness = Thay đổi Bá» dà y bbb.highlighter.toolbar.thickness.accessibilityName = Äá»™ dà y nét vẽ trên bảng trắng -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Äã đăng xuất +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = Äồng ý bbb.logout.appshutdown = Máy chủ ứng dụng vừa bị tắt bbb.logout.asyncerror = Má»™t Lá»—i Äồng bá»™ xảy ra @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = Kết nối đến máy chủ đã ngắt bbb.logout.rejected = Kết nối tá»›i máy chủ đã bị từ chối bbb.logout.invalidapp = Ứng dụng Red5 không tồn tại bbb.logout.unknown = Trình duyệt của bạn đã mất kết nối tá»›i máy chủ -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = Bạn vừa thoát ra khá»i cuá»™c há»™i thoại -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = Má»™t ngÆ°á»i quản lý đã loại bạn ra khá»i cuá»™c thảo luáºn. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = Nếu không mong muốn thoát khá»i hệ thống, click Kết nối lại để kết nối trở lại bbb.logout.refresh.label = Kết nối lại -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = Xác nháºn đăng xuất bbb.logout.confirm.message = Bạn có chắc muốn đăng xuất? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = Äồng à bbb.logout.confirm.no = Không -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=Lá»—i kết nối đã phát hiện bbb.connection.reconnecting=Äang kết nối lại bbb.connection.reestablished=Äã kết nối xong @@ -530,59 +539,60 @@ bbb.notes.title = Ghi chú bbb.notes.cmpColorPicker.toolTip = Mà u sắc văn bản bbb.notes.saveBtn = LÆ°u bbb.notes.saveBtn.toolTip = LÆ°u ghi chú -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = Nhấn và o Cho phép (Allow) tại há»™p thoại báºt lên để kiểm tra dịch vụ chia sẻ mà n hình hoạt Ä‘á»™ng tốt bbb.settings.deskshare.start = Kiểm tra Chia sẻ Mà n hình bbb.settings.voice.volume = Tình trạng của Micro -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Lá»—i phiên bản Flash bbb.settings.flash.text = Bạn đã cà i Flash {0}, nhÆ°ng bạn cần Ãt nhất phiên bản {1} để chạy tốt BigBlueButton. Nhấn và o nút dÆ°á»›i đây để cà i phiên bản Adobe Flash má»›i nhất. bbb.settings.flash.command = Cà i bản Flash má»›i nhất bbb.settings.isight.label = Lá»—i camera iSight -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = Cà i đặt Flash 10.2 RC2 bbb.settings.warning.label = Cảnh báo bbb.settings.warning.close = Äóng Cảnh báo nà y bbb.settings.noissues = Không có vấn Ä‘á» nà o được phát hiện. bbb.settings.instructions = Chấp nháºn nhắc nhở của Flash Ä‘á» nghị quyá»n truy xuất camera của bạn. Nếu bạn có thể nghe và thấy bản thân bạn qua webcam và micro, trình duyệt của bạn đã cà i đặt thà nh công. Má»™t số vấn Ä‘á» tiá»m tà ng khác được trình bà y bên dÆ°á»›i. Nhấn và o từng mục để tìm giải pháp phù hợp. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = ThÆ°á»›c êke ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Chuyể đổi con trá» trên bảng trắng sang dạng thÆ°á»›c ê-ke ltbcustom.bbb.highlighter.toolbar.line = ÄÆ°á»ng thẳng @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = Văn bản ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Chuyển đổi trá» chuá»™t trắng sang dạng chữ viết ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Mà u chữ ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = KÃch thÆ°á»›c kiểu chữ -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = Sẵn sà ng @@ -627,23 +637,23 @@ bbb.accessibility.chat.chatBox.navigatedLatest = Bạn đã Ä‘iá»u hÆ°á»›ng Ä‘ bbb.accessibility.chat.chatBox.navigatedLatestRead = Bạn đã Ä‘iá»u hÆ°á»›ng đến các tin nhắn gần đây nhất mà bạn đã Ä‘á»c. bbb.accessibility.chat.chatwindow.input = Nháºp dữ liệu tán gẫu bbb.accessibility.chat.chatwindow.audibleChatNotification = Thông báo phần âm thanh -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = Vui lòng sá» dụng các phÃm mÅ©i tên để định hÆ°á»›ng trong các tin nhắn tán gẫu. bbb.accessibility.notes.notesview.input = Nháºp và o ghi chú bbb.shortcuthelp.title = PhÃm tắt -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = Thu nhá» cá»a sổ trợ giúp phÃm tắt bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Phóng to cá»a sổ trợ giúp phÃm tắt bbb.shortcuthelp.closeBtn.accessibilityName = Äóng lại cá»a sổ trợ giúp phÃm tắt -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = PhÃm tắt chung bbb.shortcuthelp.dropdown.presentation = PhÃm tắt phần trình bà y bbb.shortcuthelp.dropdown.chat = PhÃm tắt tán gẫu bbb.shortcuthelp.dropdown.users = PhÃm tắt của ngÆ°á»i dùng -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = PhÃm tắt bbb.shortcuthelp.headers.function = Chức năng @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = Chuyển phần táºp trung và o cá»a sổ trình bà y bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = Chuyển phần táºp trung và o cá»a sổ tán gẫu -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = Mở cá»a sổ chia sẻ dạng desktop @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = Thoát khá»i cuá»™c há»p nà y bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = GiÆ¡ tay -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = Tải lên phần trình bà y bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = Äi đến trang trình bà y trÆ°á»›c đó @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = Äi đến trang trình bà y tiếp theo bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = Chỉnh vừa vặn trang trình bà y theo chiá»u rá»™ng -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = Chỉnh vừa vặn trang trình bà y dá»±a theo trang -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = Cho phép ngÆ°á»i được chá»n là m ngÆ°á»i trình bà y -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Äuổi ngÆ°á»i được chá»n khá»i buổi há»p +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = Tắt âm hoặc mở lại âm vá»›i ngÆ°á»i dùng được chá»n bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = Mở hoặc tắt âm tất cả ngÆ°á»i dùng bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = Tắt âm má»i ngÆ°á»i trừ ngÆ°á»i thuyết trình -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = Táºp trung và o tab tán gẫu -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = Táºp trung và o phần chá»n mà u kiểu chữ. bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = Äiá»u hÆ°á»›ng đến các tin bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = PhÃm tắt gỡ rối tạm thá»i -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = Bắt đầu má»™t cuá»™c bầu chá»n bbb.polling.startButton.label = Bắt đầu bầu chá»n bbb.polling.publishButton.label = Xuất bản bbb.polling.closeButton.label = Äóng lại -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = Kết quả bầu chá»n trá»±c tiếp +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = Nháºp bầu chá»n của bạn bbb.polling.respondersLabel.novotes = Äang đợi chấp nháºn bbb.polling.respondersLabel.text = {0} ngÆ°á»i phản hồi @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = Äóng tất cả video bbb.users.settings.lockAll = Khóa tất cả ngÆ°á»i dùng bbb.users.settings.lockAllExcept = Khóa tất cả ngÆ°á»i dùng trừ ngÆ°á»i trình bà y bbb.users.settings.lockSettings = Khóa những ngÆ°á»i Ä‘ang xem ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = Mở khóa tất cả ngÆ°á»i Ä‘ang xem bbb.users.settings.roomIsLocked = Mặc định là khóa bbb.users.settings.roomIsMuted = Mặc định là im lặng @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = Ãp dụng các thiết đặt vá» khóa bbb.lockSettings.cancel = Hủy bá» bbb.lockSettings.cancel.toolTip = Äóng cá»a sổ và không lÆ°u lại +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = Khóa ngÆ°á»i Ä‘iá»u hà nh bbb.lockSettings.privateChat = Tán gẫu riêng tÆ° bbb.lockSettings.publicChat = Tán gẫu công cá»™ng bbb.lockSettings.webcam = Webcam +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = Microphone bbb.lockSettings.layout = Kiểu trình bà y bbb.lockSettings.title=Khóa ngÆ°á»i dùng @@ -813,91 +826,46 @@ bbb.lockSettings.feature=TÃnh năng bbb.lockSettings.locked=Äã khóa bbb.lockSettings.lockOnJoin=Khóa ngay khi gia nháºp -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = bbb.users.roomsGrid.join = Tham gia -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/zh/bbbResources.properties b/bigbluebutton-client/locale/zh/bbbResources.properties index ffa125913559c8520abc239dc0e28f2204a6b72f..f5f028b52b98d8eb435954e8ab06ae6c9133b21b 100644 --- a/bigbluebutton-client/locale/zh/bbbResources.properties +++ b/bigbluebutton-client/locale/zh/bbbResources.properties @@ -1,903 +1,871 @@ -bbb.mainshell.locale.version = 0.9.0 -bbb.mainshell.statusProgress.connecting = Connecting to the server -bbb.mainshell.statusProgress.loading = Loading -bbb.mainshell.statusProgress.cannotConnectServer = Sorry, we cannot connect to the server. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) -bbb.mainshell.logBtn.toolTip = Open Log Window -bbb.mainshell.meetingNotFound = Meeting Not Found -bbb.mainshell.invalidAuthToken = Invalid Authentication Token -bbb.mainshell.resetLayoutBtn.toolTip = Reset Layout -bbb.mainshell.notification.tunnelling = Tunnelling -bbb.mainshell.notification.webrtc = WebRTC Audio -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong -bbb.oldlocalewindow.reminder1 = You may have an old language translations of BigBlueButton. -bbb.oldlocalewindow.reminder2 = Please clear your browser's cache and try again. -bbb.oldlocalewindow.windowTitle = Warning: Old Language Translations -bbb.audioSelection.title = How do you want to join the audio? -bbb.audioSelection.btnMicrophone.label = Microphone -bbb.audioSelection.btnMicrophone.toolTip = Join the audio with your microphone -bbb.audioSelection.btnListenOnly.label = Listen Only -bbb.audioSelection.btnListenOnly.toolTip = Join the audio as listen only -bbb.audioSelection.txtPhone.text = To join this meeting by phone, dial: {0} then enter {1} as the conference pin number. -bbb.micSettings.title = Audio Test -bbb.micSettings.speakers.header = Test Speakers -bbb.micSettings.microphone.header = Test Microphone -bbb.micSettings.playSound = Test Speakers -bbb.micSettings.playSound.toolTip = Play music to test your speakers -bbb.micSettings.hearFromHeadset = You should hear audio in your headset, not your computer speakers. -bbb.micSettings.speakIntoMic = If you are using a headset (or earbuds), you should hear the audio from your headset -- not from your computer speakers. -bbb.micSettings.echoTestMicPrompt = This is a private echo test. Speak a few words. Did you hear audio? -bbb.micSettings.echoTestAudioYes = Yes -bbb.micSettings.echoTestAudioNo = No -bbb.micSettings.speakIntoMicTestLevel = Speak into your microphone. You should see the bar move. If not, choose another mic. -bbb.micSettings.recommendHeadset = Use a headset with a microphone for best audio experience. -bbb.micSettings.changeMic = Test or Change Microphone -bbb.micSettings.changeMic.toolTip = Open the Flash Player microphone settings dialog box -bbb.micSettings.comboMicList.toolTip = Select a microphone -bbb.micSettings.micRecordVolume.label = Gain -bbb.micSettings.micRecordVolume.toolTip = Set your microphone gain -bbb.micSettings.nextButton = Next -bbb.micSettings.nextButton.toolTip = Start the echo test -bbb.micSettings.join = Join Audio -bbb.micSettings.join.toolTip = Join the audio conference -bbb.micSettings.cancel = Cancel -bbb.micSettings.connectingtoecho = Connecting -bbb.micSettings.connectingtoecho.error = Echo Test Error: Please contact administrator. -bbb.micSettings.cancel.toolTip = Cancel joining the audio conference -bbb.micSettings.access.helpButton = Help (open tutorial videos in new page) -bbb.micSettings.access.title = Audio Settings. Focus will remain in this audio settings window until the window is closed. -bbb.micSettings.webrtc.title = WebRTC Support -bbb.micSettings.webrtc.capableBrowser = Your browser supports WebRTC. -bbb.micSettings.webrtc.capableBrowser.dontuseit = Click not to use WebRTC -bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = Click here if you don't want to use the WebRTC technology (recommended if you have problems using it). -bbb.micSettings.webrtc.notCapableBrowser = WebRTC is not supported in your browser. Please use Google Chrome (version 32 or greater); or Mozilla Firefox (version 26 or greater). You will still be able to join the voice conference using the Adobe Flash Platform. -bbb.micSettings.webrtc.connecting = Calling -bbb.micSettings.webrtc.waitingforice = Connecting -bbb.micSettings.webrtc.transferring = Transferring -bbb.micSettings.webrtc.endingecho = Joining audio -bbb.micSettings.webrtc.endedecho = Echo test ended. -bbb.micPermissions.firefox.title = Firefox Microphone Permissions -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. -bbb.micPermissions.chrome.title = Chrome Microphone Permissions -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. -bbb.micWarning.title = Audio Warning -bbb.micWarning.joinBtn.label = Join anyway -bbb.micWarning.testAgain.label = Test again -bbb.micWarning.message = Your microphone did not show any activity, others probably won't be able to hear you during the session. -bbb.webrtcWarning.message = Detected the following WebRTC issue: {0}. Do you want to try Flash instead? -bbb.webrtcWarning.title = WebRTC Audio Failure -bbb.webrtcWarning.failedError.1001 = Error 1001: WebSocket disconnected -bbb.webrtcWarning.failedError.1002 = Error 1002: Could not make a WebSocket connection -bbb.webrtcWarning.failedError.1003 = Error 1003: Browser version not supported -bbb.webrtcWarning.failedError.1004 = Error 1004: Failure on call (reason={0}) -bbb.webrtcWarning.failedError.1005 = Error 1005: Call ended unexpectedly -bbb.webrtcWarning.failedError.1006 = Error 1006: Call timed out -bbb.webrtcWarning.failedError.1007 = Error 1007: ICE negotiation failed -bbb.webrtcWarning.failedError.1008 = Error 1008: Transfer failed -bbb.webrtcWarning.failedError.1009 = Error 1009: Could not fetch STUN/TURN server information -bbb.webrtcWarning.failedError.1010 = Error 1010: ICE negotiation timeout -bbb.webrtcWarning.failedError.1011 = Error 1011: ICE gathering timeout -bbb.webrtcWarning.failedError.unknown = Error {0}: Unknown error code -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly -bbb.webrtcWarning.connection.dropped = WebRTC connection dropped -bbb.webrtcWarning.connection.reconnecting = Attempting to reconnect -bbb.webrtcWarning.connection.reestablished = WebRTC connection re-established -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel -bbb.mainToolbar.helpBtn = Help -bbb.mainToolbar.logoutBtn = Logout -bbb.mainToolbar.logoutBtn.toolTip = Log Out -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer -bbb.mainToolbar.langSelector = Select language -bbb.mainToolbar.settingsBtn = Settings -bbb.mainToolbar.settingsBtn.toolTip = Open Settings -bbb.mainToolbar.shortcutBtn = Shortcut Keys -bbb.mainToolbar.shortcutBtn.toolTip = Open Shortcut Keys Window -bbb.mainToolbar.recordBtn.toolTip.start = Start recording -bbb.mainToolbar.recordBtn.toolTip.stop = Stop recording -bbb.mainToolbar.recordBtn.toolTip.recording = The session is being recorded -bbb.mainToolbar.recordBtn.toolTip.notRecording = The session isn't being recorded -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded -bbb.mainToolbar.recordBtn.confirm.title = Confirm recording -bbb.mainToolbar.recordBtn.confirm.message.start = Are you sure you want to start recording the session? -bbb.mainToolbar.recordBtn.confirm.message.stop = Are you sure you want to stop recording the session? -bbb.mainToolbar.recordBtn..notification.title = Record Notification -bbb.mainToolbar.recordBtn..notification.message1 = You can record this meeting. -bbb.mainToolbar.recordBtn..notification.message2 = You must click the Start/Stop Recording button in the title bar to begin/end recording. -bbb.mainToolbar.recordingLabel.recording = (Recording) -bbb.mainToolbar.recordingLabel.notRecording = Not Recording -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications -bbb.clientstatus.close = Close -bbb.clientstatus.tunneling.title = Firewall -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection -bbb.clientstatus.browser.title = Browser Version -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. -bbb.clientstatus.flash.title = Flash Player -bbb.clientstatus.flash.message = Your Flash Player plugin ({0}) is out-of-date. Recommend updating to the latest version. -bbb.clientstatus.webrtc.title = Audio -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.window.minimizeBtn.toolTip = Minimize -bbb.window.maximizeRestoreBtn.toolTip = Maximize -bbb.window.closeBtn.toolTip = Close -bbb.videoDock.titleBar = Webcam Window Title Bar -bbb.presentation.titleBar = Presentation Window Title Bar -bbb.chat.titleBar = Chat Window Title Bar -bbb.users.title = Users{0} {1} -bbb.users.titleBar = Users Window title bar -bbb.users.quickLink.label = Users Window -bbb.users.minimizeBtn.accessibilityName = Minimize the Users Window -bbb.users.maximizeRestoreBtn.accessibilityName = Maximize the Users Window -bbb.users.settings.buttonTooltip = Settings -bbb.users.settings.audioSettings = Audio Test -bbb.users.settings.webcamSettings = Webcam Settings -bbb.users.settings.muteAll = Mute All Users -bbb.users.settings.muteAllExcept = Mute All Users Except Presenter -bbb.users.settings.unmuteAll = Unmute All Users -bbb.users.settings.clearAllStatus = Clear all status icons -bbb.users.emojiStatusBtn.toolTip = Update my status icon -bbb.users.roomMuted.text = Viewers Muted -bbb.users.roomLocked.text = Viewers Locked -bbb.users.pushToTalk.toolTip = Talk -bbb.users.pushToMute.toolTip = Mute yourself -bbb.users.muteMeBtnTxt.talk = Unmute -bbb.users.muteMeBtnTxt.mute = Mute -bbb.users.muteMeBtnTxt.muted = Muted -bbb.users.usersGrid.contextmenu.exportusers = Copy User Names -bbb.users.usersGrid.accessibilityName = Users List. Use the arrow keys to navigate. -bbb.users.usersGrid.nameItemRenderer = Name -bbb.users.usersGrid.nameItemRenderer.youIdentifier = you -bbb.users.usersGrid.statusItemRenderer = Status -bbb.users.usersGrid.statusItemRenderer.changePresenter = Click To Make Presenter -bbb.users.usersGrid.statusItemRenderer.presenter = Presenter -bbb.users.usersGrid.statusItemRenderer.moderator = Moderator -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad -bbb.users.usersGrid.statusItemRenderer.clearStatus = Clear status -bbb.users.usersGrid.statusItemRenderer.viewer = Viewer -bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = Sharing webcam. -bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = Is Presenter. -bbb.users.usersGrid.mediaItemRenderer = Media -bbb.users.usersGrid.mediaItemRenderer.talking = Talking -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.webcamBtn = View webcam -bbb.users.usersGrid.mediaItemRenderer.pushToTalk = Unmute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToMute = Mute {0} -bbb.users.usersGrid.mediaItemRenderer.pushToLock = Lock {0} -bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = Unlock {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = Kick {0} -bbb.users.usersGrid.mediaItemRenderer.webcam = Sharing Webcam -bbb.users.usersGrid.mediaItemRenderer.micOff = Microphone off -bbb.users.usersGrid.mediaItemRenderer.micOn = Microphone on -bbb.users.usersGrid.mediaItemRenderer.noAudio = Not in audio conference -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer -bbb.users.emojiStatus.clear = Clear -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back -bbb.presentation.title = Presentation -bbb.presentation.titleWithPres = Presentation: {0} -bbb.presentation.quickLink.label = Presentation Window -bbb.presentation.fitToWidth.toolTip = Fit Presentation To Width -bbb.presentation.fitToPage.toolTip = Fit Presentation To Page -bbb.presentation.uploadPresBtn.toolTip = Upload Presentation -bbb.presentation.downloadPresBtn.toolTip = Download Presentations -bbb.presentation.backBtn.toolTip = Previous slide -bbb.presentation.btnSlideNum.accessibilityName = Slide {0} of {1} -bbb.presentation.btnSlideNum.toolTip = Select a slide -bbb.presentation.forwardBtn.toolTip = Next slide -bbb.presentation.maxUploadFileExceededAlert = Error: The file is bigger than what's allowed. -bbb.presentation.uploadcomplete = Upload completed. Please wait while we convert the document. -bbb.presentation.uploaded = uploaded. -bbb.presentation.document.supported = The uploaded document is supported. Starting to convert... -bbb.presentation.document.converted = Successfully converted the office document. -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. -bbb.presentation.error.io = IO Error: Please contact administrator. -bbb.presentation.error.security = Security Error: Please contact administrator. -bbb.presentation.error.convert.notsupported = Error: The uploaded document is unsupported. Please upload a compatible file. -bbb.presentation.error.convert.nbpage = Error: Failed to determine the number of pages in the uploaded document. -bbb.presentation.error.convert.maxnbpagereach = Error: The uploaded document has too many pages. -bbb.presentation.converted = Converted {0} of {1} slides. -bbb.presentation.slider = Presentation zoom level -bbb.presentation.slideloader.starttext = Slide text start -bbb.presentation.slideloader.endtext = Slide text end -bbb.presentation.uploadwindow.presentationfile = Presentation file -bbb.presentation.uploadwindow.pdf = PDF -bbb.presentation.uploadwindow.word = WORD -bbb.presentation.uploadwindow.excel = EXCEL -bbb.presentation.uploadwindow.powerpoint = POWERPOINT -bbb.presentation.uploadwindow.image = IMAGE -bbb.presentation.minimizeBtn.accessibilityName = Minimize the Presentation Window -bbb.presentation.maximizeRestoreBtn.accessibilityName = Maximize the Presentation Window -bbb.presentation.closeBtn.accessibilityName = Close the Presentation Window -bbb.fileupload.title = Add Files to Your Presentation -bbb.fileupload.lblFileName.defaultText = No file selected -bbb.fileupload.selectBtn.label = Select File -bbb.fileupload.selectBtn.toolTip = Open dialog box to select a file -bbb.fileupload.uploadBtn = Upload -bbb.fileupload.uploadBtn.toolTip = Upload the selected file -bbb.fileupload.deleteBtn.toolTip = Delete Presentation -bbb.fileupload.showBtn = Show -bbb.fileupload.retry = Try another file -bbb.fileupload.showBtn.toolTip = Show Presentation -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window -bbb.fileupload.genThumbText = Generating thumbnails.. -bbb.fileupload.progBarLbl = Progress: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable -bbb.chat.title = Chat -bbb.chat.quickLink.label = Chat Window -bbb.chat.cmpColorPicker.toolTip = Text Color -bbb.chat.input.accessibilityName = Chat Message Editing Field -bbb.chat.sendBtn.toolTip = Send Message -bbb.chat.sendBtn.accessibilityName = Send chat message -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? -bbb.chat.contextmenu.copyalltext = Copy All Text -bbb.chat.publicChatUsername = Public -bbb.chat.optionsTabName = Options -bbb.chat.privateChatSelect = Select a person to chat with privately -bbb.chat.private.userLeft = The user has left. -bbb.chat.private.userJoined = The user has joined. -bbb.chat.private.closeMessage = You can close this tab by using the key combination {0}. -bbb.chat.usersList.toolTip = Select User To Open Private Chat -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. -bbb.chat.chatOptions = Chat Options -bbb.chat.fontSize = Chat Message Font Size -bbb.chat.cmbFontSize.toolTip = Select Chat Message Font Size -bbb.chat.messageList = Chat Messages -bbb.chat.minimizeBtn.accessibilityName = Minimize the Chat Window -bbb.chat.maximizeRestoreBtn.accessibilityName = Maximize the Chat Window -bbb.chat.closeBtn.accessibilityName = Close the Chat Window -bbb.chat.chatTabs.accessibleNotice = New messages in this tab. -bbb.chat.chatMessage.systemMessage = System -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam -bbb.publishVideo.changeCameraBtn.toolTip = Open the change webcam dialog box -bbb.publishVideo.cmbResolution.tooltip = Select a webcam resolution -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.startPublishBtn.toolTip = Start sharing your webcam -bbb.publishVideo.startPublishBtn.errorName = Can't share webcam. Reason: {0} -bbb.webcamPermissions.chrome.title = Chrome Webcam Permissions -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. -bbb.videodock.title = Webcams -bbb.videodock.quickLink.label = Webcams Window -bbb.video.minimizeBtn.accessibilityName = Minimize the Webcams Window -bbb.video.maximizeRestoreBtn.accessibilityName = Maximize the Webcams Window -bbb.video.controls.muteButton.toolTip = Mute or unmute {0} -bbb.video.controls.switchPresenter.toolTip = Make {0} presenter -bbb.video.controls.ejectUserBtn.toolTip = Eject {0} from meeting -bbb.video.controls.privateChatBtn.toolTip = Chat with {0} -bbb.video.publish.hint.noCamera = No webcam available -bbb.video.publish.hint.cantOpenCamera = Can't open your webcam -bbb.video.publish.hint.waitingApproval = Waiting for approval -bbb.video.publish.hint.videoPreview = Webcam preview -bbb.video.publish.hint.openingCamera = Opening webcam... -bbb.video.publish.hint.cameraDenied = Webcam access denied -bbb.video.publish.hint.cameraIsBeingUsed = Your webcam couldn't be opened - it may be under use by another application -bbb.video.publish.hint.publishing = Publishing... -bbb.video.publish.closeBtn.accessName = Close the webcam settings dialog box -bbb.video.publish.closeBtn.label = Cancel -bbb.video.publish.titleBar = Publish Webcam Window -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume -bbb.screensharePublish.maximizeRestoreBtn.toolTip = You cannot maximize this window. -bbb.screensharePublish.closeBtn.toolTip = Stop Sharing and Close -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window -bbb.screensharePublish.minimizeBtn.toolTip = Minimize -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.mainshell.locale.version = +bbb.mainshell.statusProgress.connecting = +bbb.mainshell.statusProgress.loading = +bbb.mainshell.statusProgress.cannotConnectServer = +bbb.mainshell.copyrightLabel2 = +bbb.mainshell.logBtn.toolTip = +bbb.mainshell.meetingNotFound = +bbb.mainshell.invalidAuthToken = +bbb.mainshell.resetLayoutBtn.toolTip = +bbb.mainshell.notification.tunnelling = +bbb.mainshell.notification.webrtc = +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = +bbb.oldlocalewindow.reminder1 = +bbb.oldlocalewindow.reminder2 = +bbb.oldlocalewindow.windowTitle = +bbb.audioSelection.title = +bbb.audioSelection.btnMicrophone.label = +bbb.audioSelection.btnMicrophone.toolTip = +bbb.audioSelection.btnListenOnly.label = +bbb.audioSelection.btnListenOnly.toolTip = +bbb.audioSelection.txtPhone.text = +bbb.micSettings.title = +bbb.micSettings.speakers.header = +bbb.micSettings.microphone.header = +bbb.micSettings.playSound = +bbb.micSettings.playSound.toolTip = +bbb.micSettings.hearFromHeadset = +bbb.micSettings.speakIntoMic = +bbb.micSettings.echoTestMicPrompt = +bbb.micSettings.echoTestAudioYes = +bbb.micSettings.echoTestAudioNo = +bbb.micSettings.speakIntoMicTestLevel = +bbb.micSettings.recommendHeadset = +bbb.micSettings.changeMic = +bbb.micSettings.changeMic.toolTip = +bbb.micSettings.comboMicList.toolTip = +bbb.micSettings.micRecordVolume.label = +bbb.micSettings.micRecordVolume.toolTip = +bbb.micSettings.nextButton = +bbb.micSettings.nextButton.toolTip = +bbb.micSettings.join = +bbb.micSettings.join.toolTip = +bbb.micSettings.cancel = +bbb.micSettings.connectingtoecho = +bbb.micSettings.connectingtoecho.error = +bbb.micSettings.cancel.toolTip = +bbb.micSettings.access.helpButton = +bbb.micSettings.access.title = +bbb.micSettings.webrtc.title = +bbb.micSettings.webrtc.capableBrowser = +bbb.micSettings.webrtc.capableBrowser.dontuseit = +bbb.micSettings.webrtc.capableBrowser.dontuseit.toolTip = +bbb.micSettings.webrtc.notCapableBrowser = +bbb.micSettings.webrtc.connecting = +bbb.micSettings.webrtc.waitingforice = +bbb.micSettings.webrtc.transferring = +bbb.micSettings.webrtc.endingecho = +bbb.micSettings.webrtc.endedecho = +bbb.micPermissions.message.browserhttp = +bbb.micPermissions.firefox.title = +bbb.micPermissions.firefox.message = +bbb.micPermissions.chrome.title = +bbb.micPermissions.chrome.message = +bbb.micWarning.title = +bbb.micWarning.joinBtn.label = +bbb.micWarning.testAgain.label = +bbb.micWarning.message = +bbb.webrtcWarning.message = +bbb.webrtcWarning.title = +bbb.webrtcWarning.failedError.1001 = +bbb.webrtcWarning.failedError.1002 = +bbb.webrtcWarning.failedError.1003 = +bbb.webrtcWarning.failedError.1004 = +bbb.webrtcWarning.failedError.1005 = +bbb.webrtcWarning.failedError.1006 = +bbb.webrtcWarning.failedError.1007 = +bbb.webrtcWarning.failedError.1008 = +bbb.webrtcWarning.failedError.1009 = +bbb.webrtcWarning.failedError.1010 = +bbb.webrtcWarning.failedError.1011 = +bbb.webrtcWarning.failedError.unknown = +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = +bbb.webrtcWarning.connection.dropped = +bbb.webrtcWarning.connection.reconnecting = +bbb.webrtcWarning.connection.reestablished = +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = +bbb.mainToolbar.helpBtn = +bbb.mainToolbar.logoutBtn = +bbb.mainToolbar.logoutBtn.toolTip = +bbb.mainToolbar.idleLogoutBtn = +bbb.mainToolbar.langSelector = +bbb.mainToolbar.settingsBtn = +bbb.mainToolbar.settingsBtn.toolTip = +bbb.mainToolbar.shortcutBtn = +bbb.mainToolbar.shortcutBtn.toolTip = +bbb.mainToolbar.recordBtn.toolTip.start = +bbb.mainToolbar.recordBtn.toolTip.stop = +bbb.mainToolbar.recordBtn.toolTip.recording = +bbb.mainToolbar.recordBtn.toolTip.notRecording = +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = +bbb.mainToolbar.recordBtn.confirm.title = +bbb.mainToolbar.recordBtn.confirm.message.start = +bbb.mainToolbar.recordBtn.confirm.message.stop = +bbb.mainToolbar.recordBtn.notification.title = +bbb.mainToolbar.recordBtn.notification.message1 = +bbb.mainToolbar.recordBtn.notification.message2 = +bbb.mainToolbar.recordingLabel.recording = +bbb.mainToolbar.recordingLabel.notRecording = +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = +bbb.clientstatus.close = +bbb.clientstatus.tunneling.title = +bbb.clientstatus.tunneling.message = +bbb.clientstatus.browser.title = +bbb.clientstatus.browser.message = +bbb.clientstatus.flash.title = +bbb.clientstatus.flash.message = +bbb.clientstatus.webrtc.title = +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = +bbb.window.minimizeBtn.toolTip = +bbb.window.maximizeRestoreBtn.toolTip = +bbb.window.closeBtn.toolTip = +bbb.videoDock.titleBar = +bbb.presentation.titleBar = +bbb.chat.titleBar = +bbb.users.title = +bbb.users.titleBar = +bbb.users.quickLink.label = +bbb.users.minimizeBtn.accessibilityName = +bbb.users.maximizeRestoreBtn.accessibilityName = +bbb.users.settings.buttonTooltip = +bbb.users.settings.audioSettings = +bbb.users.settings.webcamSettings = +bbb.users.settings.muteAll = +bbb.users.settings.muteAllExcept = +bbb.users.settings.unmuteAll = +bbb.users.settings.clearAllStatus = +bbb.users.emojiStatusBtn.toolTip = +bbb.users.roomMuted.text = +bbb.users.roomLocked.text = +bbb.users.pushToTalk.toolTip = +bbb.users.pushToMute.toolTip = +bbb.users.muteMeBtnTxt.talk = +bbb.users.muteMeBtnTxt.mute = +bbb.users.muteMeBtnTxt.muted = +bbb.users.usersGrid.contextmenu.exportusers = +bbb.users.usersGrid.accessibilityName = +bbb.users.usersGrid.nameItemRenderer = +bbb.users.usersGrid.nameItemRenderer.youIdentifier = +bbb.users.usersGrid.statusItemRenderer = +bbb.users.usersGrid.statusItemRenderer.changePresenter = +bbb.users.usersGrid.statusItemRenderer.presenter = +bbb.users.usersGrid.statusItemRenderer.moderator = +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = +bbb.users.usersGrid.statusItemRenderer.clearStatus = +bbb.users.usersGrid.statusItemRenderer.viewer = +bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = +bbb.users.usersGrid.statusItemRenderer.presIcon.toolTip = +bbb.users.usersGrid.mediaItemRenderer = +bbb.users.usersGrid.mediaItemRenderer.talking = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.webcamBtn = +bbb.users.usersGrid.mediaItemRenderer.pushToTalk = +bbb.users.usersGrid.mediaItemRenderer.pushToMute = +bbb.users.usersGrid.mediaItemRenderer.pushToLock = +bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = +bbb.users.usersGrid.mediaItemRenderer.kickUser = +bbb.users.usersGrid.mediaItemRenderer.webcam = +bbb.users.usersGrid.mediaItemRenderer.micOff = +bbb.users.usersGrid.mediaItemRenderer.micOn = +bbb.users.usersGrid.mediaItemRenderer.noAudio = +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = +bbb.users.emojiStatus.clear = +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = +bbb.presentation.title = +bbb.presentation.titleWithPres = +bbb.presentation.quickLink.label = +bbb.presentation.fitToWidth.toolTip = +bbb.presentation.fitToPage.toolTip = +bbb.presentation.uploadPresBtn.toolTip = +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = +bbb.presentation.backBtn.toolTip = +bbb.presentation.btnSlideNum.accessibilityName = +bbb.presentation.btnSlideNum.toolTip = +bbb.presentation.forwardBtn.toolTip = +bbb.presentation.maxUploadFileExceededAlert = +bbb.presentation.uploadcomplete = +bbb.presentation.uploaded = +bbb.presentation.document.supported = +bbb.presentation.document.converted = +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = +bbb.presentation.error.io = +bbb.presentation.error.security = +bbb.presentation.error.convert.notsupported = +bbb.presentation.error.convert.nbpage = +bbb.presentation.error.convert.maxnbpagereach = +bbb.presentation.converted = +bbb.presentation.slider = +bbb.presentation.slideloader.starttext = +bbb.presentation.slideloader.endtext = +bbb.presentation.uploadwindow.presentationfile = +bbb.presentation.uploadwindow.pdf = +bbb.presentation.uploadwindow.word = +bbb.presentation.uploadwindow.excel = +bbb.presentation.uploadwindow.powerpoint = +bbb.presentation.uploadwindow.image = +bbb.presentation.minimizeBtn.accessibilityName = +bbb.presentation.maximizeRestoreBtn.accessibilityName = +bbb.presentation.closeBtn.accessibilityName = +bbb.fileupload.title = +bbb.fileupload.lblFileName.defaultText = +bbb.fileupload.selectBtn.label = +bbb.fileupload.selectBtn.toolTip = +bbb.fileupload.uploadBtn = +bbb.fileupload.uploadBtn.toolTip = +bbb.fileupload.deleteBtn.toolTip = +bbb.fileupload.showBtn = +bbb.fileupload.retry = +bbb.fileupload.showBtn.toolTip = +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = +bbb.fileupload.genThumbText = +bbb.fileupload.progBarLbl = +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = +bbb.chat.title = +bbb.chat.quickLink.label = +bbb.chat.cmpColorPicker.toolTip = +bbb.chat.input.accessibilityName = +bbb.chat.sendBtn.toolTip = +bbb.chat.sendBtn.accessibilityName = +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = +bbb.chat.contextmenu.copyalltext = +bbb.chat.publicChatUsername = +bbb.chat.optionsTabName = +bbb.chat.privateChatSelect = +bbb.chat.private.userLeft = +bbb.chat.private.userJoined = +bbb.chat.private.closeMessage = +bbb.chat.usersList.toolTip = +bbb.chat.usersList.accessibilityName = +bbb.chat.chatOptions = +bbb.chat.fontSize = +bbb.chat.cmbFontSize.toolTip = +bbb.chat.messageList = +bbb.chat.minimizeBtn.accessibilityName = +bbb.chat.maximizeRestoreBtn.accessibilityName = +bbb.chat.closeBtn.accessibilityName = +bbb.chat.chatTabs.accessibleNotice = +bbb.chat.chatMessage.systemMessage = +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = +bbb.publishVideo.changeCameraBtn.labelText = +bbb.publishVideo.changeCameraBtn.toolTip = +bbb.publishVideo.cmbResolution.tooltip = +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.startPublishBtn.toolTip = +bbb.publishVideo.startPublishBtn.errorName = +bbb.webcamPermissions.chrome.title = +bbb.webcamPermissions.chrome.message = +bbb.videodock.title = +bbb.videodock.quickLink.label = +bbb.video.minimizeBtn.accessibilityName = +bbb.video.maximizeRestoreBtn.accessibilityName = +bbb.video.controls.muteButton.toolTip = +bbb.video.controls.switchPresenter.toolTip = +bbb.video.controls.ejectUserBtn.toolTip = +bbb.video.controls.privateChatBtn.toolTip = +bbb.video.publish.hint.noCamera = +bbb.video.publish.hint.cantOpenCamera = +bbb.video.publish.hint.waitingApproval = +bbb.video.publish.hint.videoPreview = +bbb.video.publish.hint.openingCamera = +bbb.video.publish.hint.cameraDenied = +bbb.video.publish.hint.cameraIsBeingUsed = +bbb.video.publish.hint.publishing = +bbb.video.publish.closeBtn.accessName = +bbb.video.publish.closeBtn.label = +bbb.video.publish.titleBar = +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = +bbb.screensharePublish.maximizeRestoreBtn.toolTip = +bbb.screensharePublish.closeBtn.toolTip = +bbb.screensharePublish.closeBtn.accessibilityName = +bbb.screensharePublish.minimizeBtn.toolTip = +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio -bbb.toolbar.phone.toolTip.mute = Stop listening the conference -bbb.toolbar.phone.toolTip.unmute = Start listening the conference -bbb.toolbar.phone.toolTip.nomic = No microphone detected -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes -bbb.toolbar.video.toolTip.start = Share Your Webcam -bbb.toolbar.video.toolTip.stop = Stop Sharing Your Webcam -bbb.layout.addButton.toolTip = Add the custom layout to the list -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers -bbb.layout.combo.toolTip = Change Your Layout -bbb.layout.loadButton.toolTip = Load layouts from a file -bbb.layout.saveButton.toolTip = Save layouts to a file -bbb.layout.lockButton.toolTip = Lock layout -bbb.layout.combo.prompt = Apply a layout -bbb.layout.combo.custom = * Custom layout -bbb.layout.combo.customName = Custom layout -bbb.layout.combo.remote = Remote -bbb.layout.window.name = Layout name -bbb.layout.save.complete = Layouts were successfully saved -bbb.layout.load.complete = Layouts were successfully loaded -bbb.layout.load.failed = Unable to load the layouts -bbb.layout.sync = Your layout has been sent to all participants -bbb.layout.name.defaultlayout = Default Layout -bbb.layout.name.closedcaption = Closed Caption -bbb.layout.name.videochat = Video Chat -bbb.layout.name.webcamsfocus = Webcam Meeting -bbb.layout.name.presentfocus = Presentation Meeting -bbb.layout.name.presentandusers = Presentation + Users -bbb.layout.name.lectureassistant = Lecture Assistant -bbb.layout.name.lecture = Lecture -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout -bbb.highlighter.toolbar.pencil = Pencil -bbb.highlighter.toolbar.pencil.accessibilityName = Switch whiteboard cursor to pencil -bbb.highlighter.toolbar.ellipse = Circle -bbb.highlighter.toolbar.ellipse.accessibilityName = Switch whiteboard cursor to circle -bbb.highlighter.toolbar.rectangle = Rectangle -bbb.highlighter.toolbar.rectangle.accessibilityName = Switch whiteboard cursor to rectangle -bbb.highlighter.toolbar.panzoom = Pan and Zoom -bbb.highlighter.toolbar.panzoom.accessibilityName = Switch whiteboard cursor to pan and zoom -bbb.highlighter.toolbar.clear = Clear All Annotations -bbb.highlighter.toolbar.clear.accessibilityName = Clear the whiteboard page -bbb.highlighter.toolbar.undo = Undo Annotation -bbb.highlighter.toolbar.undo.accessibilityName = Undo the last whiteboard shape -bbb.highlighter.toolbar.color = Select Color -bbb.highlighter.toolbar.color.accessibilityName = Whiteboard mark draw color -bbb.highlighter.toolbar.thickness = Change Thickness -bbb.highlighter.toolbar.thickness.accessibilityName = Whiteboard draw thickness -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = Logged Out -bbb.logout.button.label = OK -bbb.logout.appshutdown = The server app has been shut down -bbb.logout.asyncerror = An Async Error occured -bbb.logout.connectionclosed = The connection to the server has been closed -bbb.logout.connectionfailed = The connection to the server has ended -bbb.logout.rejected = The connection to the server has been rejected -bbb.logout.invalidapp = The red5 app does not exist -bbb.logout.unknown = Your client has lost connection with the server -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting -bbb.logout.usercommand = You have logged out of the conference -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. -bbb.logout.refresh.message = If this logout was unexpected click the button below to reconnect. -bbb.logout.refresh.label = Reconnect -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window -bbb.logout.confirm.title = Confirm Logout -bbb.logout.confirm.message = Are you sure you want to log out? -bbb.logout.confirm.endMeeting = Yes and end the meeting -bbb.logout.confirm.yes = Yes -bbb.logout.confirm.no = No -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems -bbb.connection.reconnecting=Reconnecting -bbb.connection.reestablished=Connection reestablished -bbb.connection.bigbluebutton=BigBlueButton -bbb.connection.sip=SIP -bbb.connection.video=Video -bbb.connection.deskshare=Deskshare -bbb.notes.title = Notes -bbb.notes.cmpColorPicker.toolTip = Text Color -bbb.notes.saveBtn = Save -bbb.notes.saveBtn.toolTip = Save Note -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) -bbb.settings.deskshare.instructions = Choose Allow on the prompt that pops up to check that desktop sharing is working properly for you -bbb.settings.deskshare.start = Check Desktop Sharing -bbb.settings.voice.volume = Microphone Activity -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java -bbb.settings.flash.label = Flash version error -bbb.settings.flash.text = You have Flash {0} installed, but you need at least version {1} to run BigBlueButton properly. The button below will install the newest Adobe Flash version. -bbb.settings.flash.command = Install newest Flash -bbb.settings.isight.label = iSight webcam error -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version -bbb.settings.isight.command = Install Flash 10.2 RC2 -bbb.settings.warning.label = Warning -bbb.settings.warning.close = Close this Warning -bbb.settings.noissues = No outstanding issues have been detected. -bbb.settings.instructions = Accept the Flash prompt that asks you for webcam permissions. If the output matches what is expected, your browser has been set up correctly. Other potentials issues are below. Examine them to find a possible solution. -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency -ltbcustom.bbb.highlighter.toolbar.triangle = Triangle -ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = Switch whiteboard cursor to triangle -ltbcustom.bbb.highlighter.toolbar.line = Line -ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = Switch whiteboard cursor to line -ltbcustom.bbb.highlighter.toolbar.text = Text -ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = Switch whiteboard cursor to text -ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = Text color -ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = Font size -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = +bbb.toolbar.phone.toolTip.mute = +bbb.toolbar.phone.toolTip.unmute = +bbb.toolbar.phone.toolTip.nomic = +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = +bbb.toolbar.video.toolTip.start = +bbb.toolbar.video.toolTip.stop = +bbb.layout.addButton.label = +bbb.layout.addButton.toolTip = +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = +bbb.layout.combo.toolTip = +bbb.layout.loadButton.toolTip = +bbb.layout.saveButton.toolTip = +bbb.layout.lockButton.toolTip = +bbb.layout.combo.prompt = +bbb.layout.combo.custom = +bbb.layout.combo.customName = +bbb.layout.combo.remote = +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = +bbb.layout.save.complete = +bbb.layout.save.ioerror = +bbb.layout.load.complete = +bbb.layout.load.failed = +bbb.layout.sync = +bbb.layout.name.defaultlayout = +bbb.layout.name.closedcaption = +bbb.layout.name.videochat = +bbb.layout.name.webcamsfocus = +bbb.layout.name.presentfocus = +bbb.layout.name.presentandusers = +bbb.layout.name.lectureassistant = +bbb.layout.name.lecture = +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = +bbb.highlighter.toolbar.pencil = +bbb.highlighter.toolbar.pencil.accessibilityName = +bbb.highlighter.toolbar.ellipse = +bbb.highlighter.toolbar.ellipse.accessibilityName = +bbb.highlighter.toolbar.rectangle = +bbb.highlighter.toolbar.rectangle.accessibilityName = +bbb.highlighter.toolbar.panzoom = +bbb.highlighter.toolbar.panzoom.accessibilityName = +bbb.highlighter.toolbar.clear = +bbb.highlighter.toolbar.clear.accessibilityName = +bbb.highlighter.toolbar.undo = +bbb.highlighter.toolbar.undo.accessibilityName = +bbb.highlighter.toolbar.color = +bbb.highlighter.toolbar.color.accessibilityName = +bbb.highlighter.toolbar.thickness = +bbb.highlighter.toolbar.thickness.accessibilityName = +bbb.highlighter.toolbar.multiuser = +bbb.logout.button.label = +bbb.logout.appshutdown = +bbb.logout.asyncerror = +bbb.logout.connectionclosed = +bbb.logout.connectionfailed = +bbb.logout.rejected = +bbb.logout.invalidapp = +bbb.logout.unknown = +bbb.logout.guestkickedout = +bbb.logout.usercommand = +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = +bbb.logout.refresh.message = +bbb.logout.refresh.label = +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = +bbb.logout.confirm.title = +bbb.logout.confirm.message = +bbb.logout.confirm.endMeeting = +bbb.logout.confirm.yes = +bbb.logout.confirm.no = +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= +bbb.connection.reconnecting= +bbb.connection.reestablished= +bbb.connection.bigbluebutton= +bbb.connection.sip= +bbb.connection.video= +bbb.connection.deskshare= +bbb.notes.title = +bbb.notes.cmpColorPicker.toolTip = +bbb.notes.saveBtn = +bbb.notes.saveBtn.toolTip = +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = +bbb.settings.deskshare.instructions = +bbb.settings.deskshare.start = +bbb.settings.voice.volume = +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = +bbb.settings.flash.label = +bbb.settings.flash.text = +bbb.settings.flash.command = +bbb.settings.isight.label = +bbb.settings.isight.text = +bbb.settings.isight.command = +bbb.settings.warning.label = +bbb.settings.warning.close = +bbb.settings.noissues = +bbb.settings.instructions = +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = +ltbcustom.bbb.highlighter.toolbar.triangle = +ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.line = +ltbcustom.bbb.highlighter.toolbar.line.accessibilityName = +ltbcustom.bbb.highlighter.toolbar.text = +ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = +ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = +ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = -bbb.accessibility.clientReady = Ready +bbb.accessibility.clientReady = -bbb.accessibility.chat.chatBox.reachedFirst = You have reached the first message. -bbb.accessibility.chat.chatBox.reachedLatest = You have reached the latest message. -bbb.accessibility.chat.chatBox.navigatedFirst = You have navigated to the first message. -bbb.accessibility.chat.chatBox.navigatedLatest = You have navigated to the latest message. -bbb.accessibility.chat.chatBox.navigatedLatestRead = You have navigated to the most recent message you have read. -bbb.accessibility.chat.chatwindow.input = Chat input -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options -bbb.accessibility.chat.initialDescription = Please use the arrow keys to navigate through chat messages. +bbb.accessibility.chat.chatBox.reachedFirst = +bbb.accessibility.chat.chatBox.reachedLatest = +bbb.accessibility.chat.chatBox.navigatedFirst = +bbb.accessibility.chat.chatBox.navigatedLatest = +bbb.accessibility.chat.chatBox.navigatedLatestRead = +bbb.accessibility.chat.chatwindow.input = +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = +bbb.accessibility.chat.initialDescription = -bbb.accessibility.notes.notesview.input = Notes input +bbb.accessibility.notes.notesview.input = -bbb.shortcuthelp.title = Shortcut Keys -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar -bbb.shortcuthelp.minimizeBtn.accessibilityName = Minimize the Shortcut Help Window -bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = Maximize the Shortcut Help Window -bbb.shortcuthelp.closeBtn.accessibilityName = Close the Shortcut Help Window -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category -bbb.shortcuthelp.dropdown.general = Global shortcuts -bbb.shortcuthelp.dropdown.presentation = Presentation shortcuts -bbb.shortcuthelp.dropdown.chat = Chat shortcuts -bbb.shortcuthelp.dropdown.users = Users shortcuts -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. -bbb.shortcuthelp.headers.shortcut = Shortcut -bbb.shortcuthelp.headers.function = Function +bbb.shortcuthelp.title = +bbb.shortcuthelp.titleBar = +bbb.shortcuthelp.minimizeBtn.accessibilityName = +bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = +bbb.shortcuthelp.closeBtn.accessibilityName = +bbb.shortcuthelp.dropdown.accessibilityName = +bbb.shortcuthelp.dropdown.general = +bbb.shortcuthelp.dropdown.presentation = +bbb.shortcuthelp.dropdown.chat = +bbb.shortcuthelp.dropdown.users = +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = +bbb.shortcuthelp.headers.shortcut = +bbb.shortcuthelp.headers.function = -bbb.shortcutkey.general.minimize = 189 -bbb.shortcutkey.general.minimize.function = Minimize current window -bbb.shortcutkey.general.maximize = 187 -bbb.shortcutkey.general.maximize.function = Maximize current window +bbb.shortcutkey.general.minimize = +bbb.shortcutkey.general.minimize.function = +bbb.shortcutkey.general.maximize = +bbb.shortcutkey.general.maximize.function = -bbb.shortcutkey.flash.exit = 79 -bbb.shortcutkey.flash.exit.function = Focus out of the Flash window -bbb.shortcutkey.users.muteme = 77 -bbb.shortcutkey.users.muteme.function = Mute and Unmute your microphone -bbb.shortcutkey.chat.chatinput = 73 -bbb.shortcutkey.chat.chatinput.function = Focus the chat input field -bbb.shortcutkey.present.focusslide = 67 -bbb.shortcutkey.present.focusslide.function = Focus the presentation slide -bbb.shortcutkey.whiteboard.undo = 90 -bbb.shortcutkey.whiteboard.undo.function = Undo last whiteboard mark +bbb.shortcutkey.flash.exit = +bbb.shortcutkey.flash.exit.function = +bbb.shortcutkey.users.muteme = +bbb.shortcutkey.users.muteme.function = +bbb.shortcutkey.chat.chatinput = +bbb.shortcutkey.chat.chatinput.function = +bbb.shortcutkey.present.focusslide = +bbb.shortcutkey.present.focusslide.function = +bbb.shortcutkey.whiteboard.undo = +bbb.shortcutkey.whiteboard.undo.function = -bbb.shortcutkey.focus.users = 49 -bbb.shortcutkey.focus.users.function = Move focus to the Users window -bbb.shortcutkey.focus.video = 50 -bbb.shortcutkey.focus.video.function = Move focus to the Webcam window -bbb.shortcutkey.focus.presentation = 51 -bbb.shortcutkey.focus.presentation.function = Move focus to the Presentation window -bbb.shortcutkey.focus.chat = 52 -bbb.shortcutkey.focus.chat.function = Move focus to the Chat window -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.users = +bbb.shortcutkey.focus.users.function = +bbb.shortcutkey.focus.video = +bbb.shortcutkey.focus.video.function = +bbb.shortcutkey.focus.presentation = +bbb.shortcutkey.focus.presentation.function = +bbb.shortcutkey.focus.chat = +bbb.shortcutkey.focus.chat.function = +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = -bbb.shortcutkey.share.desktop = 68 -bbb.shortcutkey.share.desktop.function = Open desktop sharing window -bbb.shortcutkey.share.webcam = 66 -bbb.shortcutkey.share.webcam.function = Open webcam sharing window +bbb.shortcutkey.share.desktop = +bbb.shortcutkey.share.desktop.function = +bbb.shortcutkey.share.webcam = +bbb.shortcutkey.share.webcam.function = -bbb.shortcutkey.shortcutWindow = 72 -bbb.shortcutkey.shortcutWindow.function = Open/focus to shortcut help window -bbb.shortcutkey.logout = 76 -bbb.shortcutkey.logout.function = Log out of this meeting -bbb.shortcutkey.raiseHand = 82 -bbb.shortcutkey.raiseHand.function = Raise your hand +bbb.shortcutkey.shortcutWindow = +bbb.shortcutkey.shortcutWindow.function = +bbb.shortcutkey.logout = +bbb.shortcutkey.logout.function = +bbb.shortcutkey.raiseHand = +bbb.shortcutkey.raiseHand.function = -bbb.shortcutkey.present.upload = 89 -bbb.shortcutkey.present.upload.function = Upload presentation -bbb.shortcutkey.present.previous = 65 -bbb.shortcutkey.present.previous.function = Go to previous slide -bbb.shortcutkey.present.select = 83 -bbb.shortcutkey.present.select.function = View all slides -bbb.shortcutkey.present.next = 69 -bbb.shortcutkey.present.next.function = Go to next slide -bbb.shortcutkey.present.fitWidth = 70 -bbb.shortcutkey.present.fitWidth.function = Fit slides to width -bbb.shortcutkey.present.fitPage = 82 -bbb.shortcutkey.present.fitPage.function = Fit slides to page +bbb.shortcutkey.present.upload = +bbb.shortcutkey.present.upload.function = +bbb.shortcutkey.present.previous = +bbb.shortcutkey.present.previous.function = +bbb.shortcutkey.present.select = +bbb.shortcutkey.present.select.function = +bbb.shortcutkey.present.next = +bbb.shortcutkey.present.next.function = +bbb.shortcutkey.present.fitWidth = +bbb.shortcutkey.present.fitWidth.function = +bbb.shortcutkey.present.fitPage = +bbb.shortcutkey.present.fitPage.function = -bbb.shortcutkey.users.makePresenter = 89 -bbb.shortcutkey.users.makePresenter.function = Make selected person presenter -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = Kick selected person from the meeting -bbb.shortcutkey.users.mute = 83 -bbb.shortcutkey.users.mute.function = Mute or unmute selected person -bbb.shortcutkey.users.muteall = 65 -bbb.shortcutkey.users.muteall.function = Mute or unmute all users -bbb.shortcutkey.users.muteAllButPres = 65 -bbb.shortcutkey.users.muteAllButPres.function = Mute everyone but the Presenter -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.makePresenter = +bbb.shortcutkey.users.makePresenter.function = +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = +bbb.shortcutkey.users.mute = +bbb.shortcutkey.users.mute.function = +bbb.shortcutkey.users.muteall = +bbb.shortcutkey.users.muteall.function = +bbb.shortcutkey.users.muteAllButPres = +bbb.shortcutkey.users.muteAllButPres.function = +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = -bbb.shortcutkey.chat.focusTabs = 89 -bbb.shortcutkey.chat.focusTabs.function = Focus to chat tabs -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list -bbb.shortcutkey.chat.changeColour = 67 -bbb.shortcutkey.chat.changeColour.function = Focus to font color picker. -bbb.shortcutkey.chat.sendMessage = 83 -bbb.shortcutkey.chat.sendMessage.function = Send chat message -bbb.shortcutkey.chat.closePrivate = 69 -bbb.shortcutkey.chat.closePrivate.function = Close private chat tab -bbb.shortcutkey.chat.explanation = ---- -bbb.shortcutkey.chat.explanation.function = For message navigation, you must focus the chat box. +bbb.shortcutkey.chat.focusTabs = +bbb.shortcutkey.chat.focusTabs.function = +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = +bbb.shortcutkey.chat.changeColour = +bbb.shortcutkey.chat.changeColour.function = +bbb.shortcutkey.chat.sendMessage = +bbb.shortcutkey.chat.sendMessage.function = +bbb.shortcutkey.chat.closePrivate = +bbb.shortcutkey.chat.closePrivate.function = +bbb.shortcutkey.chat.explanation = +bbb.shortcutkey.chat.explanation.function = -bbb.shortcutkey.chat.chatbox.advance = 40 -bbb.shortcutkey.chat.chatbox.advance.function = Navigate to the next message -bbb.shortcutkey.chat.chatbox.goback = 38 -bbb.shortcutkey.chat.chatbox.goback.function = Navigate to the previous message -bbb.shortcutkey.chat.chatbox.repeat = 32 -bbb.shortcutkey.chat.chatbox.repeat.function = Repeat current message -bbb.shortcutkey.chat.chatbox.golatest = 39 -bbb.shortcutkey.chat.chatbox.golatest.function = Navigate to the latest message -bbb.shortcutkey.chat.chatbox.gofirst = 37 -bbb.shortcutkey.chat.chatbox.gofirst.function = Navigate to the first message -bbb.shortcutkey.chat.chatbox.goread = 75 -bbb.shortcutkey.chat.chatbox.goread.function = Navigate to the most recent message you've read -bbb.shortcutkey.chat.chatbox.debug = 71 -bbb.shortcutkey.chat.chatbox.debug.function = Temporary debug hotkey +bbb.shortcutkey.chat.chatbox.advance = +bbb.shortcutkey.chat.chatbox.advance.function = +bbb.shortcutkey.chat.chatbox.goback = +bbb.shortcutkey.chat.chatbox.goback.function = +bbb.shortcutkey.chat.chatbox.repeat = +bbb.shortcutkey.chat.chatbox.repeat.function = +bbb.shortcutkey.chat.chatbox.golatest = +bbb.shortcutkey.chat.chatbox.golatest.function = +bbb.shortcutkey.chat.chatbox.gofirst = +bbb.shortcutkey.chat.chatbox.gofirst.function = +bbb.shortcutkey.chat.chatbox.goread = +bbb.shortcutkey.chat.chatbox.goread.function = +bbb.shortcutkey.chat.chatbox.debug = +bbb.shortcutkey.chat.chatbox.debug.function = -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = -bbb.polling.startButton.tooltip = Start a poll -bbb.polling.startButton.label = Start Poll -bbb.polling.publishButton.label = Publish -bbb.polling.closeButton.label = Close -bbb.polling.customPollOption.label = Custom Poll... -bbb.polling.pollModal.title = Live Poll Results -bbb.polling.customChoices.title = Enter Polling Choices -bbb.polling.respondersLabel.novotes = Waiting for responses -bbb.polling.respondersLabel.text = {0} Users Responded -bbb.polling.respondersLabel.finished = Done -bbb.polling.answer.Yes = Yes -bbb.polling.answer.No = No -bbb.polling.answer.True = True -bbb.polling.answer.False = False -bbb.polling.answer.A = A -bbb.polling.answer.B = B -bbb.polling.answer.C = C -bbb.polling.answer.D = D -bbb.polling.answer.E = E -bbb.polling.answer.F = F -bbb.polling.answer.G = G -bbb.polling.results.accessible.header = Poll Results. -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.startButton.tooltip = +bbb.polling.startButton.label = +bbb.polling.publishButton.label = +bbb.polling.closeButton.label = +bbb.polling.customPollOption.label = +bbb.polling.pollModal.title = +bbb.polling.pollModal.hint = +bbb.polling.customChoices.title = +bbb.polling.respondersLabel.novotes = +bbb.polling.respondersLabel.text = +bbb.polling.respondersLabel.finished = +bbb.polling.answer.Yes = +bbb.polling.answer.No = +bbb.polling.answer.True = +bbb.polling.answer.False = +bbb.polling.answer.A = +bbb.polling.answer.B = +bbb.polling.answer.C = +bbb.polling.answer.D = +bbb.polling.answer.E = +bbb.polling.answer.F = +bbb.polling.answer.G = +bbb.polling.results.accessible.header = +bbb.polling.results.accessible.answer = -bbb.publishVideo.startPublishBtn.labelText = Start Sharing -bbb.publishVideo.changeCameraBtn.labelText = Change Webcam +bbb.publishVideo.startPublishBtn.labelText = +bbb.publishVideo.changeCameraBtn.labelText = -bbb.accessibility.alerts.madePresenter = You are now the Presenter. -bbb.accessibility.alerts.madeViewer = You are now a Viewer. +bbb.accessibility.alerts.madePresenter = +bbb.accessibility.alerts.madeViewer = -bbb.shortcutkey.specialKeys.space = Spacebar -bbb.shortcutkey.specialKeys.left = Left Arrow -bbb.shortcutkey.specialKeys.right = Right Arrow -bbb.shortcutkey.specialKeys.up = Up Arrow -bbb.shortcutkey.specialKeys.down = Down Arrow -bbb.shortcutkey.specialKeys.plus = Plus -bbb.shortcutkey.specialKeys.minus = Minus +bbb.shortcutkey.specialKeys.space = +bbb.shortcutkey.specialKeys.left = +bbb.shortcutkey.specialKeys.right = +bbb.shortcutkey.specialKeys.up = +bbb.shortcutkey.specialKeys.down = +bbb.shortcutkey.specialKeys.plus = +bbb.shortcutkey.specialKeys.minus = -bbb.toolbar.videodock.toolTip.closeAllVideos = Close all videos -bbb.users.settings.lockAll = Lock All Users -bbb.users.settings.lockAllExcept = Lock Users Except Presenter -bbb.users.settings.lockSettings = Lock Viewers ... -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... -bbb.users.settings.unlockAll = Unlock All Viewers -bbb.users.settings.roomIsLocked = Locked by default -bbb.users.settings.roomIsMuted = Muted by default +bbb.toolbar.videodock.toolTip.closeAllVideos = +bbb.users.settings.lockAll = +bbb.users.settings.lockAllExcept = +bbb.users.settings.lockSettings = +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = +bbb.users.settings.unlockAll = +bbb.users.settings.roomIsLocked = +bbb.users.settings.roomIsMuted = -bbb.lockSettings.save = Apply -bbb.lockSettings.save.tooltip = Apply lock settings -bbb.lockSettings.cancel = Cancel -bbb.lockSettings.cancel.toolTip = Close this window without saving +bbb.lockSettings.save = +bbb.lockSettings.save.tooltip = +bbb.lockSettings.cancel = +bbb.lockSettings.cancel.toolTip = -bbb.lockSettings.moderatorLocking = Moderator locking -bbb.lockSettings.privateChat = Private Chat -bbb.lockSettings.publicChat = Public Chat -bbb.lockSettings.webcam = Webcam -bbb.lockSettings.microphone = Microphone -bbb.lockSettings.layout = Layout -bbb.lockSettings.title=Lock Viewers -bbb.lockSettings.feature=Feature -bbb.lockSettings.locked=Locked -bbb.lockSettings.lockOnJoin=Lock On Join +bbb.lockSettings.hint = +bbb.lockSettings.moderatorLocking = +bbb.lockSettings.privateChat = +bbb.lockSettings.publicChat = +bbb.lockSettings.webcam = +bbb.lockSettings.webcamsOnlyForModerator = +bbb.lockSettings.microphone = +bbb.lockSettings.layout = +bbb.lockSettings.title= +bbb.lockSettings.feature= +bbb.lockSettings.locked= +bbb.lockSettings.lockOnJoin= -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite -bbb.users.breakout.close = Close -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = +bbb.users.breakout.close = +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/zh_CN/bbbResources.properties b/bigbluebutton-client/locale/zh_CN/bbbResources.properties index ff566bc8134337922473c7a753aafbb3b92cb515..2032cf79b26d6133ed910164d9211d7eca212c98 100644 --- a/bigbluebutton-client/locale/zh_CN/bbbResources.properties +++ b/bigbluebutton-client/locale/zh_CN/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = æ£åœ¨è¿žæŽ¥åˆ°æœåŠ¡å™¨ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = 抱æ‰ï¼Œæ— 法连接到æœåŠ¡å™¨ã€‚ -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = 打开日志 bbb.mainshell.meetingNotFound = æ²¡æœ‰æ‰¾åˆ°ä¼šè¯ bbb.mainshell.invalidAuthToken = æ— æ•ˆçš„è®¤è¯ç bbb.mainshell.resetLayoutBtn.toolTip = 布局é‡ç½® bbb.mainshell.notification.tunnelling = éŸ³é¢‘ä¼ è¾“ bbb.mainshell.notification.webrtc = WebRTCè¯éŸ³ -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = 您å¯èƒ½æ£åœ¨ä½¿ç”¨æ—§ç‰ˆçš„ BigBlueButton ç•Œé¢ç¿»è¯‘。 bbb.oldlocalewindow.reminder2 = 请清空æµè§ˆå™¨ç¼“å˜å¹¶é‡è¯•ã€‚ bbb.oldlocalewindow.windowTitle = è¦å‘Š: 旧的è¯è¨€æ–‡ä»¶ï¼ @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = 连接 bbb.micSettings.webrtc.transferring = ä¼ è¾“ä¸ bbb.micSettings.webrtc.endingecho = åŠ å…¥è¯éŸ³ bbb.micSettings.webrtc.endedecho = å›žéŸ³æµ‹è¯•å·²ç»“æŸ +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = Firefox麦克风å…许 -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = å…许Chrome æµè§ˆå™¨éº¦å…‹é£Ž -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = è¯éŸ³è¦å‘Š bbb.micWarning.joinBtn.label = åŠ å…¥ bbb.micWarning.testAgain.label = å†æ¬¡æµ‹è¯• @@ -88,19 +89,19 @@ bbb.webrtcWarning.failedError.1009 = 错误1009:æ— æ³•èŽ·å–STUN/TURNæœåŠ¡å™¨ bbb.webrtcWarning.failedError.1010 = 错误1010:ICEå议超时 bbb.webrtcWarning.failedError.1011 = 错误1011:ICE收集超时了 bbb.webrtcWarning.failedError.unknown = 错误 {0}: 未知的错误代ç -bbb.webrtcWarning.failedError.mediamissing = Could not get your microphone for a WebRTC call -bbb.webrtcWarning.failedError.endedunexpectedly = The WebRTC echo test ended unexpectedly +bbb.webrtcWarning.failedError.mediamissing = +bbb.webrtcWarning.failedError.endedunexpectedly = bbb.webrtcWarning.connection.dropped = 放弃WebRTC连接 bbb.webrtcWarning.connection.reconnecting = é‡æ–°è¿žæŽ¥å°è¯•ä¸ bbb.webrtcWarning.connection.reestablished = WebRTC连接é‡æ–°å»ºç«‹ -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = 帮助 bbb.mainToolbar.logoutBtn = 退出 bbb.mainToolbar.logoutBtn.toolTip = 登出 -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = 选择è¯è¨€ bbb.mainToolbar.settingsBtn = 设置 bbb.mainToolbar.settingsBtn.toolTip = å¼€å¯é€‰é¡¹ @@ -110,50 +111,50 @@ bbb.mainToolbar.recordBtn.toolTip.start = 开始录制 bbb.mainToolbar.recordBtn.toolTip.stop = åœæ¢å½•åˆ¶ bbb.mainToolbar.recordBtn.toolTip.recording = 该课程已被录制 bbb.mainToolbar.recordBtn.toolTip.notRecording = 该课程没有录制 -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = 确认录制 bbb.mainToolbar.recordBtn.confirm.message.start = 您确定è¦å¼€å§‹å½•åˆ¶è¯¾ç¨‹å—? bbb.mainToolbar.recordBtn.confirm.message.stop = 您确定è¦åœæ¢å½•åˆ¶è¯¾ç¨‹å—? -bbb.mainToolbar.recordBtn..notification.title = 记录通知 -bbb.mainToolbar.recordBtn..notification.message1 = 您å¯ä»¥å½•åˆ¶è¯¥è¯éŸ³ä¼šè¯ -bbb.mainToolbar.recordBtn..notification.message2 = 您需è¦ç‚¹å‡»ä»»åŠ¡æ 上的“开始/åœæ¢å½•åˆ¶â€æ¥å¼€å§‹/åœæ¢å½•åˆ¶ +bbb.mainToolbar.recordBtn.notification.title = 记录通知 +bbb.mainToolbar.recordBtn.notification.message1 = 您å¯ä»¥å½•åˆ¶è¯¥è¯éŸ³ä¼šè¯ +bbb.mainToolbar.recordBtn.notification.message2 = 您需è¦ç‚¹å‡»ä»»åŠ¡æ 上的“开始/åœæ¢å½•åˆ¶â€æ¥å¼€å§‹/åœæ¢å½•åˆ¶ bbb.mainToolbar.recordingLabel.recording = (录制ä¸) bbb.mainToolbar.recordingLabel.notRecording = 没有录制 -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management -bbb.clientstatus.title = Configuration Notifications -bbb.clientstatus.notification = Unread notifications +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = +bbb.clientstatus.title = +bbb.clientstatus.notification = bbb.clientstatus.close = å…³é— bbb.clientstatus.tunneling.title = 防ç«å¢™ -bbb.clientstatus.tunneling.message = A firewall is preventing your client from connecting directly on port 1935 to the remote server. Recommend joining a less restrictive network for a more stable connection +bbb.clientstatus.tunneling.message = bbb.clientstatus.browser.title = æµè§ˆå™¨ç‰ˆæœ¬ -bbb.clientstatus.browser.message = Your browser ({0}) is not up-to-date. Recommend updating to the latest version. +bbb.clientstatus.browser.message = bbb.clientstatus.flash.title = Flashæ’放器 bbb.clientstatus.flash.message = 您的Flashæ’放器æ’件({0}) å·²ç»è¿‡æ—¶ã€‚请更新到最新版本。 bbb.clientstatus.webrtc.title = 音频 -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection -bbb.clientstatus.webrtc.message = Recommend using either Firefox or Chrome for better audio. -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = +bbb.clientstatus.webrtc.message = +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = 最å°åŒ– bbb.window.maximizeRestoreBtn.toolTip = 最大化 bbb.window.closeBtn.toolTip = å…³é— @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = çŠ¶æ€ bbb.users.usersGrid.statusItemRenderer.changePresenter = 点击æ¥è®¾ç½®æ¼”讲者 bbb.users.usersGrid.statusItemRenderer.presenter = 演讲者 bbb.users.usersGrid.statusItemRenderer.moderator = 管ç†è€… -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = æ¸…é™¤çŠ¶æ€ bbb.users.usersGrid.statusItemRenderer.viewer = 观众 bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = æ‘„åƒå¤´å…±äº«ä¸ã€‚ @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = å•å‡»è§£é™¤ç”¨æˆ·é™éŸ³ bbb.users.usersGrid.mediaItemRenderer.pushToMute = å•å‡»å°†ç”¨æˆ·è¯ç’设为é™éŸ³ bbb.users.usersGrid.mediaItemRenderer.pushToLock = é”定 {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = è§£é” {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = 弹出{0} +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = æ‘„åƒå¤´å…±äº« bbb.users.usersGrid.mediaItemRenderer.micOff = å…³é—麦克风 bbb.users.usersGrid.mediaItemRenderer.micOn = 打开麦克风 bbb.users.usersGrid.mediaItemRenderer.noAudio = ä¸åœ¨éŸ³é¢‘ä¼šè®®ä¸ -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = 清除 -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = bbb.users.emojiStatus.thumbsUp = èµžæˆ bbb.users.emojiStatus.thumbsDown = ä¸èµžæˆ -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = 演示 bbb.presentation.titleWithPres = 演示文档:{0} bbb.presentation.quickLink.label = æ¼”ç¤ºçª—å£ bbb.presentation.fitToWidth.toolTip = 按å±å¹•å®½åº¦æ˜¾ç¤ºæ¼”讲稿 bbb.presentation.fitToPage.toolTip = 显示整页演讲稿 bbb.presentation.uploadPresBtn.toolTip = ä¸Šä¼ æ¼”è®² -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = 上一个幻ç¯ç‰‡ bbb.presentation.btnSlideNum.accessibilityName = 第{0}页,共 {1}页 bbb.presentation.btnSlideNum.toolTip = 选择一个幻ç¯ç‰‡ @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = ä¸Šä¼ å®Œæ¯•ã€‚è¯·è€å¿ƒç‰å¾…文件转æ¢ã€‚ bbb.presentation.uploaded = å·²ä¸Šä¼ ã€‚ bbb.presentation.document.supported = 支æŒä¸Šä¼ 文件类型,开始转æ¢... bbb.presentation.document.converted = 办公文件转æ¢æˆåŠŸã€‚ -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO 错误: 请与管ç†å‘˜è”系。 bbb.presentation.error.security = 安全错误: 请与管ç†å‘˜è”系。 bbb.presentation.error.convert.notsupported = é”™è¯¯ï¼šä¸Šä¼ çš„æ–‡ä»¶ä¸æ”¯æŒã€‚è¯·ä¸Šä¼ å¯è¢«æ”¯æŒçš„文件。 @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = ä¸Šä¼ bbb.fileupload.uploadBtn.toolTip = ä¸Šä¼ æ–‡ä»¶ bbb.fileupload.deleteBtn.toolTip = åˆ é™¤æ¼”ç¤ºæ–‡ä»¶ bbb.fileupload.showBtn = 演示 -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = 演示幻ç¯ç‰‡ -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = 生æˆç¼©ç•¥å›¾.. bbb.fileupload.progBarLbl = 进度: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = èŠå¤© bbb.chat.quickLink.label = èŠå¤©çª—å£ bbb.chat.cmpColorPicker.toolTip = èŠå¤©çª—å£æ–‡å—颜色 bbb.chat.input.accessibilityName = èŠå¤©ä¿¡æ¯ç¼–辑区 bbb.chat.sendBtn.toolTip = å‘é€æ¶ˆæ¯ bbb.chat.sendBtn.accessibilityName = å‘é€èŠå¤©ä¿¡æ¯ -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = å¤åˆ¶æ‰€æœ‰æ–‡å— bbb.chat.publicChatUsername = 所有 bbb.chat.optionsTabName = 选择 @@ -327,18 +330,18 @@ bbb.chat.private.userLeft = 该用户已ç»ç¦»å¼€ã€‚ bbb.chat.private.userJoined = 该用户已ç»åŠ 入。 bbb.chat.private.closeMessage = å…³é—æ¤æ ‡ç¾è¯·æŒ‰ç»„åˆé”® {0} bbb.chat.usersList.toolTip = 选择一个用户ç§èŠ -bbb.chat.usersList.accessibilityName = Select user to open private chat. Use the arrow keys to navigate. +bbb.chat.usersList.accessibilityName = bbb.chat.chatOptions = èŠå¤©é€‰é¡¹ bbb.chat.fontSize = 对è¯å—ä½“å¤§å° bbb.chat.cmbFontSize.toolTip = 选择èŠå¤©å—ä½“å’Œå¤§å° -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = 最å°åŒ–èŠå¤©çª—å£ bbb.chat.maximizeRestoreBtn.accessibilityName = 最大化èŠå¤©çª—å£ bbb.chat.closeBtn.accessibilityName = å…³é—èŠå¤©çª—å£ bbb.chat.chatTabs.accessibleNotice = æ¤é€‰é¡¹å¡é‡Œçš„æ–°ä¿¡æ¯ã€‚ bbb.chat.chatMessage.systemMessage = 系统 -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} -bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long +bbb.chat.chatMessage.stringRespresentation = +bbb.chat.chatMessage.tooLong = bbb.publishVideo.changeCameraBtn.labelText = æ›´æ¢æ‘„åƒå¤´ bbb.publishVideo.changeCameraBtn.toolTip = 打开改å˜æ‘„åƒå¤´å¯¹è¯æ¡† bbb.publishVideo.cmbResolution.tooltip = 选择网络摄åƒå¤´åˆ†è¾¨çŽ‡ @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = 开始共享 bbb.publishVideo.startPublishBtn.toolTip = 开始共享 bbb.publishVideo.startPublishBtn.errorName = æ— æ³•å…±äº«æ‘„åƒå¤´ã€‚åŽŸå› ï¼š {0} bbb.webcamPermissions.chrome.title = Chromeæ‘„åƒå¤´å…许 -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = 视频区 bbb.videodock.quickLink.label = è§†é¢‘çª—å£ bbb.video.minimizeBtn.accessibilityName = 最å°åŒ–è§†é¢‘åŒºçª—å£ @@ -366,90 +369,92 @@ bbb.video.publish.hint.publishing = å‘布ä¸... bbb.video.publish.closeBtn.accessName = å…³é—æ‘„åƒå¤´çª—å£ bbb.video.publish.closeBtn.label = å–消 bbb.video.publish.titleBar = å‘布网络摄åƒçª—å£ -bbb.video.streamClose.toolTip = Close stream for: {0} -bbb.screensharePublish.title = Screen Sharing: Presenter's Preview -bbb.screensharePublish.pause.tooltip = Pause screen share -bbb.screensharePublish.pause.label = Pause -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.video.streamClose.toolTip = +bbb.video.message.browserhttp = +bbb.screensharePublish.title = +bbb.screensharePublish.pause.tooltip = +bbb.screensharePublish.pause.label = +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = æ¤çª—å£ä¸èƒ½æœ€å¤§åŒ– bbb.screensharePublish.closeBtn.toolTip = åœæ¢åˆ†äº«å¹¶å…³é— -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = 最å°åŒ– -bbb.screensharePublish.minimizeBtn.accessibilityName = Minimize the Screen Sharing Publish Window -bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing Publish Window -bbb.screensharePublish.commonHelpText.text = The steps below will guide you through starting screen sharing (requires Java). -bbb.screensharePublish.helpButton.toolTip = Help -bbb.screensharePublish.helpButton.accessibilityName = Help (Opens tutorial in a new window) -bbb.screensharePublish.helpText.PCIE1 = 1. Select 'Open' -bbb.screensharePublish.helpText.PCIE2 = 2. Accept the certificate +bbb.screensharePublish.minimizeBtn.accessibilityName = +bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = +bbb.screensharePublish.commonHelpText.text = +bbb.screensharePublish.helpButton.toolTip = +bbb.screensharePublish.helpButton.accessibilityName = +bbb.screensharePublish.helpText.PCIE1 = +bbb.screensharePublish.helpText.PCIE2 = bbb.screensharePublish.helpText.PCIE3 = -bbb.screensharePublish.helpText.PCFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.PCFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCFirefox1 = +bbb.screensharePublish.helpText.PCFirefox2 = bbb.screensharePublish.helpText.PCFirefox3 = -bbb.screensharePublish.helpText.PCChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.PCChrome2 = 2. Click to open -bbb.screensharePublish.helpText.PCChrome3 = 3. Accept the certificate -bbb.screensharePublish.helpText.MacSafari1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacSafari2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacSafari3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacSafari4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacFirefox1 = 1. Choose 'Save File' (if asked) -bbb.screensharePublish.helpText.MacFirefox2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacFirefox3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacFirefox4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.MacChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.MacChrome2 = 2. Select 'Show In Finder' -bbb.screensharePublish.helpText.MacChrome3 = 3. Right-click and select 'Open' -bbb.screensharePublish.helpText.MacChrome4 = 4. Select 'Open' (if prompted) -bbb.screensharePublish.helpText.LinuxFirefox1 = 1. Click 'OK' to run -bbb.screensharePublish.helpText.LinuxFirefox2 = 2. Accept the certificate +bbb.screensharePublish.helpText.PCChrome1 = +bbb.screensharePublish.helpText.PCChrome2 = +bbb.screensharePublish.helpText.PCChrome3 = +bbb.screensharePublish.helpText.MacSafari1 = +bbb.screensharePublish.helpText.MacSafari2 = +bbb.screensharePublish.helpText.MacSafari3 = +bbb.screensharePublish.helpText.MacSafari4 = +bbb.screensharePublish.helpText.MacFirefox1 = +bbb.screensharePublish.helpText.MacFirefox2 = +bbb.screensharePublish.helpText.MacFirefox3 = +bbb.screensharePublish.helpText.MacFirefox4 = +bbb.screensharePublish.helpText.MacChrome1 = +bbb.screensharePublish.helpText.MacChrome2 = +bbb.screensharePublish.helpText.MacChrome3 = +bbb.screensharePublish.helpText.MacChrome4 = +bbb.screensharePublish.helpText.LinuxFirefox1 = +bbb.screensharePublish.helpText.LinuxFirefox2 = bbb.screensharePublish.helpText.LinuxFirefox3 = -bbb.screensharePublish.helpText.LinuxChrome1 = 1. Locate 'screenshare.jnlp' -bbb.screensharePublish.helpText.LinuxChrome2 = 2. Click to open -bbb.screensharePublish.helpText.LinuxChrome3 = 3. Accept the certificate -bbb.screensharePublish.shareTypeLabel.text = Share: -bbb.screensharePublish.shareType.fullScreen = Full screen -bbb.screensharePublish.shareType.region = Region -bbb.screensharePublish.pauseMessage.label = Screen sharing is currently paused. -bbb.screensharePublish.startFailed.label = Did not detect start of screen sharing. -bbb.screensharePublish.restartFailed.label = Did not detect restart of screen sharing. -bbb.screensharePublish.jwsCrashed.label = The screen sharing application closed unexpectedly. -bbb.screensharePublish.commonErrorMessage.label = Select 'Cancel' and try again. -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. -bbb.screensharePublish.cancelButton.label = Cancel -bbb.screensharePublish.startButton.label = Start -bbb.screensharePublish.stopButton.label = Stop -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared -bbb.screenshareView.title = Screen Sharing -bbb.screenshareView.fitToWindow = Fit to Window -bbb.screenshareView.actualSize = Display actual size -bbb.screenshareView.minimizeBtn.accessibilityName = Minimize the Screen Sharing View Window -bbb.screenshareView.maximizeRestoreBtn.accessibilityName = Maximize the Screen Sharing View Window -bbb.screenshareView.closeBtn.accessibilityName = Close the Screen Sharing View Window -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.screensharePublish.helpText.LinuxChrome1 = +bbb.screensharePublish.helpText.LinuxChrome2 = +bbb.screensharePublish.helpText.LinuxChrome3 = +bbb.screensharePublish.shareTypeLabel.text = +bbb.screensharePublish.shareType.fullScreen = +bbb.screensharePublish.shareType.region = +bbb.screensharePublish.pauseMessage.label = +bbb.screensharePublish.startFailed.label = +bbb.screensharePublish.restartFailed.label = +bbb.screensharePublish.jwsCrashed.label = +bbb.screensharePublish.commonErrorMessage.label = +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = +bbb.screensharePublish.cancelButton.label = +bbb.screensharePublish.startButton.label = +bbb.screensharePublish.stopButton.label = +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= +bbb.screenshareView.title = +bbb.screenshareView.fitToWindow = +bbb.screenshareView.actualSize = +bbb.screenshareView.minimizeBtn.accessibilityName = +bbb.screenshareView.maximizeRestoreBtn.accessibilityName = +bbb.screenshareView.closeBtn.accessibilityName = +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = åœæ¢å¬å–è¯¥ä¼šè¯ bbb.toolbar.phone.toolTip.unmute = 开始å¬å–è¯¥ä¼šè¯ bbb.toolbar.phone.toolTip.nomic = 没有检测到麦克风 -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window -bbb.toolbar.deskshare.toolTip.stop = Stop Sharing Your Screen -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.deskshare.toolTip.start = +bbb.toolbar.deskshare.toolTip.stop = +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = 分享摄åƒå¤´ bbb.toolbar.video.toolTip.stop = åœæ¢åˆ†äº«æ‘„åƒå¤´ +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = å°†è‡ªå®šä¹‰å¸ƒå±€åŠ å…¥åˆ°åˆ—è¡¨ -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = 改å˜æ‚¨çš„页é¢å¸ƒå±€ bbb.layout.loadButton.toolTip = 从文件打开布局 bbb.layout.saveButton.toolTip = 将布局ä¿å˜ä¸ºæ–‡ä»¶ @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = 应用布局 bbb.layout.combo.custom = * 自定义布局 bbb.layout.combo.customName = 自定义布局 bbb.layout.combo.remote = 远程 -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = 布局ä¿å˜æˆåŠŸ +bbb.layout.save.ioerror = bbb.layout.load.complete = 布局æˆåŠŸè½½å…¥ bbb.layout.load.failed = æ— æ³•åŠ è½½è¯¥å¸ƒå±€ -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = 默认布局 -bbb.layout.name.closedcaption = Closed Caption +bbb.layout.name.closedcaption = bbb.layout.name.videochat = è§†é¢‘ä¼šè¯ bbb.layout.name.webcamsfocus = 视频会议 bbb.layout.name.presentfocus = æ¼”ç¤ºç¨¿ä¼šè¯ -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = 演讲助手 bbb.layout.name.lecture = 演讲 -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = 铅笔 bbb.highlighter.toolbar.pencil.accessibilityName = 切æ¢ç™½æ¿å…‰æ ‡ä¸ºé“…笔 bbb.highlighter.toolbar.ellipse = 圆 @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = 选择颜色 bbb.highlighter.toolbar.color.accessibilityName = 白æ¿ç”»ç¬”颜色 bbb.highlighter.toolbar.thickness = 修改线æ¡ç²—细 bbb.highlighter.toolbar.thickness.accessibilityName = 改å˜ç™½æ¿å…‰æ ‡ç»˜ç”»çº¿æ¡ç²—细 -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = 已退出 +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = OK bbb.logout.appshutdown = æœåŠ¡å™¨åº”ç”¨å·²è¢«å…³é— bbb.logout.asyncerror = åŒæ¥é”™è¯¯ @@ -502,24 +509,26 @@ bbb.logout.connectionfailed = 连接æœåŠ¡å™¨å·²ç»ç»“æŸ bbb.logout.rejected = æœåŠ¡å™¨è¿žæŽ¥è¢«æ‹’ç» bbb.logout.invalidapp = Red5 应用ä¸å˜åœ¨ bbb.logout.unknown = 您已掉线 -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = 您已从会议ä¸ç™»å‡º -bbb.logour.breakoutRoomClose = Your browser window will be closed -bbb.logout.ejectedFromMeeting = A moderator has kicked you out of the meeting. +bbb.logour.breakoutRoomClose = +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = 如果æ„外登出,请点击下é¢æŒ‰é’®é‡æ–°è¿žæŽ¥ bbb.logout.refresh.label = é‡æ–°è¿žæŽ¥ -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = 确认退出 bbb.logout.confirm.message = ä½ ç¡®å®šè¦é€€å‡ºå—? -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = 是的 bbb.logout.confirm.no = ä¸æ˜¯ -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? -bbb.connection.failure=Detected Connectivity Problems +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = +bbb.connection.failure= bbb.connection.reconnecting=é‡æ–°è¿žæŽ¥ä¸ bbb.connection.reestablished=é‡æ–°è¿žæŽ¥ bbb.connection.bigbluebutton=BigBlueButton @@ -530,59 +539,60 @@ bbb.notes.title = 笔记 bbb.notes.cmpColorPicker.toolTip = æ–‡å—颜色 bbb.notes.saveBtn = ä¿å˜ bbb.notes.saveBtn.toolTip = ä¿å˜ç¬”è®° -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = 在弹出窗å£ä¸ç‚¹å‡»åŒæ„检查桌é¢å…±äº«ç¨‹åºå·¥ä½œæ˜¯å¦æ£å¸¸ bbb.settings.deskshare.start = 检查桌é¢å…±äº« bbb.settings.voice.volume = éº¦å…‹é£ŽçŠ¶æ€ -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash 版本错误 bbb.settings.flash.text = 您安装的 Flash 为 {0} ,BigBlueButton éœ€è¦ {1} 以上版本æ‰èƒ½æ£å¸¸è¿è¡Œã€‚点击下é¢çš„链接安装最新的 Flash Player bbb.settings.flash.command = 安装最新 Flash bbb.settings.isight.label = iSight æ‘„åƒå¤´é”™è¯¯ -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = 安装 Flash 10.2 RC2 bbb.settings.warning.label = è¦å‘Š bbb.settings.warning.close = å…³é—è¦å‘Š bbb.settings.noissues = 没有检测到明显的问题。 bbb.settings.instructions = 在弹出的 Flash 设置对è¯æ¡†ä¸â€œæŽ¥å—†Flash 使用您的摄åƒå¤´ã€‚若您能够看到和å¬åˆ°è‡ªå·±ï¼Œè¯´æ˜Žæµè§ˆå™¨å·²è®¾ç½®æ£ç¡®ã€‚其他å¯èƒ½å˜åœ¨çš„问题显示如下。ä¾æ¬¡ç‚¹å‡»ä»¥æ‰¾åˆ°å¯è¡Œçš„解决方案。 -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = 三角形 ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = 切æ¢ç™½æ¿å…‰æ ‡ä¸ºä¸‰è§’å½¢ ltbcustom.bbb.highlighter.toolbar.line = 直线 @@ -591,31 +601,31 @@ ltbcustom.bbb.highlighter.toolbar.text = æ–‡å— ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = 切æ¢ç™½æ¿å…‰æ ‡ä¸ºæ–‡å— ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = æ–‡å—颜色 ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = å—ä½“å¤§å° -bbb.caption.window.title = Closed Caption -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar -bbb.caption.window.minimizeBtn.accessibilityName = Minimize the Closed Caption Window -bbb.caption.window.maximizeRestoreBtn.accessibilityName = Maximize the Closed Caption Window -bbb.caption.transcript.noowner = None -bbb.caption.transcript.youowner = You -bbb.caption.transcript.pastewarning.title = Caption Paste Warning -bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area -bbb.caption.option.label = Options -bbb.caption.option.language = Language: -bbb.caption.option.language.tooltip = Select Caption Language -bbb.caption.option.language.accessibilityName = Select caption language. Use the arrow keys to navigate. -bbb.caption.option.takeowner = Take Ownership -bbb.caption.option.takeowner.tooltip = Take Ownership of Selected Language -bbb.caption.option.fontfamily = Font Family: -bbb.caption.option.fontfamily.tooltip = Font Family -bbb.caption.option.fontsize = Font Size: -bbb.caption.option.fontsize.tooltip = Font Size -bbb.caption.option.backcolor = Background Color: -bbb.caption.option.backcolor.tooltip = Background Color -bbb.caption.option.textcolor = Text Color: -bbb.caption.option.textcolor.tooltip = Text Color +bbb.caption.window.title = +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = +bbb.caption.window.minimizeBtn.accessibilityName = +bbb.caption.window.maximizeRestoreBtn.accessibilityName = +bbb.caption.transcript.noowner = +bbb.caption.transcript.youowner = +bbb.caption.transcript.pastewarning.title = +bbb.caption.transcript.pastewarning.text = +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = +bbb.caption.option.label = +bbb.caption.option.language = +bbb.caption.option.language.tooltip = +bbb.caption.option.language.accessibilityName = +bbb.caption.option.takeowner = +bbb.caption.option.takeowner.tooltip = +bbb.caption.option.fontfamily = +bbb.caption.option.fontfamily.tooltip = +bbb.caption.option.fontsize = +bbb.caption.option.fontsize.tooltip = +bbb.caption.option.backcolor = +bbb.caption.option.backcolor.tooltip = +bbb.caption.option.textcolor = +bbb.caption.option.textcolor.tooltip = bbb.accessibility.clientReady = 准备 @@ -626,24 +636,24 @@ bbb.accessibility.chat.chatBox.navigatedFirst = 您已ç»æµè§ˆåˆ°ç¬¬ä¸€æ¡ä¿¡ bbb.accessibility.chat.chatBox.navigatedLatest = 您已ç»æµè§ˆåˆ°æœ€åŽä¸€æ¡ä¿¡æ¯ bbb.accessibility.chat.chatBox.navigatedLatestRead = 您已ç»æµè§ˆåˆ°æ‚¨æœ€è¿‘一æ¡è¯»è¿‡çš„ä¿¡æ¯ bbb.accessibility.chat.chatwindow.input = èŠå¤©è¾“å…¥ -bbb.accessibility.chat.chatwindow.audibleChatNotification = Audible Chat Notification -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.audibleChatNotification = +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = 请使用ç®å¤´é”®æµè§ˆèŠå¤©ä¿¡æ¯ bbb.accessibility.notes.notesview.input = 注解输入 bbb.shortcuthelp.title = å¿«æ·é”® -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = 最å°åŒ–å¿«æ·é”®çª—å£ bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = 最大化快æ·é”®çª—å£ bbb.shortcuthelp.closeBtn.accessibilityName = å…³é—å¿«æ·é”®çª—å£ -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = 通用快æ·é”® bbb.shortcuthelp.dropdown.presentation = 演示快æ·é”® bbb.shortcuthelp.dropdown.chat = èŠå¤©å¿«æ·é”® bbb.shortcuthelp.dropdown.users = 用户快æ·é”® -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = å¿«æ·é”® bbb.shortcuthelp.headers.function = 功能 @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = å°†ç„¦ç‚¹ç§»åˆ°æ¼”ç¤ºçª—å£ bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = 将焦点移到èŠå¤©çª—å£ -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = 打开桌é¢å…±äº«çª—å£ @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = 登出本次会议 bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = 举手 -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = ä¸Šä¼ æ¼”ç¤ºæ–‡æ¡£ bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = 转到上一页幻ç¯ç‰‡ @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = è½¬åˆ°ä¸‹ä¸€å¼ å¹»ç¯ç‰‡ bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = 调整幻ç¯ç‰‡åˆ°åˆé€‚宽度 -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = 调整幻ç¯ç‰‡åˆ°é¡µé¢å®½åº¦ -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = 指定被选人为演讲者 -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = 将被选人踢出会议 +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = 将被选人的è¯ç’设为é™éŸ³æˆ–者解除é™éŸ³ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = 将所有人的è¯ç’设为é™éŸ³æˆ–者解除é™éŸ³ bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = é™éŸ³æ¼”讲者外所有è¯ç’ -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = 焦点集ä¸åˆ°èŠå¤©æ 上 -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = 焦点集ä¸åˆ°æ–‡å—颜色选择 bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = æµè§ˆåˆ°æ‚¨æœ€è¿‘è¯»è¿‡çš„ä¿¡æ¯ bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = 临时调试快æ·é”® -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = å‘起一个投票 bbb.polling.startButton.label = å‘起投票 bbb.polling.publishButton.label = å‘布 bbb.polling.closeButton.label = å…³é— -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = 投票实时结果 +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = 输入投票选项 bbb.polling.respondersLabel.novotes = ç‰å¾…å馈 bbb.polling.respondersLabel.text = 用户{0} å·²ç»æ交 @@ -771,7 +782,7 @@ bbb.polling.answer.E = E bbb.polling.answer.F = F bbb.polling.answer.G = G bbb.polling.results.accessible.header = 投票结果。 -bbb.polling.results.accessible.answer = Answer {0} had {1} votes. +bbb.polling.results.accessible.answer = bbb.publishVideo.startPublishBtn.labelText = 开始共享 bbb.publishVideo.changeCameraBtn.labelText = æ›´æ¢æ‘„åƒå¤´ @@ -791,8 +802,8 @@ bbb.toolbar.videodock.toolTip.closeAllVideos = å…³é—所有视频 bbb.users.settings.lockAll = é”定所有用户 bbb.users.settings.lockAllExcept = é”定除演示者外的所有用户 bbb.users.settings.lockSettings = é”定æµè§ˆç”¨æˆ· -bbb.users.settings.breakoutRooms = Breakout Rooms ... -bbb.users.settings.sendBreakoutRoomsInvitations = Send Breakout Rooms Invitations ... +bbb.users.settings.breakoutRooms = +bbb.users.settings.sendBreakoutRoomsInvitations = bbb.users.settings.unlockAll = 解é”所有æµè§ˆç”¨æˆ· bbb.users.settings.roomIsLocked = 默认é”定 bbb.users.settings.roomIsMuted = 默认é™éŸ³ @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = 应用é”定设置 bbb.lockSettings.cancel = å–消 bbb.lockSettings.cancel.toolTip = ä¸ä¿å˜å¹¶å…³é—è¯¥çª—å£ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = 强制é”定 bbb.lockSettings.privateChat = ç§èŠ bbb.lockSettings.publicChat = 公共èŠå¤© bbb.lockSettings.webcam = æ‘„åƒå¤´ +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = 麦克风 bbb.lockSettings.layout = 页é¢å¸ƒå±€ bbb.lockSettings.title=é”定æµè§ˆç”¨æˆ· @@ -813,91 +826,46 @@ bbb.lockSettings.feature=特点 bbb.lockSettings.locked=å·²é”定 bbb.lockSettings.lockOnJoin=é”å®šåŠ å…¥ -bbb.users.breakout.breakoutRooms = Breakout Rooms -bbb.users.breakout.updateBreakoutRooms = Update Breakout Rooms -bbb.users.breakout.timer.toolTip = Time left for breakout rooms -bbb.users.breakout.calculatingRemainingTime = Calculating remaining time... -bbb.users.breakout.closing = Closing -bbb.users.breakout.rooms = Rooms -bbb.users.breakout.roomsCombo.accessibilityName = Number of rooms to create -bbb.users.breakout.room = Room -bbb.users.breakout.randomAssign = Randomly Assign Users -bbb.users.breakout.timeLimit = Time Limit -bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes -bbb.users.breakout.minutes = Minutes -bbb.users.breakout.record = Record -bbb.users.breakout.recordCheckbox.accessibilityName = Record breakout rooms -bbb.users.breakout.notAssigned = Not Assigned -bbb.users.breakout.dragAndDropToolTip = Tip: You can drag and drop users between rooms -bbb.users.breakout.start = Start -bbb.users.breakout.invite = Invite +bbb.users.breakout.breakoutRooms = +bbb.users.breakout.updateBreakoutRooms = +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = +bbb.users.breakout.calculatingRemainingTime = +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = +bbb.users.breakout.rooms = +bbb.users.breakout.roomsCombo.accessibilityName = +bbb.users.breakout.room = +bbb.users.breakout.timeLimit = +bbb.users.breakout.durationStepper.accessibilityName = +bbb.users.breakout.minutes = +bbb.users.breakout.record = +bbb.users.breakout.recordCheckbox.accessibilityName = +bbb.users.breakout.notAssigned = +bbb.users.breakout.dragAndDropToolTip = +bbb.users.breakout.start = +bbb.users.breakout.invite = bbb.users.breakout.close = å…³é— -bbb.users.breakout.closeAllRooms = Close All Breakout Rooms -bbb.users.breakout.insufficientUsers = Insufficient users. You should place at least one user in one breakout room. -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} -bbb.users.roomsGrid.room = Room -bbb.users.roomsGrid.users = Users -bbb.users.roomsGrid.action = Action -bbb.users.roomsGrid.transfer = Transfer Audio -bbb.users.roomsGrid.join = Join -bbb.users.roomsGrid.noUsers = No users is this room +bbb.users.breakout.closeAllRooms = +bbb.users.breakout.insufficientUsers = +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = +bbb.users.roomsGrid.room = +bbb.users.roomsGrid.users = +bbb.users.roomsGrid.action = +bbb.users.roomsGrid.transfer = +bbb.users.roomsGrid.join = +bbb.users.roomsGrid.noUsers = -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/locale/zh_TW/bbbResources.properties b/bigbluebutton-client/locale/zh_TW/bbbResources.properties index 1db7f5d3e27d087bddaf2f25c729b1067e58a58d..f5b1daa07fccc3a76c03a6f3939f6b4c8e2f0e56 100644 --- a/bigbluebutton-client/locale/zh_TW/bbbResources.properties +++ b/bigbluebutton-client/locale/zh_TW/bbbResources.properties @@ -1,25 +1,25 @@ bbb.mainshell.locale.version = 0.9.0 bbb.mainshell.statusProgress.connecting = æ£åœ¨é€£æŽ¥åˆ°ä¼ºæœå™¨ -bbb.mainshell.statusProgress.loading = Loading +bbb.mainshell.statusProgress.loading = bbb.mainshell.statusProgress.cannotConnectServer = 抱æ‰ï¼Œç„¡æ³•é€£æŽ¥åˆ°ä¼ºæœå™¨. -bbb.mainshell.copyrightLabel2 = (c) 2017 <a href='event:http://www.bigbluebutton.org/' target='_blank'><u>BigBlueButton Inc.</u></a> (build {0}) +bbb.mainshell.copyrightLabel2 = bbb.mainshell.logBtn.toolTip = 打開日誌 bbb.mainshell.meetingNotFound = 沒有會è°é€²è¡Œä¸ bbb.mainshell.invalidAuthToken = 無效的授權代碼 bbb.mainshell.resetLayoutBtn.toolTip = é‡æ–°è¨å®šç‰ˆé¢ bbb.mainshell.notification.tunnelling = é€šé“ bbb.mainshell.notification.webrtc = WebRTC 音效 -bbb.mainshell.fullscreenBtn.toolTip = Toggle full screen -bbb.mainshell.quote.sentence.1 = There are no secrets to success. It is the result of preparation, hard work, and learning from failure. -bbb.mainshell.quote.attribution.1 = Colin Powell -bbb.mainshell.quote.sentence.2 = Tell me and I forget. Teach me and I remember. Involve me and I learn. -bbb.mainshell.quote.attribution.2 = Benjamin Franklin -bbb.mainshell.quote.sentence.3 = I learned the value of hard work by working hard. -bbb.mainshell.quote.attribution.3 = Margaret Mead -bbb.mainshell.quote.sentence.4 = Develop a passion for learning. If you do, you will never cease to grow. -bbb.mainshell.quote.attribution.4 = Anthony J. D'Angelo -bbb.mainshell.quote.sentence.5 = Research is creating new knowledge. -bbb.mainshell.quote.attribution.5 = Neil Armstrong +bbb.mainshell.fullscreenBtn.toolTip = +bbb.mainshell.quote.sentence.1 = +bbb.mainshell.quote.attribution.1 = +bbb.mainshell.quote.sentence.2 = +bbb.mainshell.quote.attribution.2 = +bbb.mainshell.quote.sentence.3 = +bbb.mainshell.quote.attribution.3 = +bbb.mainshell.quote.sentence.4 = +bbb.mainshell.quote.attribution.4 = +bbb.mainshell.quote.sentence.5 = +bbb.mainshell.quote.attribution.5 = bbb.oldlocalewindow.reminder1 = 您å¯èƒ½æ£åœ¨ä½¿ç”¨èˆŠç‰ˆçš„BigBlueButton語言翻è¯. bbb.oldlocalewindow.reminder2 = 請清除ç€è¦½å™¨çš„æš«å˜è³‡æ–™å¾Œå†è©¦è©¦çœ‹ã€‚ bbb.oldlocalewindow.windowTitle = è¦å‘Š: èˆŠç‰ˆçš„èªžè¨€ç¿»è¯ @@ -66,10 +66,11 @@ bbb.micSettings.webrtc.waitingforice = é€£ç·šä¸ bbb.micSettings.webrtc.transferring = 轉æ›ä¸ bbb.micSettings.webrtc.endingecho = åŠ å…¥éŸ³è¨Š bbb.micSettings.webrtc.endedecho = è²éŸ³æ¸¬è©¦çµæŸ +bbb.micPermissions.message.browserhttp = bbb.micPermissions.firefox.title = 授權使用Firefox麥克風 -bbb.micPermissions.firefox.message = Click Allow to give Firefox permission to use your microphone. +bbb.micPermissions.firefox.message = bbb.micPermissions.chrome.title = 授權使用Chrome麥克風 -bbb.micPermissions.chrome.message = Click Allow to give Chrome permission to use your microphone. +bbb.micPermissions.chrome.message = bbb.micWarning.title = 語音è¦ç¤º bbb.micWarning.joinBtn.label = 逕行進入 bbb.micWarning.testAgain.label = å†è©¦ä¸€æ¬¡ @@ -93,14 +94,14 @@ bbb.webrtcWarning.failedError.endedunexpectedly = WebRTC çš„è²éŸ³æ¸¬è©¦ä¸æ£ bbb.webrtcWarning.connection.dropped = WebRTC 連線ä¸æ–· bbb.webrtcWarning.connection.reconnecting = 嘗試é‡å•Ÿé€£ç·š bbb.webrtcWarning.connection.reestablished = WebRTC é‡æ–°é€£ç·š -bbb.inactivityWarning.title = No activity detected -bbb.inactivityWarning.message = This meeting seems to be inactive. Automatically shutting it down... -bbb.shuttingDown.message = This meeting is being closed due to inactivity -bbb.inactivityWarning.cancel = Cancel +bbb.inactivityWarning.title = +bbb.inactivityWarning.message = +bbb.shuttingDown.message = +bbb.inactivityWarning.cancel = bbb.mainToolbar.helpBtn = 幫助 bbb.mainToolbar.logoutBtn = 離開 bbb.mainToolbar.logoutBtn.toolTip = 離開 -bbb.mainToolbar.idleLogoutBtn = {0} | Reset Logout Timer +bbb.mainToolbar.idleLogoutBtn = bbb.mainToolbar.langSelector = é¸æ“‡èªžè¨€ bbb.mainToolbar.settingsBtn = é¸é … bbb.mainToolbar.settingsBtn.toolTip = é–‹å•Ÿé¸é … @@ -110,31 +111,31 @@ bbb.mainToolbar.recordBtn.toolTip.start = 開始錄製 bbb.mainToolbar.recordBtn.toolTip.stop = åœæ¢éŒ„製 bbb.mainToolbar.recordBtn.toolTip.recording = 會è°éŒ„è£½ä¸ bbb.mainToolbar.recordBtn.toolTip.notRecording = 沒有會è°éŒ„è£½ä¸ -bbb.mainToolbar.recordBtn.toolTip.onlyModerators = Only moderators can start and stop recordings -bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = This recording can't be interrupted -bbb.mainToolbar.recordBtn.toolTip.wontRecord = This session cannot be recorded +bbb.mainToolbar.recordBtn.toolTip.onlyModerators = +bbb.mainToolbar.recordBtn.toolTip.wontInterrupt = +bbb.mainToolbar.recordBtn.toolTip.wontRecord = bbb.mainToolbar.recordBtn.confirm.title = 確èªéŒ„製狀態 bbb.mainToolbar.recordBtn.confirm.message.start = 確定è¦é–‹å§‹éŒ„影嗎? bbb.mainToolbar.recordBtn.confirm.message.stop = 確定è¦åœæ¢éŒ„影嗎? -bbb.mainToolbar.recordBtn..notification.title = 錄影通知 -bbb.mainToolbar.recordBtn..notification.message1 = ä½ å¯ä»¥éŒ„製æ¤æœƒè° -bbb.mainToolbar.recordBtn..notification.message2 = ä½ å¿…é ˆé»žé¸æ¨™é¡Œæ¬„上的 開始/åœæ¢ 錄製éµä»¥é–‹å§‹æˆ–åœæ¢éŒ„製。 +bbb.mainToolbar.recordBtn.notification.title = 錄影通知 +bbb.mainToolbar.recordBtn.notification.message1 = ä½ å¯ä»¥éŒ„製æ¤æœƒè° +bbb.mainToolbar.recordBtn.notification.message2 = ä½ å¿…é ˆé»žé¸æ¨™é¡Œæ¬„上的 開始/åœæ¢ 錄製éµä»¥é–‹å§‹æˆ–åœæ¢éŒ„製。 bbb.mainToolbar.recordingLabel.recording = éŒ„è£½ä¸ bbb.mainToolbar.recordingLabel.notRecording = åœæ¢éŒ„製 -bbb.waitWindow.waitMessage.message = You are a guest, please wait moderator approval. -bbb.waitWindow.waitMessage.title = Waiting -bbb.guests.title = Guests -bbb.guests.message.singular = {0} user wants to join this meeting -bbb.guests.message.plural = {0} users want to join this meeting -bbb.guests.allowBtn.toolTip = Allow -bbb.guests.allowEveryoneBtn.text = Allow everyone -bbb.guests.denyBtn.toolTip = Deny -bbb.guests.denyEveryoneBtn.text = Deny everyone -bbb.guests.rememberAction.text = Remember choice -bbb.guests.alwaysAccept = Always accept -bbb.guests.alwaysDeny = Always deny -bbb.guests.askModerator = Ask moderator -bbb.guests.Management = Guest management +bbb.waitWindow.waitMessage.message = +bbb.waitWindow.waitMessage.title = +bbb.guests.title = +bbb.guests.message.singular = +bbb.guests.message.plural = +bbb.guests.allowBtn.toolTip = +bbb.guests.allowEveryoneBtn.text = +bbb.guests.denyBtn.toolTip = +bbb.guests.denyEveryoneBtn.text = +bbb.guests.rememberAction.text = +bbb.guests.alwaysAccept = +bbb.guests.alwaysDeny = +bbb.guests.askModerator = +bbb.guests.Management = bbb.clientstatus.title = 組態通知 bbb.clientstatus.notification = 未讀å–通知 bbb.clientstatus.close = 關閉 @@ -145,15 +146,15 @@ bbb.clientstatus.browser.message = ä½ çš„ç€è¦½å™¨ ({0}) 未更新,建è°æ›´ bbb.clientstatus.flash.title = Flash 撥放器 bbb.clientstatus.flash.message = ä½ çš„Flash 撥放器外掛 ({0}) éŽæœŸï¼Œå»ºè°æ›´æ–°åˆ°æœ€æ–°ç‰ˆæœ¬ã€‚ bbb.clientstatus.webrtc.title = 音效 -bbb.clientstatus.webrtc.strongStatus = Your WebRTC audio connection is great -bbb.clientstatus.webrtc.almostStrongStatus = Your WebRTC audio connection is fine -bbb.clientstatus.webrtc.almostWeakStatus = Your WebRTC audio connection is bad -bbb.clientstatus.webrtc.weakStatus = Maybe there is a problem with your WebRTC audio connection +bbb.clientstatus.webrtc.strongStatus = +bbb.clientstatus.webrtc.almostStrongStatus = +bbb.clientstatus.webrtc.almostWeakStatus = +bbb.clientstatus.webrtc.weakStatus = bbb.clientstatus.webrtc.message = 建è°ä½¿ç”¨ Firefox 或 Chrome 得著最好的音效å“質。 -bbb.clientstatus.java.title = Java -bbb.clientstatus.java.notdetected = Java version not detected. -bbb.clientstatus.java.notinstalled = You have no Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. -bbb.clientstatus.java.oldversion = You have an old Java installed, please click <font color='#0a4a7a'><a href='http://www.java.com/download/' target='_blank'>HERE</a></font> to install the latest Java to use the desktop sharing feature. +bbb.clientstatus.java.title = +bbb.clientstatus.java.notdetected = +bbb.clientstatus.java.notinstalled = +bbb.clientstatus.java.oldversion = bbb.window.minimizeBtn.toolTip = 最å°åŒ– bbb.window.maximizeRestoreBtn.toolTip = 最大化 bbb.window.closeBtn.toolTip = 關閉 @@ -188,20 +189,20 @@ bbb.users.usersGrid.statusItemRenderer = 狀態 bbb.users.usersGrid.statusItemRenderer.changePresenter = 點é¸æŒ‡å®šæ¼”講人 bbb.users.usersGrid.statusItemRenderer.presenter = 演講人 bbb.users.usersGrid.statusItemRenderer.moderator = 管ç†å“¡ -bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = Voice Only -bbb.users.usersGrid.statusItemRenderer.raiseHand = Hand Raised -bbb.users.usersGrid.statusItemRenderer.applause = Applause -bbb.users.usersGrid.statusItemRenderer.thumbsUp = Thumbs up -bbb.users.usersGrid.statusItemRenderer.thumbsDown = Thubms down -bbb.users.usersGrid.statusItemRenderer.speakLouder = Speak louder -bbb.users.usersGrid.statusItemRenderer.speakSofter = Speak softer -bbb.users.usersGrid.statusItemRenderer.speakFaster = Speak faster -bbb.users.usersGrid.statusItemRenderer.speakSlower = Speak slower -bbb.users.usersGrid.statusItemRenderer.away = Away -bbb.users.usersGrid.statusItemRenderer.confused = Confused -bbb.users.usersGrid.statusItemRenderer.neutral = Neutral -bbb.users.usersGrid.statusItemRenderer.happy = Happy -bbb.users.usersGrid.statusItemRenderer.sad = Sad +bbb.users.usersGrid.statusItemRenderer.voiceOnlyUser = +bbb.users.usersGrid.statusItemRenderer.raiseHand = +bbb.users.usersGrid.statusItemRenderer.applause = +bbb.users.usersGrid.statusItemRenderer.thumbsUp = +bbb.users.usersGrid.statusItemRenderer.thumbsDown = +bbb.users.usersGrid.statusItemRenderer.speakLouder = +bbb.users.usersGrid.statusItemRenderer.speakSofter = +bbb.users.usersGrid.statusItemRenderer.speakFaster = +bbb.users.usersGrid.statusItemRenderer.speakSlower = +bbb.users.usersGrid.statusItemRenderer.away = +bbb.users.usersGrid.statusItemRenderer.confused = +bbb.users.usersGrid.statusItemRenderer.neutral = +bbb.users.usersGrid.statusItemRenderer.happy = +bbb.users.usersGrid.statusItemRenderer.sad = bbb.users.usersGrid.statusItemRenderer.clearStatus = 清除狀態 bbb.users.usersGrid.statusItemRenderer.viewer = 觀看人 bbb.users.usersGrid.statusItemRenderer.streamIcon.toolTip = 分享æ”影視訊 @@ -214,38 +215,39 @@ bbb.users.usersGrid.mediaItemRenderer.pushToTalk = 點擊å–消用戶éœéŸ³ bbb.users.usersGrid.mediaItemRenderer.pushToMute = 點擊將用戶éœéŸ³ bbb.users.usersGrid.mediaItemRenderer.pushToLock = éŽ–ä½ {0} bbb.users.usersGrid.mediaItemRenderer.pushToUnlock = 解鎖 {0} -bbb.users.usersGrid.mediaItemRenderer.kickUser = 將用戶踢出會è°å®¤ +bbb.users.usersGrid.mediaItemRenderer.kickUser = bbb.users.usersGrid.mediaItemRenderer.webcam = æ”åƒé 已共享 bbb.users.usersGrid.mediaItemRenderer.micOff = 關閉麥克風 bbb.users.usersGrid.mediaItemRenderer.micOn = 打開麥克風 bbb.users.usersGrid.mediaItemRenderer.noAudio = ä¸åœ¨èªžéŸ³æœƒè°ä¸ -bbb.users.usersGrid.mediaItemRenderer.promoteUser = Promote {0} to moderator -bbb.users.usersGrid.mediaItemRenderer.demoteUser = Demote {0} to viewer +bbb.users.usersGrid.mediaItemRenderer.promoteUser = +bbb.users.usersGrid.mediaItemRenderer.demoteUser = bbb.users.emojiStatus.clear = 清除 -bbb.users.emojiStatus.raiseHand = Raise hand -bbb.users.emojiStatus.happy = Happy -bbb.users.emojiStatus.neutral = Neutral -bbb.users.emojiStatus.sad = Sad -bbb.users.emojiStatus.confused = Confused -bbb.users.emojiStatus.away = Away -bbb.users.emojiStatus.thumbsUp = Thumbs Up -bbb.users.emojiStatus.thumbsDown = Thumbs Down -bbb.users.emojiStatus.applause = Applause -bbb.users.emojiStatus.agree = I agree -bbb.users.emojiStatus.disagree = I disagree -bbb.users.emojiStatus.none = Clear -bbb.users.emojiStatus.speakLouder = Could you please speak louder? -bbb.users.emojiStatus.speakSofter = Could you please speak softer? -bbb.users.emojiStatus.speakFaster = Could you please speak faster? -bbb.users.emojiStatus.speakSlower = Could you please speak slower? -bbb.users.emojiStatus.beRightBack = I'll be right back +bbb.users.emojiStatus.raiseHand = +bbb.users.emojiStatus.happy = +bbb.users.emojiStatus.neutral = +bbb.users.emojiStatus.sad = +bbb.users.emojiStatus.confused = +bbb.users.emojiStatus.away = +bbb.users.emojiStatus.thumbsUp = +bbb.users.emojiStatus.thumbsDown = +bbb.users.emojiStatus.applause = +bbb.users.emojiStatus.agree = +bbb.users.emojiStatus.disagree = +bbb.users.emojiStatus.none = +bbb.users.emojiStatus.speakLouder = +bbb.users.emojiStatus.speakSofter = +bbb.users.emojiStatus.speakFaster = +bbb.users.emojiStatus.speakSlower = +bbb.users.emojiStatus.beRightBack = bbb.presentation.title = ç°¡å ± bbb.presentation.titleWithPres = 投影片: {0} bbb.presentation.quickLink.label = 投影片視窗 bbb.presentation.fitToWidth.toolTip = 調整æˆæŠ•å½±ç‰‡å¯¬ bbb.presentation.fitToPage.toolTip = 調整æˆæ•´é 投影片 bbb.presentation.uploadPresBtn.toolTip = 上傳投影片 -bbb.presentation.downloadPresBtn.toolTip = Download Presentations +bbb.presentation.downloadPresBtn.toolTip = +bbb.presentation.poll.response = bbb.presentation.backBtn.toolTip = 上一é bbb.presentation.btnSlideNum.accessibilityName = 投影片 {0} 之 {1} bbb.presentation.btnSlideNum.toolTip = é¸æ“‡æŠ•å½±ç‰‡ @@ -255,8 +257,8 @@ bbb.presentation.uploadcomplete = 檔案上傳完畢。æ£åœ¨è½‰æ›æ ¼å¼ï¼Œè«‹ bbb.presentation.uploaded = 已上傳 bbb.presentation.document.supported = 已支æ´ä¸Šå‚³çš„檔案 bbb.presentation.document.converted = æˆåŠŸè½‰æ›Office檔案 -bbb.presentation.error.document.convert.failed = Try converting the document to PDF and upload again. -bbb.presentation.error.document.convert.invalid = Please convert this document to PDF first. +bbb.presentation.error.document.convert.failed = +bbb.presentation.error.document.convert.invalid = bbb.presentation.error.io = IO 錯誤: 請與管ç†å“¡è¯ç¹« bbb.presentation.error.security = 安全錯誤: 請與管ç†å“¡è¯ç¹« bbb.presentation.error.convert.notsupported = 錯誤:上傳的文件ä¸è¢«æ”¯æ´ã€‚請上傳有被支æ´çš„檔案 @@ -283,42 +285,43 @@ bbb.fileupload.uploadBtn = 上傳 bbb.fileupload.uploadBtn.toolTip = 上傳檔案 bbb.fileupload.deleteBtn.toolTip = 刪除投影片 bbb.fileupload.showBtn = 顯示 -bbb.fileupload.retry = Try another file +bbb.fileupload.retry = bbb.fileupload.showBtn.toolTip = 顯示投影片 -bbb.fileupload.close.tooltip = Close -bbb.fileupload.close.accessibilityName = Close the File Upload window +bbb.fileupload.close.tooltip = +bbb.fileupload.close.accessibilityName = bbb.fileupload.genThumbText = 產生縮圖.. bbb.fileupload.progBarLbl = 上傳進度: -bbb.fileupload.fileFormatHint = You can upload any Office or Portable Document Format (PDF) document. For the best result we recommend uploading a PDF. -bbb.fileupload.letUserDownload = Enable download of presentation -bbb.fileupload.letUserDownload.tooltip = Check here if you want the other users to download your presentation -bbb.filedownload.title = Download the Presentations -bbb.filedownload.close.tooltip = Close -bbb.filedownload.close.accessibilityName = Close file download window -bbb.filedownload.fileLbl = Choose File to Download: -bbb.filedownload.downloadBtn = Download -bbb.filedownload.downloadBtn.toolTip = Download Presentation -bbb.filedownload.thisFileIsDownloadable = File is downloadable +bbb.fileupload.fileFormatHint = +bbb.fileupload.letUserDownload = +bbb.fileupload.letUserDownload.tooltip = +bbb.filedownload.title = +bbb.filedownload.close.tooltip = +bbb.filedownload.close.accessibilityName = +bbb.filedownload.fileLbl = +bbb.filedownload.downloadBtn = +bbb.filedownload.downloadBtn.toolTip = +bbb.filedownload.thisFileIsDownloadable = bbb.chat.title = èŠå¤© bbb.chat.quickLink.label = èŠå¤©è¦–窗 bbb.chat.cmpColorPicker.toolTip = æ–‡å—é¡è‰² bbb.chat.input.accessibilityName = èŠå¤©ä¿¡æ¯ç·¨è¼¯æ¬„ bbb.chat.sendBtn.toolTip = é€å‡ºæ¶ˆæ¯ bbb.chat.sendBtn.accessibilityName = é€å‡ºèŠå¤©ä¿¡æ¯ -bbb.chat.saveBtn.toolTip = Save chat -bbb.chat.saveBtn.accessibilityName = Save chat in text file -bbb.chat.saveBtn.label = Save -bbb.chat.save.complete = Chat successfully saved -bbb.chat.save.filename = public-chat -bbb.chat.copyBtn.toolTip = Copy chat -bbb.chat.copyBtn.accessibilityName = Copy chat to clipboard -bbb.chat.copyBtn.label = Copy -bbb.chat.copy.complete = Chat copied to clipboard -bbb.chat.clearBtn.toolTip = Clear Public chat -bbb.chat.clearBtn.accessibilityName = Clear the public chat history -bbb.chat.clearBtn.chatMessage = The public chat history was cleared by a moderator -bbb.chat.clearBtn.alert.title = Warning -bbb.chat.clearBtn.alert.text = You are clearing the public chat history and this action cannot be undone. Do you want to proceed? +bbb.chat.saveBtn.toolTip = +bbb.chat.saveBtn.accessibilityName = +bbb.chat.saveBtn.label = +bbb.chat.save.complete = +bbb.chat.save.ioerror = +bbb.chat.save.filename = +bbb.chat.copyBtn.toolTip = +bbb.chat.copyBtn.accessibilityName = +bbb.chat.copyBtn.label = +bbb.chat.copy.complete = +bbb.chat.clearBtn.toolTip = +bbb.chat.clearBtn.accessibilityName = +bbb.chat.clearBtn.chatMessage = +bbb.chat.clearBtn.alert.title = +bbb.chat.clearBtn.alert.text = bbb.chat.contextmenu.copyalltext = è¤‡è£½å…¨éƒ¨æ–‡å— bbb.chat.publicChatUsername = 所有人 bbb.chat.optionsTabName = é¸é … @@ -331,13 +334,13 @@ bbb.chat.usersList.accessibilityName = é¸æ“‡ä½¿ç”¨è€…打開ç§äººèŠå¤©ã€‚使 bbb.chat.chatOptions = èŠå¤©é¸é … bbb.chat.fontSize = å—é«”å¤§å° bbb.chat.cmbFontSize.toolTip = é¸æ“‡èŠå¤©è¨Šæ¯çš„å—åž‹å¤§å° -bbb.chat.messageList = Chat Messages +bbb.chat.messageList = bbb.chat.minimizeBtn.accessibilityName = 最å°åŒ–èŠå¤©è¦–窗 bbb.chat.maximizeRestoreBtn.accessibilityName = 最大化èŠå¤©è¦–窗 bbb.chat.closeBtn.accessibilityName = 關閉èŠå¤©çª—é«” bbb.chat.chatTabs.accessibleNotice = æ–°çš„ä¿¡æ¯ bbb.chat.chatMessage.systemMessage = 系統 -bbb.chat.chatMessage.stringRespresentation = From {0} {1} at {2} +bbb.chat.chatMessage.stringRespresentation = bbb.chat.chatMessage.tooLong = The message is {0} character(s) too long bbb.publishVideo.changeCameraBtn.labelText = 更改æ”åƒé è¨ç½® bbb.publishVideo.changeCameraBtn.toolTip = é–‹å•Ÿæ›´æ›æ”影機å°è©±æ–¹å¡Š @@ -346,7 +349,7 @@ bbb.publishVideo.startPublishBtn.labelText = 開始共享 bbb.publishVideo.startPublishBtn.toolTip = 開始視訊 bbb.publishVideo.startPublishBtn.errorName = 無法共享網路æ”影機: {0} bbb.webcamPermissions.chrome.title = 許å¯é€éŽChrome使用 網路æ”影機 -bbb.webcamPermissions.chrome.message = Click Allow to give Chrome permission to use your webcam. +bbb.webcamPermissions.chrome.message = bbb.videodock.title = è¦–é »å€ bbb.videodock.quickLink.label = 視訊畫é¢è¦–窗 bbb.video.minimizeBtn.accessibilityName = 最å°åŒ–è¦–é »è¦–çª— @@ -367,14 +370,15 @@ bbb.video.publish.closeBtn.accessName = 關閉æ”影機è¨å®šè¦–窗 bbb.video.publish.closeBtn.label = å–消 bbb.video.publish.titleBar = 發佈æ”åƒé 窗體 bbb.video.streamClose.toolTip = 關閉串æµçµ¦ : {0} +bbb.video.message.browserhttp = bbb.screensharePublish.title = æ¡Œé¢å…±äº«: 演講人é 覽 bbb.screensharePublish.pause.tooltip = æš«åœæ¡Œé¢å…±äº« bbb.screensharePublish.pause.label = æš«åœ -bbb.screensharePublish.restart.tooltip = Resume screen share -bbb.screensharePublish.restart.label = Resume +bbb.screensharePublish.restart.tooltip = +bbb.screensharePublish.restart.label = bbb.screensharePublish.maximizeRestoreBtn.toolTip = ä½ ç„¡æ³•æœ€å¤§åŒ–é€™è¦–çª— bbb.screensharePublish.closeBtn.toolTip = åœæ¢å…±äº«ä¸¦é—œé–‰ -bbb.screensharePublish.closeBtn.accessibilityName = Stop Sharing and Close Screen Sharing Publish Window +bbb.screensharePublish.closeBtn.accessibilityName = bbb.screensharePublish.minimizeBtn.toolTip = 最å°åŒ– bbb.screensharePublish.minimizeBtn.accessibilityName = 最å°åŒ–æ¡Œé¢å…±äº«çš„發佈視窗 bbb.screensharePublish.maximizeRestoreBtn.accessibilityName = 最大化桌é¢å…±äº«çš„發佈視窗 @@ -416,40 +420,41 @@ bbb.screensharePublish.startFailed.label = 未åµæ¸¬åˆ°å…±äº«æ¡Œé¢å•Ÿå‹• bbb.screensharePublish.restartFailed.label = 未åµæ¸¬åˆ°å…±äº«æ¡Œé¢é‡å•Ÿ bbb.screensharePublish.jwsCrashed.label = 共享桌é¢ä¸é 期地關閉 bbb.screensharePublish.commonErrorMessage.label = é¸æ“‡ 'å–消' 並é‡è©¦ä¸€æ¬¡ -bbb.screensharePublish.tunnelingErrorMessage.one = Screen Sharing is unable to run. -bbb.screensharePublish.tunnelingErrorMessage.two = Try refreshing the client (click the refresh button on the browser). If after refresh you still see the words '[ Tunneling ]' in the lower right-hand corner of the client, try connecting from a different network location. +bbb.screensharePublish.tunnelingErrorMessage.one = +bbb.screensharePublish.tunnelingErrorMessage.two = bbb.screensharePublish.cancelButton.label = å–消 bbb.screensharePublish.startButton.label = 開始 bbb.screensharePublish.stopButton.label = åœæ¢ -bbb.screensharePublish.stopButton.toolTip = Stop sharing your screen -bbb.screensharePublish.WebRTCChromeExtensionMissing.label = You're using a recent version of Chrome but don't have the screen sharing extension installed. -bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = After you have installed the screen sharing extension, please click 'Retry' below. -bbb.screensharePublish.WebRTCExtensionFailFallback.label = Unable to detect screen sharing extension. Click here to try installing again, or select 'Use Java Screen Sharing'. -bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = It seems you may be Incognito or using private browsing. Make sure under your extension settings you allow the extension the run in Incognito/private browsing. -bbb.screensharePublish.WebRTCExtensionInstallButton.label = Click here to install -bbb.screensharePublish.WebRTCUseJavaButton.label = Use Java Screen Sharing -bbb.screensharePublish.WebRTCVideoLoading.label = Video is loading... Please wait -bbb.screensharePublish.sharingMessage= This is your screen being shared +bbb.screensharePublish.stopButton.toolTip = +bbb.screensharePublish.WebRTCChromeExtensionMissing.label = +bbb.screensharePublish.WebRTCRetryExtensionInstallation.label = +bbb.screensharePublish.WebRTCExtensionFailFallback.label = +bbb.screensharePublish.WebRTCPrivateBrowsingWarning.label = +bbb.screensharePublish.WebRTCExtensionInstallButton.label = +bbb.screensharePublish.WebRTCUseJavaButton.label = +bbb.screensharePublish.WebRTCVideoLoading.label = +bbb.screensharePublish.sharingMessage= bbb.screenshareView.title = æ¡Œé¢å…±äº« bbb.screenshareView.fitToWindow = é…åˆè¦–çª—å¤§å° bbb.screenshareView.actualSize = 顯示實際尺寸 bbb.screenshareView.minimizeBtn.accessibilityName = 最å°åŒ–æ¡Œé¢å…±äº«çš„觀賞視窗 bbb.screenshareView.maximizeRestoreBtn.accessibilityName = 最大化桌é¢å…±äº«çš„觀賞視窗 bbb.screenshareView.closeBtn.accessibilityName = 關閉桌é¢å…±äº«çš„觀賞視窗 -bbb.toolbar.phone.toolTip.start = Enable Audio (microphone or listen only) -bbb.toolbar.phone.toolTip.stop = Disable Audio +bbb.toolbar.phone.toolTip.start = +bbb.toolbar.phone.toolTip.stop = bbb.toolbar.phone.toolTip.mute = åœæ¢è½å–會è°å…§å®¹ bbb.toolbar.phone.toolTip.unmute = 開始è½å–會è°å…§å®¹ bbb.toolbar.phone.toolTip.nomic = 沒有åµæ¸¬åˆ°éº¥å…‹é¢¨ -bbb.toolbar.deskshare.toolTip.start = Open Screen Share Publish Window +bbb.toolbar.deskshare.toolTip.start = bbb.toolbar.deskshare.toolTip.stop = åœæ¢åˆ†äº«ä½ 的螢幕 -bbb.toolbar.sharednotes.toolTip = Open Shared Notes +bbb.toolbar.sharednotes.toolTip = bbb.toolbar.video.toolTip.start = åˆ†äº«æ‚¨çš„è¦–è¨Šç•«é¢ bbb.toolbar.video.toolTip.stop = åœæ¢åˆ†äº«ä½ çš„è¦–è¨Šç•«é¢ +bbb.layout.addButton.label = bbb.layout.addButton.toolTip = åŠ å…¥è‡ªå®šç¾©ä½ˆå±€ -bbb.layout.overwriteLayoutName.title = Overwrite layout -bbb.layout.overwriteLayoutName.text = Name already in use. Do you want to overwrite? -bbb.layout.broadcastButton.toolTip = Apply current layout to all viewers +bbb.layout.overwriteLayoutName.title = +bbb.layout.overwriteLayoutName.text = +bbb.layout.broadcastButton.toolTip = bbb.layout.combo.toolTip = æ›´æ›ç›®å‰çš„佈局 bbb.layout.loadButton.toolTip = 從檔案ä¸åŠ 載佈局 bbb.layout.saveButton.toolTip = 佈局å¦å˜ç‚ºæª”案 @@ -458,24 +463,27 @@ bbb.layout.combo.prompt = å¥—ç”¨ç‰ˆé¢ bbb.layout.combo.custom = * 自定義佈局 bbb.layout.combo.customName = 自定義佈局 bbb.layout.combo.remote = é 程 -bbb.layout.window.name = Layout name +bbb.layout.window.name = +bbb.layout.window.close.tooltip = +bbb.layout.window.close.accessibilityName = bbb.layout.save.complete = 佈局ä¿å˜æˆåŠŸ +bbb.layout.save.ioerror = bbb.layout.load.complete = ä½ˆå±€åŠ è¼‰æˆåŠŸ bbb.layout.load.failed = ä½ˆå±€åŠ è¼‰å¤±æ•— -bbb.layout.sync = Your layout has been sent to all participants +bbb.layout.sync = bbb.layout.name.defaultlayout = é è¨ç‰ˆé¢ bbb.layout.name.closedcaption = 關閉å—幕 bbb.layout.name.videochat = 視訊èŠå¤© bbb.layout.name.webcamsfocus = è¦–è¨Šæœƒè° bbb.layout.name.presentfocus = ç°¡å ±æœƒè° -bbb.layout.name.presentandusers = Presentation + Users +bbb.layout.name.presentandusers = bbb.layout.name.lectureassistant = æ¼”è¬›äººåŠ©ç† bbb.layout.name.lecture = 演講者 -bbb.layout.name.sharednotes = Shared Notes -bbb.layout.addCurrentToFileWindow.title = Add current Layout to file -bbb.layout.addCurrentToFileWindow.text = Do you want to save the current layout to file? -bbb.layout.denyAddToFile.toolTip = Deny adding the current layout -bbb.layout.confirmAddToFile.toolTip = Confirm adding the current layout +bbb.layout.name.sharednotes = +bbb.layout.addCurrentToFileWindow.title = +bbb.layout.addCurrentToFileWindow.text = +bbb.layout.denyAddToFile.toolTip = +bbb.layout.confirmAddToFile.toolTip = bbb.highlighter.toolbar.pencil = ç•«ç† bbb.highlighter.toolbar.pencil.accessibilityName = 白æ¿å…‰æ¨™åˆ‡æ›ç‚ºç•«ç† bbb.highlighter.toolbar.ellipse = 圓 @@ -492,8 +500,7 @@ bbb.highlighter.toolbar.color = é¸æ“‡é¡è‰² bbb.highlighter.toolbar.color.accessibilityName = 白æ¿ç•«ç†é¡è‰² bbb.highlighter.toolbar.thickness = 修改線æ¢ç²—ç´° bbb.highlighter.toolbar.thickness.accessibilityName = 白æ¿ç•«ç†ç²—ç´° -bbb.highlighter.toolbar.multiuser = Multi-user Drawing -bbb.logout.title = 離開 +bbb.highlighter.toolbar.multiuser = bbb.logout.button.label = 確定 bbb.logout.appshutdown = 伺æœå™¨ç¨‹åºå·²é—œé–‰ bbb.logout.asyncerror = åŒæ¥éŒ¯èª¤ @@ -502,23 +509,25 @@ bbb.logout.connectionfailed = 與伺æœå™¨é€£æŽ¥å·²é—œé–‰ bbb.logout.rejected = 連接æœå‹™å™¨è¢«å›žçµ• bbb.logout.invalidapp = red5 程åºæœªå®‰è£… bbb.logout.unknown = 您已掉線 -bbb.logout.guestkickedout = The moderator didn't allow you to join this meeting +bbb.logout.guestkickedout = bbb.logout.usercommand = æ‚¨å·²ç¶“é›¢é–‹è¦–è¨Šæœƒè° bbb.logour.breakoutRoomClose = ä½ çš„ç€è¦½å™¨è¦–窗å³å°‡é—œé–‰ -bbb.logout.ejectedFromMeeting = 會è°ç®¡ç†å“¡å°‡ä½ 從會è°ä¸å‰”除 +bbb.logout.ejectedFromMeeting = bbb.logout.refresh.message = 如有ä¸æ£å¸¸çš„登出,請點é¸ä¸‹é¢çš„按鈕é‡æ–°é€£ç·šã€‚ bbb.logout.refresh.label = é‡æ–°é€£ç·š -bbb.settings.title = Settings -bbb.settings.ok = OK -bbb.settings.cancel = Cancel -bbb.settings.btn.toolTip = Open configuration window +bbb.logout.feedback.hint = +bbb.logout.feedback.label = +bbb.settings.title = +bbb.settings.ok = +bbb.settings.cancel = +bbb.settings.btn.toolTip = bbb.logout.confirm.title = é›¢é–‹ç¢ºèª bbb.logout.confirm.message = 您確定è¦é›¢é–‹å—Žï¼Ÿ -bbb.logout.confirm.endMeeting = Yes and end the meeting +bbb.logout.confirm.endMeeting = bbb.logout.confirm.yes = 是 bbb.logout.confirm.no = å¦ -bbb.endSession.confirm.title = Warning -bbb.endSession.confirm.message = If you close the session, all participants will be disconnected. Do you want to proceed? +bbb.endSession.confirm.title = +bbb.endSession.confirm.message = bbb.connection.failure=åµæ¸¬é€£ç·šå•é¡Œ bbb.connection.reconnecting=é‡æ–°é€£ç·šä¸ bbb.connection.reestablished=連線é‡æ–°å»ºç«‹ä¸ @@ -530,59 +539,60 @@ bbb.notes.title = ç´€è¦ bbb.notes.cmpColorPicker.toolTip = 文本é¡è‰² bbb.notes.saveBtn = å˜æª” bbb.notes.saveBtn.toolTip = ç´€è¦å˜æª” -bbb.sharedNotes.title = Shared notes -bbb.sharedNotes.quickLink.label = Shared notes Window -bbb.sharedNotes.createNoteWindow.label = Note name -bbb.sharedNotes.createNoteWindow.close.tooltip = Close -bbb.sharedNotes.createNoteWindow.close.accessibilityName = Close create new note window -bbb.sharedNotes.typing.single = {0} is typing... -bbb.sharedNotes.typing.double = {0} and {1} are typing... -bbb.sharedNotes.typing.multiple = Several people are typing... -bbb.sharedNotes.save.toolTip = Save notes to file -bbb.sharedNotes.save.complete = Notes were successfully saved -bbb.sharedNotes.save.htmlLabel = Formatted text (.html) -bbb.sharedNotes.save.txtLabel = Plain text (.txt) -bbb.sharedNotes.new.label = Create -bbb.sharedNotes.new.toolTip = Create additional note -bbb.sharedNotes.limit.label = Notes limit reached -bbb.sharedNotes.clear.label = Clear this note -bbb.sharedNotes.undo.toolTip = Undo modification -bbb.sharedNotes.redo.toolTip = Redo modification -bbb.sharedNotes.toolbar.toolTip = Text formatting toolbar -bbb.sharedNotes.settings.toolTip = Shared notes settings -bbb.sharedNotes.clearWarning.title = Cleaning shared notes -bbb.sharedNotes.clearWarning.message = This action will clear the notes on this window for everyone, and there's no way to undo. Are you sure you want to clear these notes? -bbb.sharedNotes.additionalNotes.closeWarning.title = Closing shared notes -bbb.sharedNotes.additionalNotes.closeWarning.message = This action will destroy the notes on this window for everyone, and there's no way to undo. Are you sure you want to close these notes? -bbb.sharedNotes.messageLengthWarning.title = Character Change Limit Exceeded -bbb.sharedNotes.messageLengthWarning.text = Your change exceeds the limit by {0}. Try making a smaller change. -bbb.sharedNotes.remaining.tooltip = Remaining space available in shared notes -bbb.sharedNotes.full.tooltip = Capacity reached (try deleting some text) +bbb.sharedNotes.title = +bbb.sharedNotes.quickLink.label = +bbb.sharedNotes.createNoteWindow.label = +bbb.sharedNotes.createNoteWindow.close.tooltip = +bbb.sharedNotes.createNoteWindow.close.accessibilityName = +bbb.sharedNotes.typing.single = +bbb.sharedNotes.typing.double = +bbb.sharedNotes.typing.multiple = +bbb.sharedNotes.save.toolTip = +bbb.sharedNotes.save.complete = +bbb.sharedNotes.save.ioerror = +bbb.sharedNotes.save.htmlLabel = +bbb.sharedNotes.save.txtLabel = +bbb.sharedNotes.new.label = +bbb.sharedNotes.new.toolTip = +bbb.sharedNotes.limit.label = +bbb.sharedNotes.clear.label = +bbb.sharedNotes.undo.toolTip = +bbb.sharedNotes.redo.toolTip = +bbb.sharedNotes.toolbar.toolTip = +bbb.sharedNotes.settings.toolTip = +bbb.sharedNotes.clearWarning.title = +bbb.sharedNotes.clearWarning.message = +bbb.sharedNotes.additionalNotes.closeWarning.title = +bbb.sharedNotes.additionalNotes.closeWarning.message = +bbb.sharedNotes.messageLengthWarning.title = +bbb.sharedNotes.messageLengthWarning.text = +bbb.sharedNotes.remaining.tooltip = +bbb.sharedNotes.full.tooltip = bbb.settings.deskshare.instructions = 在彈出窗å£ä¸ï¼Œé»žæ“ŠåŒæ„來啓動桌é¢å…±äº«ç¨‹åº bbb.settings.deskshare.start = 檢查桌é¢åˆ†äº« bbb.settings.voice.volume = 麥克風狀態 -bbb.settings.java.label = Java version error -bbb.settings.java.text = You have Java {0} installed, but you need at least version {1} to use the BigBlueButton desktop sharing feature. The button below will install the newest Java JRE version. -bbb.settings.java.command = Install newest Java +bbb.settings.java.label = +bbb.settings.java.text = +bbb.settings.java.command = bbb.settings.flash.label = Flash版本错误 bbb.settings.flash.text = 您安è£çš„Flash爲{0},BigBlueButton需è¦{1}以上版本æ‰èƒ½æ£å¸¸é‹è¡Œã€‚點擊下é¢çš„éˆæŽ¥å®‰è£æœ€æ–°çš„Flash Player bbb.settings.flash.command = 安装最新Flash bbb.settings.isight.label = iSight é¡é 錯誤 -bbb.settings.isight.text = If you have problems with your iSight webcam, it may be because you are running OS X 10.6.5, which is known to have a problem with Flash capturing video from the iSight webcam. \n To correct this, the link below will install a newer version of Flash player, or update your Mac to the newest version +bbb.settings.isight.text = bbb.settings.isight.command = 安装 Flash 10.2 RC2 bbb.settings.warning.label = è¦å‘Š bbb.settings.warning.close = å…³é—æ¤è¦å‘Š bbb.settings.noissues = 没有å‘现é¢å¤–问题 bbb.settings.instructions = 在彈出的Flashè¨ç½®å°è©±æ¡†ä¸â€œæŽ¥å—â€Flash使用您的視訊é¡é ã€‚è‹¥æ‚¨èƒ½å¤ çœ‹åˆ°å’Œè½åˆ°è‡ªå·±ï¼Œèªªæ˜Žç€è¦½å™¨å·²è¨ç½®æ£ç¢ºã€‚其他å¯èƒ½å˜åœ¨çš„å•é¡Œé¡¯ç¤ºå¦‚下。ä¾æ¬¡é»žæ“Šä»¥æ‰¾åˆ°å¯è¡Œçš„解決方案。 -bbb.bwmonitor.title = Network monitor -bbb.bwmonitor.upload = Upload -bbb.bwmonitor.upload.short = Up -bbb.bwmonitor.download = Download -bbb.bwmonitor.download.short = Down -bbb.bwmonitor.total = Total -bbb.bwmonitor.current = Current -bbb.bwmonitor.available = Available -bbb.bwmonitor.latency = Latency +bbb.bwmonitor.title = +bbb.bwmonitor.upload = +bbb.bwmonitor.upload.short = +bbb.bwmonitor.download = +bbb.bwmonitor.download.short = +bbb.bwmonitor.total = +bbb.bwmonitor.current = +bbb.bwmonitor.available = +bbb.bwmonitor.latency = ltbcustom.bbb.highlighter.toolbar.triangle = 三角形 ltbcustom.bbb.highlighter.toolbar.triangle.accessibilityName = 白æ¿å…‰æ¨™åˆ‡æ›ç‚ºä¸‰è§’å½¢ ltbcustom.bbb.highlighter.toolbar.line = ç›´ç·š @@ -592,16 +602,16 @@ ltbcustom.bbb.highlighter.toolbar.text.accessibilityName = 切æ›ç™½æ¿å…‰æ¨™ç‚º ltbcustom.bbb.highlighter.texttoolbar.textColorPicker = 文本é¡è‰² ltbcustom.bbb.highlighter.texttoolbar.textSizeMenu = å—é«”å¤§å° bbb.caption.window.title = 關閉å—幕 -bbb.caption.quickLink.label = Closed Caption Window -bbb.caption.window.titleBar = Closed Caption Window Title Bar +bbb.caption.quickLink.label = +bbb.caption.window.titleBar = bbb.caption.window.minimizeBtn.accessibilityName = 最å°åŒ–已關閉的å—幕窗 bbb.caption.window.maximizeRestoreBtn.accessibilityName = 最大化已關閉的å—幕窗 bbb.caption.transcript.noowner = ç„¡ bbb.caption.transcript.youowner = ä½ bbb.caption.transcript.pastewarning.title = å—幕é»è²¼è¦å‘Š bbb.caption.transcript.pastewarning.text = Cannot paste text longer than {0} characters. You pasted {1} characters. -bbb.caption.transcript.inputArea.toolTip = Caption Input Area -bbb.caption.transcript.outputArea.toolTip = Caption Output Area +bbb.caption.transcript.inputArea.toolTip = +bbb.caption.transcript.outputArea.toolTip = bbb.caption.option.label = é¸é … bbb.caption.option.language = 語言: bbb.caption.option.language.tooltip = é¸æ“‡å—幕語言 @@ -627,25 +637,25 @@ bbb.accessibility.chat.chatBox.navigatedLatest = 您已經ç€è¦½åˆ°äº†æœ€å¾Œä¸€ bbb.accessibility.chat.chatBox.navigatedLatestRead = 您已經ç€è¦½åˆ°äº†æ‚¨æœ€è¿‘已讀éŽçš„æ¶ˆæ¯ bbb.accessibility.chat.chatwindow.input = èŠå¤©è¼¸å…¥ bbb.accessibility.chat.chatwindow.audibleChatNotification = 語音èŠå¤©é€šçŸ¥ -bbb.accessibility.chat.chatwindow.publicChatOptions = Public Chat Options +bbb.accessibility.chat.chatwindow.publicChatOptions = bbb.accessibility.chat.initialDescription = 使用方å‘éµç€è¦½èŠå¤©ä¿¡æ¯ bbb.accessibility.notes.notesview.input = ç´€è¦è¼¸å…¥ bbb.shortcuthelp.title = å¿«æ·éµ -bbb.shortcuthelp.titleBar = Shortcut Keys Window Title Bar +bbb.shortcuthelp.titleBar = bbb.shortcuthelp.minimizeBtn.accessibilityName = 最å°åŒ–å¿«æ·éµè¦–窗 bbb.shortcuthelp.maximizeRestoreBtn.accessibilityName = 最大化快æ·è¼”助視窗 bbb.shortcuthelp.closeBtn.accessibilityName = 關閉快æ·éµè¦–窗 -bbb.shortcuthelp.dropdown.accessibilityName = Shortcut Category +bbb.shortcuthelp.dropdown.accessibilityName = bbb.shortcuthelp.dropdown.general = 所有的快æ·éµ bbb.shortcuthelp.dropdown.presentation = 演示相關快æ·éµ bbb.shortcuthelp.dropdown.chat = èŠå¤©ç›¸é—œå¿«æ·éµ bbb.shortcuthelp.dropdown.users = 用戶相關快æ·éµ -bbb.shortcuthelp.dropdown.caption = Closed Caption shortcuts -bbb.shortcuthelp.browserWarning.text = The full list of shortcuts are only supported in Internet Explorer. +bbb.shortcuthelp.dropdown.caption = +bbb.shortcuthelp.browserWarning.text = bbb.shortcuthelp.headers.shortcut = å¿«æ·éµ -bbb.shortcuthelp.headers.function = 功能 +bbb.shortcuthelp.headers.function = 功能\ bbb.shortcutkey.general.minimize = 189 bbb.shortcutkey.general.minimize.function = 最å°åŒ–當å‰è¦–窗 @@ -671,8 +681,8 @@ bbb.shortcutkey.focus.presentation = 51 bbb.shortcutkey.focus.presentation.function = 將焦點移動到演示視窗 bbb.shortcutkey.focus.chat = 52 bbb.shortcutkey.focus.chat.function = 將焦點移動到èŠå¤©è¦–窗 -bbb.shortcutkey.focus.caption = 53 -bbb.shortcutkey.focus.caption.function = Move focus to the Closed Caption window +bbb.shortcutkey.focus.caption = +bbb.shortcutkey.focus.caption.function = bbb.shortcutkey.share.desktop = 68 bbb.shortcutkey.share.desktop.function = é–‹å•Ÿæ¡Œé¢å…±äº«è¦–窗 @@ -686,7 +696,7 @@ bbb.shortcutkey.logout.function = é›¢é–‹é€™è¦–è¨Šæœƒè° bbb.shortcutkey.raiseHand = 82 bbb.shortcutkey.raiseHand.function = 舉手 -bbb.shortcutkey.present.upload = 89 +bbb.shortcutkey.present.upload = bbb.shortcutkey.present.upload.function = 上傳投影片 bbb.shortcutkey.present.previous = 65 bbb.shortcutkey.present.previous.function = 上一é @@ -696,32 +706,32 @@ bbb.shortcutkey.present.next = 69 bbb.shortcutkey.present.next.function = 下一é bbb.shortcutkey.present.fitWidth = 70 bbb.shortcutkey.present.fitWidth.function = é©é…寬度 -bbb.shortcutkey.present.fitPage = 82 +bbb.shortcutkey.present.fitPage = bbb.shortcutkey.present.fitPage.function = é©é…é é¢ -bbb.shortcutkey.users.makePresenter = 89 +bbb.shortcutkey.users.makePresenter = bbb.shortcutkey.users.makePresenter.function = é¸æ“‡ç”¨æˆ¶ä½œç‚ºæ¼”講人 -bbb.shortcutkey.users.kick = 69 -bbb.shortcutkey.users.kick.function = é¸æ“‡ç”¨æˆ¶å°‡å…¶è«‹å‡ºæœƒè° +bbb.shortcutkey.users.kick = +bbb.shortcutkey.users.kick.function = bbb.shortcutkey.users.mute = 83 bbb.shortcutkey.users.mute.function = é¸æ“‡ç”¨æˆ¶å°å…¶éœéŸ³æˆ–å–消éœéŸ³ bbb.shortcutkey.users.muteall = 65 bbb.shortcutkey.users.muteall.function = 所有人éœéŸ³æˆ–å–消éœéŸ³ bbb.shortcutkey.users.muteAllButPres = 65 bbb.shortcutkey.users.muteAllButPres.function = 除演講人外其他所有人éœéŸ³ -bbb.shortcutkey.users.breakoutRooms = 75 -bbb.shortcutkey.users.breakoutRooms.function = Breakout rooms window -bbb.shortcutkey.users.focusBreakoutRooms = 82 -bbb.shortcutkey.users.focusBreakoutRooms.function = Focus to breakout rooms list -bbb.shortcutkey.users.listenToBreakoutRoom = 76 -bbb.shortcutkey.users.listenToBreakoutRoom.function = Listen to selected breakout room -bbb.shortcutkey.users.joinBreakoutRoom = 79 -bbb.shortcutkey.users.joinBreakoutRoom.function = Join selected breakout room +bbb.shortcutkey.users.breakoutRooms = +bbb.shortcutkey.users.breakoutRooms.function = +bbb.shortcutkey.users.focusBreakoutRooms = +bbb.shortcutkey.users.focusBreakoutRooms.function = +bbb.shortcutkey.users.listenToBreakoutRoom = +bbb.shortcutkey.users.listenToBreakoutRoom.function = +bbb.shortcutkey.users.joinBreakoutRoom = +bbb.shortcutkey.users.joinBreakoutRoom.function = bbb.shortcutkey.chat.focusTabs = 89 bbb.shortcutkey.chat.focusTabs.function = èšç„¦èŠå¤©tabé -bbb.shortcutkey.chat.focusBox = 82 -bbb.shortcutkey.chat.focusBox.function = Focus to chat message list +bbb.shortcutkey.chat.focusBox = +bbb.shortcutkey.chat.focusBox.function = bbb.shortcutkey.chat.changeColour = 67 bbb.shortcutkey.chat.changeColour.function = èšç„¦é¡è‰²é¸æ“‡å™¨ bbb.shortcutkey.chat.sendMessage = 83 @@ -746,15 +756,16 @@ bbb.shortcutkey.chat.chatbox.goread.function = ç€è¦½åˆ°æ‚¨å·²è®€çš„最近的消 bbb.shortcutkey.chat.chatbox.debug = 71 bbb.shortcutkey.chat.chatbox.debug.function = 臨時測試的快æ·éµ -bbb.shortcutkey.caption.takeOwnership = 79 -bbb.shortcutkey.caption.takeOwnership.function = Take ownsership of selected language +bbb.shortcutkey.caption.takeOwnership = +bbb.shortcutkey.caption.takeOwnership.function = bbb.polling.startButton.tooltip = 啟用投票 bbb.polling.startButton.label = 開始投票 bbb.polling.publishButton.label = 發佈 bbb.polling.closeButton.label = 關閉 -bbb.polling.customPollOption.label = Custom Poll... +bbb.polling.customPollOption.label = bbb.polling.pollModal.title = å³æ™‚的投票çµæžœ +bbb.polling.pollModal.hint = bbb.polling.customChoices.title = 輸入投票é¸é … bbb.polling.respondersLabel.novotes = ç‰å¾…回應 bbb.polling.respondersLabel.text = {0} ä½ç”¨æˆ¶å›žæ‡‰ @@ -802,10 +813,12 @@ bbb.lockSettings.save.tooltip = 套用鎖定的è¨ç½® bbb.lockSettings.cancel = å–消 bbb.lockSettings.cancel.toolTip = 關閉視窗ä¸å„²å˜ +bbb.lockSettings.hint = bbb.lockSettings.moderatorLocking = 管ç†å“¡éŽ–定 bbb.lockSettings.privateChat = ç§äººèŠå¤© bbb.lockSettings.publicChat = 公眾èŠå¤© bbb.lockSettings.webcam = æ”影機 +bbb.lockSettings.webcamsOnlyForModerator = bbb.lockSettings.microphone = 麥克風 bbb.lockSettings.layout = 版é¢ä½ˆå±€ bbb.lockSettings.title=åƒèˆ‡è€…éœéŸ³ @@ -815,13 +828,14 @@ bbb.lockSettings.lockOnJoin=鎖定進入會è°å®¤ bbb.users.breakout.breakoutRooms = 已啟動的課室 bbb.users.breakout.updateBreakoutRooms = 更新使用ä¸çš„課室 -bbb.users.breakout.timer.toolTip = Time left for breakout rooms +bbb.users.breakout.timerForRoom.toolTip = +bbb.users.breakout.timer.toolTip = bbb.users.breakout.calculatingRemainingTime = 計算剩餘時間 -bbb.users.breakout.closing = Closing +bbb.users.breakout.closing = +bbb.users.breakout.closewarning.text = bbb.users.breakout.rooms = 課室 bbb.users.breakout.roomsCombo.accessibilityName = è¦å»ºç«‹çš„課室號碼 bbb.users.breakout.room = 課室 -bbb.users.breakout.randomAssign = 隨機指定使用者 bbb.users.breakout.timeLimit = 時間é™åˆ¶ bbb.users.breakout.durationStepper.accessibilityName = Time limit in minutes bbb.users.breakout.minutes = åˆ†é˜ @@ -834,14 +848,14 @@ bbb.users.breakout.invite = 邀請 bbb.users.breakout.close = 關閉 bbb.users.breakout.closeAllRooms = 關閉所有使用ä¸çš„課室 bbb.users.breakout.insufficientUsers = 使用者ä¸è¶³ï¼Œ 至少è¦æœ‰ä¸€å€‹ä½¿ç”¨è€…在已啟動的會è°å®¤ -bbb.users.breakout.confirm = Join A Breakout Room -bbb.users.breakout.invited = You have been invited to join <b>Breakout Room</b> -bbb.users.breakout.accept = By accepting, you will automatically leave the audio and the video conferences. -bbb.users.breakout.joinSession = Join Session -bbb.users.breakout.joinSession.accessibilityName = Join Breakout Room Session -bbb.users.breakout.joinSession.close.tooltip = Close -bbb.users.breakout.joinSession.close.accessibilityName = Close Join Breakout Room Window -bbb.users.breakout.youareinroom = You are in Breakout Room {0} +bbb.users.breakout.confirm = +bbb.users.breakout.invited = +bbb.users.breakout.accept = +bbb.users.breakout.joinSession = +bbb.users.breakout.joinSession.accessibilityName = +bbb.users.breakout.joinSession.close.tooltip = +bbb.users.breakout.joinSession.close.accessibilityName = +bbb.users.breakout.youareinroom = bbb.users.roomsGrid.room = 課室 bbb.users.roomsGrid.users = 使用者 bbb.users.roomsGrid.action = 動作 @@ -849,55 +863,9 @@ bbb.users.roomsGrid.transfer = 轉æ›éŸ³æ•ˆ bbb.users.roomsGrid.join = 進入會è°å®¤ bbb.users.roomsGrid.noUsers = æ²’æœ‰ä½¿ç”¨è€…åœ¨èª²å®¤ä¸ -bbb.langSelector.default=Default language -bbb.langSelector.ar=Arabic -bbb.langSelector.az_AZ=Azerbaijani -bbb.langSelector.eu_EU=Basque -bbb.langSelector.bn_BN=Bengali -bbb.langSelector.bg_BG=Bulgarian -bbb.langSelector.ca_ES=Catalan -bbb.langSelector.zh_CN=Chinese (Simplified) -bbb.langSelector.zh_TW=Chinese (Traditional) -bbb.langSelector.hr_HR=Croatian -bbb.langSelector.cs_CZ=Czech -bbb.langSelector.da_DK=Danish -bbb.langSelector.nl_NL=Dutch -bbb.langSelector.en_US=English -bbb.langSelector.et_EE=Estonian -bbb.langSelector.fa_IR=Farsi -bbb.langSelector.fi_FI=Finnish -bbb.langSelector.fr_FR=French -bbb.langSelector.fr_CA=French (Canadian) -bbb.langSelector.ff_SN=Fulah -bbb.langSelector.de_DE=German -bbb.langSelector.el_GR=Greek -bbb.langSelector.he_IL=Hebrew -bbb.langSelector.hu_HU=Hungarian -bbb.langSelector.id_ID=Indonesian -bbb.langSelector.it_IT=Italian -bbb.langSelector.ja_JP=Japanese -bbb.langSelector.ko_KR=Korean -bbb.langSelector.lv_LV=Latvian -bbb.langSelector.lt_LT=Lithuania -bbb.langSelector.mn_MN=Mongolian -bbb.langSelector.ne_NE=Nepali -bbb.langSelector.no_NO=Norwegian -bbb.langSelector.pl_PL=Polish -bbb.langSelector.pt_BR=Portuguese (Brazilian) -bbb.langSelector.pt_PT=Portuguese -bbb.langSelector.ro_RO=Romanian -bbb.langSelector.ru_RU=Russian -bbb.langSelector.sr_SR=Serbian (Cyrillic) -bbb.langSelector.sr_RS=Serbian (Latin) -bbb.langSelector.si_LK=Sinhala -bbb.langSelector.sk_SK=Slovak -bbb.langSelector.sl_SL=Slovenian -bbb.langSelector.es_ES=Spanish -bbb.langSelector.es_LA=Spanish (Latin American) -bbb.langSelector.sv_SE=Swedish -bbb.langSelector.th_TH=Thai -bbb.langSelector.tr_TR=Turkish -bbb.langSelector.uk_UA=Ukrainian -bbb.langSelector.vi_VN=Vietnamese -bbb.langSelector.cy_GB=Welsh -bbb.langSelector.oc=Occitan +bbb.langSelector.default= + +bbb.alert.cancel = +bbb.alert.ok = +bbb.alert.no = +bbb.alert.yes = diff --git a/bigbluebutton-client/resources/config.xml.template b/bigbluebutton-client/resources/config.xml.template index a0ed70d4aee02b5bbafa30bedc33e9c18a55789e..e20a0d6345a69dccbdb8dd275664edf694362b40 100755 --- a/bigbluebutton-client/resources/config.xml.template +++ b/bigbluebutton-client/resources/config.xml.template @@ -17,8 +17,9 @@ <layout showLogButton="false" defaultLayout="bbb.layout.name.defaultlayout" showToolbar="true" showFooter="true" showMeetingName="true" showHelpButton="true" showLogoutWindow="true" showLayoutTools="true" confirmLogout="true" showNetworkMonitor="false" - showRecordingNotification="true" logoutOnStopRecording="false"/> - <breakoutRooms enabled="true" record="false" /> + showRecordingNotification="true" logoutOnStopRecording="false" + askForFeedbackOnLogout="false"/> + <breakoutRooms enabled="true" record="false" privateChateEnabled="true"/> <logging enabled="true" logTarget="trace" level="info" format="{dateUTC} {time} :: {name} :: [{logLevel}] {message}" uri="http://HOST/log" logPattern=".*"/> <lock disableCam="false" disableMic="false" disablePrivateChat="false" disablePublicChat="false" lockedLayout="false" lockOnJoin="true" lockOnJoinConfigurable="false"/> @@ -52,6 +53,7 @@ uri="rtmp://HOST/screenshare" showButton="true" enablePause="true" + tryKurentoWebRTC="false" tryWebRTCFirst="false" chromeExtensionLink="" chromeExtensionKey="" diff --git a/bigbluebutton-client/resources/prod/BigBlueButton.html b/bigbluebutton-client/resources/prod/BigBlueButton.html index 00e1a24d794c710c2b55c52d4e2d685b319a13fc..075632fbd06f8e202547e17913304b2fe813bcee 100755 --- a/bigbluebutton-client/resources/prod/BigBlueButton.html +++ b/bigbluebutton-client/resources/prod/BigBlueButton.html @@ -142,8 +142,8 @@ <script src="lib/verto-min.js" language="javascript"></script> <script src="lib/verto_extension.js" language="javascript"></script> - <script src="lib/kurento-utils.min.js" language="javascript"></script> <script src="lib/kurento-extension.js" language="javascript"></script> + <script src="lib/kurento-utils.js" language="javascript"></script> <script src="lib/bbb_api_bridge.js?v=VERSION" language="javascript"></script> <script src="lib/sip.js?v=VERSION" language="javascript"></script> diff --git a/bigbluebutton-client/resources/prod/lib/kurento-extension.js b/bigbluebutton-client/resources/prod/lib/kurento-extension.js index cd9c5fab9026142ecae3133278762eabdf33fd9b..1086d53d8af9780648f1c519a45d8d8f7adc331c 100644 --- a/bigbluebutton-client/resources/prod/lib/kurento-extension.js +++ b/bigbluebutton-client/resources/prod/lib/kurento-extension.js @@ -1,6 +1,7 @@ var isFirefox = typeof window.InstallTrigger !== 'undefined'; var isOpera = !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0; var isChrome = !!window.chrome && !isOpera; +var isSafari = navigator.userAgent.indexOf("Safari") >= 0 && !isChrome; var kurentoHandler = null; Kurento = function ( @@ -20,7 +21,7 @@ Kurento = function ( this.screenConstraints = {}; this.mediaCallback = null; - this.voiceBridge = voiceBridge; + this.voiceBridge = voiceBridge + '-SCREENSHARE'; this.internalMeetingId = internalMeetingId; this.vid_width = window.screen.width; @@ -33,9 +34,8 @@ Kurento = function ( this.caller_id_name = conferenceUsername; this.caller_id_number = conferenceUsername; - this.pingInterval; - this.kurentoPort = "kurento-screenshare"; + this.kurentoPort = "bbb-webrtc-sfu"; this.hostName = window.location.hostname; this.socketUrl = 'wss://' + this.hostName + '/' + this.kurentoPort; @@ -43,6 +43,7 @@ Kurento = function ( if (chromeExtension != null) { this.chromeExtension = chromeExtension; + window.chromeExtension = chromeExtension; } if (onFail != null) { @@ -57,21 +58,44 @@ Kurento = function ( this.KurentoManager= function () { this.kurentoVideo = null; - this.kurentoScreenShare = null; + this.kurentoScreenshare = null; }; KurentoManager.prototype.exitScreenShare = function () { - if (this.kurentoScreenShare != null) { - if(kurentoHandler.pingInterval) { - clearInterval(kurentoHandler.pingInterval); + console.log(" [exitScreenShare] Exiting screensharing"); + if(typeof this.kurentoScreenshare !== 'undefined' && this.kurentoScreenshare) { + if(this.kurentoScreenshare.ws !== null) { + this.kurentoScreenshare.ws.onclose = function(){}; + this.kurentoScreenshare.ws.close(); } - if(kurentoHandler.ws !== null) { - kurentoHandler.ws.onclose = function(){}; - kurentoHandler.ws.close(); + + this.kurentoScreenshare.disposeScreenShare(); + this.kurentoScreenshare = null; + } + + if (this.kurentoScreenshare) { + this.kurentoScreenshare = null; + } + + if(typeof this.kurentoVideo !== 'undefined' && this.kurentoVideo) { + this.exitVideo(); + } +}; + +KurentoManager.prototype.exitVideo = function () { + console.log(" [exitScreenShare] Exiting screensharing viewing"); + if(typeof this.kurentoVideo !== 'undefined' && this.kurentoVideo) { + if(this.kurentoVideo.ws !== null) { + this.kurentoVideo.ws.onclose = function(){}; + this.kurentoVideo.ws.close(); } - kurentoHandler.disposeScreenShare(); - this.kurentoScreenShare = null; - kurentoHandler = null; + + this.kurentoVideo.disposeScreenShare(); + this.kurentoVideo = null; + } + + if (this.kurentoVideo) { + this.kurentoVideo = null; } }; @@ -79,24 +103,21 @@ KurentoManager.prototype.shareScreen = function (tag) { this.exitScreenShare(); var obj = Object.create(Kurento.prototype); Kurento.apply(obj, arguments); - this.kurentoScreenShare = obj; - kurentoHandler = obj; - this.kurentoScreenShare.setScreenShare(tag); + this.kurentoScreenshare = obj; + this.kurentoScreenshare.setScreenShare(tag); }; -// Still unused, part of the HTML5 implementation KurentoManager.prototype.joinWatchVideo = function (tag) { this.exitVideo(); var obj = Object.create(Kurento.prototype); Kurento.apply(obj, arguments); this.kurentoVideo = obj; - kurentoHandler = obj; this.kurentoVideo.setWatchVideo(tag); }; Kurento.prototype.setScreenShare = function (tag) { - this.mediaCallback = this.makeShare; + this.mediaCallback = this.makeShare.bind(this); this.create(tag); }; @@ -112,19 +133,18 @@ Kurento.prototype.init = function () { console.log("this browser supports websockets"); this.ws = new WebSocket(this.socketUrl); - this.ws.onmessage = this.onWSMessage; - this.ws.onclose = function (close) { + this.ws.onmessage = this.onWSMessage.bind(this); + this.ws.onclose = (close) => { kurentoManager.exitScreenShare(); self.onFail("Websocket connection closed"); }; - this.ws.onerror = function (error) { + this.ws.onerror = (error) => { kurentoManager.exitScreenShare(); self.onFail("Websocket connection error"); }; - this.ws.onopen = function() { - self.pingInterval = setInterval(self.ping, 3000); + this.ws.onopen = function () { self.mediaCallback(); - }; + }.bind(self); } else console.log("this browser does not support websockets"); @@ -135,15 +155,16 @@ Kurento.prototype.onWSMessage = function (message) { switch (parsedMessage.id) { case 'presenterResponse': - kurentoHandler.presenterResponse(parsedMessage); + this.presenterResponse(parsedMessage); + break; + case 'viewerResponse': + this.viewerResponse(parsedMessage); break; case 'stopSharing': kurentoManager.exitScreenShare(); break; case 'iceCandidate': - kurentoHandler.webRtcPeer.addIceCandidate(parsedMessage.candidate); - break; - case 'pong': + this.webRtcPeer.addIceCandidate(parsedMessage.candidate); break; default: console.error('Unrecognized message', parsedMessage); @@ -156,21 +177,33 @@ Kurento.prototype.setRenderTag = function (tag) { Kurento.prototype.presenterResponse = function (message) { if (message.response != 'accepted') { - var errorMsg = message.message ? message.message : 'Unknow error'; - console.warn('Call not accepted for the following reason: ' + errorMsg); + var errorMsg = message.message ? message.message : 'Unknown error'; + console.warn('Call not accepted for the following reason: ' + JSON.stringify(errorMsg, null, 2)); kurentoManager.exitScreenShare(); - kurentoHandler.onFail(errorMessage); + this.onFail(errorMessage); } else { console.log("Presenter call was accepted with SDP => " + message.sdpAnswer); this.webRtcPeer.processAnswer(message.sdpAnswer); } } +Kurento.prototype.viewerResponse = function (message) { + if (message.response != 'accepted') { + var errorMsg = message.message ? message.message : 'Unknown error'; + console.warn('Call not accepted for the following reason: ' + errorMsg); + kurentoManager.exitScreenShare(); + this.onFail(errorMessage); + } else { + console.log("Viewer call was accepted with SDP => " + message.sdpAnswer); + this.webRtcPeer.processAnswer(message.sdpAnswer); + } +} + Kurento.prototype.serverResponse = function (message) { if (message.response != 'accepted') { var errorMsg = message.message ? message.message : 'Unknow error'; console.warn('Call not accepted for the following reason: ' + errorMsg); - kurentoHandler.dispose(); + kurentoManager.exitScreenShare(); } else { this.webRtcPeer.processAnswer(message.sdpAnswer); } @@ -178,89 +211,105 @@ Kurento.prototype.serverResponse = function (message) { Kurento.prototype.makeShare = function() { var self = this; - console.log("Kurento.prototype.makeShare " + JSON.stringify(this.webRtcPeer, null, 2)); if (!this.webRtcPeer) { - var options = { - onicecandidate : this.onIceCandidate + onicecandidate : self.onIceCandidate.bind(self) } - console.log("Peer options " + JSON.stringify(options, null, 2)); - - kurentoHandler.startScreenStreamFrom(); - + this.startScreenStreamFrom(); } } Kurento.prototype.onOfferPresenter = function (error, offerSdp) { + let self = this; if(error) { console.log("Kurento.prototype.onOfferPresenter Error " + error); - kurentoHandler.onFail(error); + this.onFail(error); return; } var message = { id : 'presenter', type: 'screenshare', - internalMeetingId: kurentoHandler.internalMeetingId, - voiceBridge: kurentoHandler.voiceBridge, - callerName : kurentoHandler.caller_id_name, + role: 'presenter', + internalMeetingId: self.internalMeetingId, + voiceBridge: self.voiceBridge, + callerName : self.caller_id_name, sdpOffer : offerSdp, - vh: kurentoHandler.vid_height, - vw: kurentoHandler.vid_width + vh: self.vid_height, + vw: self.vid_width }; console.log("onOfferPresenter sending to screenshare server => " + JSON.stringify(message, null, 2)); - kurentoHandler.sendMessage(message); + this.sendMessage(message); } Kurento.prototype.startScreenStreamFrom = function () { - var screenInfo = null; - var _this = this; + var self = this; if (!!window.chrome) { - if (!_this.chromeExtension) { - _this.logError({ + if (!self.chromeExtension) { + self.logError({ status: 'failed', message: 'Missing Chrome Extension key', }); - _this.onFail(); + self.onFail(); return; } } // TODO it would be nice to check those constraints - _this.screenConstraints.video = {}; + if (typeof screenConstraints !== undefined) { + self.screenConstraints = {}; + } + self.screenConstraints.video = {}; + console.log(self); var options = { - //localVideo: this.renderTag, - onicecandidate : _this.onIceCandidate, - mediaConstraints : _this.screenConstraints, + localVideo: document.getElementById(this.renderTag), + onicecandidate : self.onIceCandidate.bind(self), + mediaConstraints : self.screenConstraints, sendSource : 'desktop' }; console.log(" Peer options => " + JSON.stringify(options, null, 2)); - _this.webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerSendonly(options, function(error) { + self.webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerSendonly(options, function(error) { if(error) { console.log("WebRtcPeerSendonly constructor error " + JSON.stringify(error, null, 2)); - kurentoHandler.onFail(error); + self.onFail(error); return kurentoManager.exitScreenShare(); } - _this.webRtcPeer.generateOffer(_this.onOfferPresenter); + self.webRtcPeer.generateOffer(self.onOfferPresenter.bind(self)); console.log("Generated peer offer w/ options " + JSON.stringify(options)); }); } -Kurento.prototype.onIceCandidate = function(candidate) { +Kurento.prototype.onIceCandidate = function (candidate) { + let self = this; console.log('Local candidate' + JSON.stringify(candidate)); var message = { id : 'onIceCandidate', + role: 'presenter', type: 'screenshare', - voiceBridge: kurentoHandler.voiceBridge, + voiceBridge: self.voiceBridge, candidate : candidate } - console.log("this object " + JSON.stringify(this, null, 2)); - kurentoHandler.sendMessage(message); + this.sendMessage(message); +} + +Kurento.prototype.onViewerIceCandidate = function (candidate) { + let self = this; + console.log('Viewer local candidate' + JSON.stringify(candidate)); + + var message = { + id : 'viewerIceCandidate', + role: 'viewer', + type: 'screenshare', + voiceBridge: self.voiceBridge, + candidate : candidate, + callerName: self.caller_id_name + } + this.sendMessage(message); } Kurento.prototype.setWatchVideo = function (tag) { @@ -276,60 +325,50 @@ Kurento.prototype.viewer = function () { if (!this.webRtcPeer) { var options = { - remoteVideo: this.renderTag, - onicecandidate : onIceCandidate + remoteVideo: document.getElementById(this.renderTag), + onicecandidate : this.onViewerIceCandidate.bind(this) } - webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly(options, function(error) { + self.webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly(options, function(error) { if(error) { - return kurentoHandler.onFail(error); + return self.onFail(error); } - this.generateOffer(onOfferViewer); + this.generateOffer(self.onOfferViewer.bind(self)); }); } }; Kurento.prototype.onOfferViewer = function (error, offerSdp) { + let self = this; if(error) { console.log("Kurento.prototype.onOfferViewer Error " + error); - return kurentoHandler.onFail(); + return this.onFail(); } var message = { id : 'viewer', type: 'screenshare', - internalMeetingId: kurentoHandler.internalMeetingId, - voiceBridge: kurentoHandler.voiceBridge, - callerName : kurentoHandler.caller_id_name, + role: 'viewer', + internalMeetingId: self.internalMeetingId, + voiceBridge: self.voiceBridge, + callerName : self.caller_id_name, sdpOffer : offerSdp }; console.log("onOfferViewer sending to screenshare server => " + JSON.stringify(message, null, 2)); - kurentoHandler.sendMessage(message); + this.sendMessage(message); }; -Kurento.prototype.ping = function() { - var message = { - id : 'ping', - type: 'screenshare', - internalMeetingId: kurentoHandler.internalMeetingId, - voiceBridge: kurentoHandler.voiceBridge, - callerName : kurentoHandler.caller_id_name, - }; - - kurentoHandler.sendMessage(message); -} - Kurento.prototype.stop = function() { - if (this.webRtcPeer) { - var message = { - id : 'stop', - type : 'screenshare', - voiceBridge: kurentoHandler.voiceBridge - } - kurentoHandler.sendMessage(message); - kurentoHandler.disposeScreenShare(); - } + //if (this.webRtcPeer) { + // var message = { + // id : 'stop', + // type : 'screenshare', + // voiceBridge: kurentoHandler.voiceBridge + // } + // kurentoHandler.sendMessage(message); + // kurentoHandler.disposeScreenShare(); + //} } Kurento.prototype.dispose = function() { @@ -360,19 +399,6 @@ Kurento.prototype.logError = function (obj) { console.error(obj); }; -Kurento.prototype.getChromeScreenConstraints = function(callback, extensionId) { - chrome.runtime.sendMessage(extensionId, { - getStream: true, - sources: [ - "window", - "screen", - "tab" - ]}, - function(response) { - console.log(response); - callback(response); - }); -}; Kurento.normalizeCallback = function (callback) { if (typeof callback == 'function') { @@ -389,30 +415,47 @@ Kurento.normalizeCallback = function (callback) { // this function explains how to use above methods/objects window.getScreenConstraints = function(sendSource, callback) { - var _this = this; - var chromeMediaSourceId = sendSource; - if(isChrome) { - kurentoHandler.getChromeScreenConstraints (function (constraints) { + let chromeMediaSourceId = sendSource; + let screenConstraints = {video: {}}; - var sourceId = constraints.streamId; + if(isChrome) { + getChromeScreenConstraints ((constraints) => { + if(!constraints){ + document.dispatchEvent(new Event("installChromeExtension")); + return; + } + extensionInstalled = true; + let sourceId = constraints.streamId; // this statement sets gets 'sourceId" and sets "chromeMediaSourceId" - kurentoHandler.screenConstraints.video.chromeMediaSource = { exact: [sendSource]}; - kurentoHandler.screenConstraints.video.chromeMediaSourceId= sourceId; - console.log("getScreenConstraints for Chrome returns => " +JSON.stringify(kurentoHandler.screenConstraints, null, 2)); + screenConstraints.video.chromeMediaSource = { exact: [sendSource]}; + screenConstraints.video.chromeMediaSourceId = sourceId; + console.log("getScreenConstraints for Chrome returns => "); + console.log(screenConstraints); // now invoking native getUserMedia API - callback(null, kurentoHandler.screenConstraints); + callback(null, screenConstraints); - }, kurentoHandler.chromeExtension); + }, chromeExtension); } else if (isFirefox) { - kurentoHandler.screenConstraints.video.mediaSource= "screen"; - kurentoHandler.screenConstraints.video.width= {max: kurentoHandler.vid_width}; - kurentoHandler.screenConstraints.video.height = {max: kurentoHandler.vid_height}; + screenConstraints.video.mediaSource= "window"; + screenConstraints.video.width= {max: "1280"}; + screenConstraints.video.height = {max: "720"}; - console.log("getScreenConstraints for Firefox returns => " +JSON.stringify(kurentoHandler.screenConstraints, null, 2)); + console.log("getScreenConstraints for Firefox returns => "); + console.log(screenConstraints); // now invoking native getUserMedia API - callback(null, kurentoHandler.screenConstraints); + callback(null, screenConstraints); + } + else if(isSafari) { + screenConstraints.video.mediaSource= "screen"; + screenConstraints.video.width= {max: window.screen.width}; + screenConstraints.video.height = {max: window.screen.vid_height}; + + console.log("getScreenConstraints for Safari returns => "); + console.log(screenConstraints); + // now invoking native getUserMedia API + callback(null, screenConstraints); } } @@ -437,3 +480,22 @@ window.kurentoWatchVideo = function () { window.kurentoInitialize(); window.kurentoManager.joinWatchVideo.apply(window.kurentoManager, arguments); }; + +window.kurentoExitVideo = function () { + window.kurentoInitialize(); + window.kurentoManager.exitVideo(); +} + +window.getChromeScreenConstraints = function(callback, extensionId) { + chrome.runtime.sendMessage(extensionId, { + getStream: true, + sources: [ + "window", + "screen", + "tab" + ]}, + function(response) { + console.log(response); + callback(response); + }); +};; diff --git a/bigbluebutton-client/resources/prod/lib/kurento-utils.js b/bigbluebutton-client/resources/prod/lib/kurento-utils.js new file mode 100644 index 0000000000000000000000000000000000000000..d171093e8784054a9f42264a0dccb960c5c25d10 --- /dev/null +++ b/bigbluebutton-client/resources/prod/lib/kurento-utils.js @@ -0,0 +1,4362 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.kurentoUtils = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ +var freeice = require('freeice'); +var inherits = require('inherits'); +var UAParser = require('ua-parser-js'); +var uuid = require('uuid'); +var hark = require('hark'); +var EventEmitter = require('events').EventEmitter; +var recursive = require('merge').recursive.bind(undefined, true); +var sdpTranslator = require('sdp-translator'); +var logger = window.Logger || console; +try { + require('kurento-browser-extensions'); +} catch (error) { + if (typeof getScreenConstraints === 'undefined') { + logger.warn('screen sharing is not available'); + getScreenConstraints = function getScreenConstraints(sendSource, callback) { + callback(new Error('This library is not enabled for screen sharing')); + }; + } +} +var MEDIA_CONSTRAINTS = { + audio: true, + video: { + width: 640, + framerate: 15 + } + }; +var ua = window && window.navigator ? window.navigator.userAgent : ''; +var parser = new UAParser(ua); +var browser = parser.getBrowser(); +var usePlanB = false; +if (browser.name === 'Chrome' || browser.name === 'Chromium') { + logger.debug(browser.name + ': using SDP PlanB'); + usePlanB = true; +} +function noop(error) { + if (error) + logger.error(error); +} +function trackStop(track) { + track.stop && track.stop(); +} +function streamStop(stream) { + stream.getTracks().forEach(trackStop); +} +var dumpSDP = function (description) { + if (typeof description === 'undefined' || description === null) { + return ''; + } + return 'type: ' + description.type + '\r\n' + description.sdp; +}; +function bufferizeCandidates(pc, onerror) { + var candidatesQueue = []; + pc.addEventListener('signalingstatechange', function () { + if (this.signalingState === 'stable') { + while (candidatesQueue.length) { + var entry = candidatesQueue.shift(); + this.addIceCandidate(entry.candidate, entry.callback, entry.callback); + } + } + }); + return function (candidate, callback) { + callback = callback || onerror; + switch (pc.signalingState) { + case 'closed': + callback(new Error('PeerConnection object is closed')); + break; + case 'stable': + if (pc.remoteDescription) { + pc.addIceCandidate(candidate, callback, callback); + break; + } + default: + candidatesQueue.push({ + candidate: candidate, + callback: callback + }); + } + }; +} +function removeFIDFromOffer(sdp) { + var n = sdp.indexOf('a=ssrc-group:FID'); + if (n > 0) { + return sdp.slice(0, n); + } else { + return sdp; + } +} +function getSimulcastInfo(videoStream) { + var videoTracks = videoStream.getVideoTracks(); + if (!videoTracks.length) { + logger.warn('No video tracks available in the video stream'); + return ''; + } + var lines = [ + 'a=x-google-flag:conference', + 'a=ssrc-group:SIM 1 2 3', + 'a=ssrc:1 cname:localVideo', + 'a=ssrc:1 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:1 mslabel:' + videoStream.id, + 'a=ssrc:1 label:' + videoTracks[0].id, + 'a=ssrc:2 cname:localVideo', + 'a=ssrc:2 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:2 mslabel:' + videoStream.id, + 'a=ssrc:2 label:' + videoTracks[0].id, + 'a=ssrc:3 cname:localVideo', + 'a=ssrc:3 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:3 mslabel:' + videoStream.id, + 'a=ssrc:3 label:' + videoTracks[0].id + ]; + lines.push(''); + return lines.join('\n'); +} +function WebRtcPeer(mode, options, callback) { + if (!(this instanceof WebRtcPeer)) { + return new WebRtcPeer(mode, options, callback); + } + WebRtcPeer.super_.call(this); + if (options instanceof Function) { + callback = options; + options = undefined; + } + options = options || {}; + callback = (callback || noop).bind(this); + var self = this; + var localVideo = options.localVideo; + var remoteVideo = options.remoteVideo; + var videoStream = options.videoStream; + var audioStream = options.audioStream; + var mediaConstraints = options.mediaConstraints; + var connectionConstraints = options.connectionConstraints; + var pc = options.peerConnection; + var sendSource = options.sendSource || 'webcam'; + var dataChannelConfig = options.dataChannelConfig; + var useDataChannels = options.dataChannels || false; + var dataChannel; + var guid = uuid.v4(); + var configuration = recursive({ iceServers: freeice() }, options.configuration); + var onicecandidate = options.onicecandidate; + if (onicecandidate) + this.on('icecandidate', onicecandidate); + var oncandidategatheringdone = options.oncandidategatheringdone; + if (oncandidategatheringdone) { + this.on('candidategatheringdone', oncandidategatheringdone); + } + var simulcast = options.simulcast; + var multistream = options.multistream; + var interop = new sdpTranslator.Interop(); + var candidatesQueueOut = []; + var candidategatheringdone = false; + Object.defineProperties(this, { + 'peerConnection': { + get: function () { + return pc; + } + }, + 'id': { + value: options.id || guid, + writable: false + }, + 'remoteVideo': { + get: function () { + return remoteVideo; + } + }, + 'localVideo': { + get: function () { + return localVideo; + } + }, + 'dataChannel': { + get: function () { + return dataChannel; + } + }, + 'currentFrame': { + get: function () { + if (!remoteVideo) + return; + if (remoteVideo.readyState < remoteVideo.HAVE_CURRENT_DATA) + throw new Error('No video stream data available'); + var canvas = document.createElement('canvas'); + canvas.width = remoteVideo.videoWidth; + canvas.height = remoteVideo.videoHeight; + canvas.getContext('2d').drawImage(remoteVideo, 0, 0); + return canvas; + } + } + }); + if (!pc) { + pc = new RTCPeerConnection(configuration); + if (useDataChannels && !dataChannel) { + var dcId = 'WebRtcPeer-' + self.id; + var dcOptions = undefined; + if (dataChannelConfig) { + dcId = dataChannelConfig.id || dcId; + dcOptions = dataChannelConfig.options; + } + dataChannel = pc.createDataChannel(dcId, dcOptions); + if (dataChannelConfig) { + dataChannel.onopen = dataChannelConfig.onopen; + dataChannel.onclose = dataChannelConfig.onclose; + dataChannel.onmessage = dataChannelConfig.onmessage; + dataChannel.onbufferedamountlow = dataChannelConfig.onbufferedamountlow; + dataChannel.onerror = dataChannelConfig.onerror || noop; + } + } + } + pc.addEventListener('icecandidate', function (event) { + var candidate = event.candidate; + if (EventEmitter.listenerCount(self, 'icecandidate') || EventEmitter.listenerCount(self, 'candidategatheringdone')) { + if (candidate) { + var cand; + if (multistream && usePlanB) { + cand = interop.candidateToUnifiedPlan(candidate); + } else { + cand = candidate; + } + self.emit('icecandidate', cand); + candidategatheringdone = false; + } else if (!candidategatheringdone) { + self.emit('candidategatheringdone'); + candidategatheringdone = true; + } + } else if (!candidategatheringdone) { + candidatesQueueOut.push(candidate); + if (!candidate) + candidategatheringdone = true; + } + }); + pc.ontrack = options.onaddstream; + pc.onnegotiationneeded = options.onnegotiationneeded; + this.on('newListener', function (event, listener) { + if (event === 'icecandidate' || event === 'candidategatheringdone') { + while (candidatesQueueOut.length) { + var candidate = candidatesQueueOut.shift(); + if (!candidate === (event === 'candidategatheringdone')) { + listener(candidate); + } + } + } + }); + var addIceCandidate = bufferizeCandidates(pc); + this.addIceCandidate = function (iceCandidate, callback) { + var candidate; + if (multistream && usePlanB) { + candidate = interop.candidateToPlanB(iceCandidate); + } else { + candidate = new RTCIceCandidate(iceCandidate); + } + logger.debug('Remote ICE candidate received', iceCandidate); + callback = (callback || noop).bind(this); + addIceCandidate(candidate, callback); + }; + this.generateOffer = function (callback) { + callback = callback.bind(this); + var offerAudio = true; + var offerVideo = true; + if (mediaConstraints) { + offerAudio = typeof mediaConstraints.audio === 'boolean' ? mediaConstraints.audio : true; + offerVideo = typeof mediaConstraints.video === 'boolean' ? mediaConstraints.video : true; + } + var browserDependantConstraints = { + offerToReceiveAudio: mode !== 'sendonly' && offerAudio, + offerToReceiveVideo: mode !== 'sendonly' && offerVideo + }; + var constraints = browserDependantConstraints; + logger.debug('constraints: ' + JSON.stringify(constraints)); + pc.createOffer(constraints).then(function (offer) { + logger.debug('Created SDP offer'); + offer = mangleSdpToAddSimulcast(offer); + return pc.setLocalDescription(offer); + }).then(function () { + var localDescription = pc.localDescription; + logger.debug('Local description set', localDescription.sdp); + if (multistream && usePlanB) { + localDescription = interop.toUnifiedPlan(localDescription); + logger.debug('offer::origPlanB->UnifiedPlan', dumpSDP(localDescription)); + } + callback(null, localDescription.sdp, self.processAnswer.bind(self)); + }).catch(callback); + }; + this.getLocalSessionDescriptor = function () { + return pc.localDescription; + }; + this.getRemoteSessionDescriptor = function () { + return pc.remoteDescription; + }; + function setRemoteVideo() { + if (remoteVideo) { + var stream = pc.getRemoteStreams()[0]; + remoteVideo.pause(); + remoteVideo.srcObject = stream; + remoteVideo.load(); + logger.info('Remote URL:', remoteVideo.srcObject); + } + } + this.showLocalVideo = function () { + localVideo.srcObject = videoStream; + localVideo.muted = true; + }; + this.send = function (data) { + if (dataChannel && dataChannel.readyState === 'open') { + dataChannel.send(data); + } else { + logger.warn('Trying to send data over a non-existing or closed data channel'); + } + }; + this.processAnswer = function (sdpAnswer, callback) { + callback = (callback || noop).bind(this); + var answer = new RTCSessionDescription({ + type: 'answer', + sdp: sdpAnswer + }); + if (multistream && usePlanB) { + var planBAnswer = interop.toPlanB(answer); + logger.debug('asnwer::planB', dumpSDP(planBAnswer)); + answer = planBAnswer; + } + logger.debug('SDP answer received, setting remote description'); + if (pc.signalingState === 'closed') { + return callback('PeerConnection is closed'); + } + pc.setRemoteDescription(answer, function () { + setRemoteVideo(); + callback(); + }, callback); + }; + this.processOffer = function (sdpOffer, callback) { + callback = callback.bind(this); + var offer = new RTCSessionDescription({ + type: 'offer', + sdp: sdpOffer + }); + if (multistream && usePlanB) { + var planBOffer = interop.toPlanB(offer); + logger.debug('offer::planB', dumpSDP(planBOffer)); + offer = planBOffer; + } + logger.debug('SDP offer received, setting remote description'); + if (pc.signalingState === 'closed') { + return callback('PeerConnection is closed'); + } + pc.setRemoteDescription(offer).then(function () { + return setRemoteVideo(); + }).then(function () { + return pc.createAnswer(); + }).then(function (answer) { + answer = mangleSdpToAddSimulcast(answer); + logger.debug('Created SDP answer'); + return pc.setLocalDescription(answer); + }).then(function () { + var localDescription = pc.localDescription; + if (multistream && usePlanB) { + localDescription = interop.toUnifiedPlan(localDescription); + logger.debug('answer::origPlanB->UnifiedPlan', dumpSDP(localDescription)); + } + logger.debug('Local description set', localDescription.sdp); + callback(null, localDescription.sdp); + }).catch(callback); + }; + function mangleSdpToAddSimulcast(answer) { + if (simulcast) { + if (browser.name === 'Chrome' || browser.name === 'Chromium') { + logger.debug('Adding multicast info'); + answer = new RTCSessionDescription({ + 'type': answer.type, + 'sdp': removeFIDFromOffer(answer.sdp) + getSimulcastInfo(videoStream) + }); + } else { + logger.warn('Simulcast is only available in Chrome browser.'); + } + } + return answer; + } + function start() { + if (pc.signalingState === 'closed') { + callback('The peer connection object is in "closed" state. This is most likely due to an invocation of the dispose method before accepting in the dialogue'); + } + if (videoStream && localVideo) { + self.showLocalVideo(); + } + if (videoStream) { + pc.addStream(videoStream); + } + if (audioStream) { + pc.addStream(audioStream); + } + var browser = parser.getBrowser(); + if (mode === 'sendonly' && (browser.name === 'Chrome' || browser.name === 'Chromium') && browser.major === 39) { + mode = 'sendrecv'; + } + callback(); + } + if (mode !== 'recvonly' && !videoStream && !audioStream) { + function getMedia(constraints) { + if (constraints === undefined) { + constraints = MEDIA_CONSTRAINTS; + } + navigator.mediaDevices.getUserMedia(constraints).then(function (stream) { + videoStream = stream; + start(); + }).catch(callback); + } + if (sendSource === 'webcam') { + getMedia(mediaConstraints); + } else { + getScreenConstraints(sendSource, function (error, constraints_) { + if (error) + return callback(error); + constraints = [mediaConstraints]; + constraints.unshift(constraints_); + getMedia(recursive.apply(undefined, constraints)); + }, guid); + } + } else { + setTimeout(start, 0); + } + this.on('_dispose', function () { + if (localVideo) { + localVideo.pause(); + localVideo.src = ''; + localVideo.load(); + localVideo.muted = false; + } + if (remoteVideo) { + remoteVideo.pause(); + remoteVideo.src = ''; + remoteVideo.load(); + } + self.removeAllListeners(); + if (window.cancelChooseDesktopMedia !== undefined) { + window.cancelChooseDesktopMedia(guid); + } + }); +} +inherits(WebRtcPeer, EventEmitter); +function createEnableDescriptor(type) { + var method = 'get' + type + 'Tracks'; + return { + enumerable: true, + get: function () { + if (!this.peerConnection) + return; + var streams = this.peerConnection.getLocalStreams(); + if (!streams.length) + return; + for (var i = 0, stream; stream = streams[i]; i++) { + var tracks = stream[method](); + for (var j = 0, track; track = tracks[j]; j++) + if (!track.enabled) + return false; + } + return true; + }, + set: function (value) { + function trackSetEnable(track) { + track.enabled = value; + } + this.peerConnection.getLocalStreams().forEach(function (stream) { + stream[method]().forEach(trackSetEnable); + }); + } + }; +} +Object.defineProperties(WebRtcPeer.prototype, { + 'enabled': { + enumerable: true, + get: function () { + return this.audioEnabled && this.videoEnabled; + }, + set: function (value) { + this.audioEnabled = this.videoEnabled = value; + } + }, + 'audioEnabled': createEnableDescriptor('Audio'), + 'videoEnabled': createEnableDescriptor('Video') +}); +WebRtcPeer.prototype.getLocalStream = function (index) { + if (this.peerConnection) { + return this.peerConnection.getLocalStreams()[index || 0]; + } +}; +WebRtcPeer.prototype.getRemoteStream = function (index) { + if (this.peerConnection) { + return this.peerConnection.getRemoteStreams()[index || 0]; + } +}; +WebRtcPeer.prototype.dispose = function () { + logger.debug('Disposing WebRtcPeer'); + var pc = this.peerConnection; + var dc = this.dataChannel; + try { + if (dc) { + if (dc.signalingState === 'closed') + return; + dc.close(); + } + if (pc) { + if (pc.signalingState === 'closed') + return; + pc.getLocalStreams().forEach(streamStop); + pc.close(); + } + } catch (err) { + logger.warn('Exception disposing webrtc peer ' + err); + } + this.emit('_dispose'); +}; +function WebRtcPeerRecvonly(options, callback) { + if (!(this instanceof WebRtcPeerRecvonly)) { + return new WebRtcPeerRecvonly(options, callback); + } + WebRtcPeerRecvonly.super_.call(this, 'recvonly', options, callback); +} +inherits(WebRtcPeerRecvonly, WebRtcPeer); +function WebRtcPeerSendonly(options, callback) { + if (!(this instanceof WebRtcPeerSendonly)) { + return new WebRtcPeerSendonly(options, callback); + } + WebRtcPeerSendonly.super_.call(this, 'sendonly', options, callback); +} +inherits(WebRtcPeerSendonly, WebRtcPeer); +function WebRtcPeerSendrecv(options, callback) { + if (!(this instanceof WebRtcPeerSendrecv)) { + return new WebRtcPeerSendrecv(options, callback); + } + WebRtcPeerSendrecv.super_.call(this, 'sendrecv', options, callback); +} +inherits(WebRtcPeerSendrecv, WebRtcPeer); +function harkUtils(stream, options) { + return hark(stream, options); +} +exports.bufferizeCandidates = bufferizeCandidates; +exports.WebRtcPeerRecvonly = WebRtcPeerRecvonly; +exports.WebRtcPeerSendonly = WebRtcPeerSendonly; +exports.WebRtcPeerSendrecv = WebRtcPeerSendrecv; +exports.hark = harkUtils; +},{"events":4,"freeice":5,"hark":8,"inherits":9,"kurento-browser-extensions":10,"merge":11,"sdp-translator":18,"ua-parser-js":21,"uuid":23}],2:[function(require,module,exports){ +if (window.addEventListener) + module.exports = require('./index'); +},{"./index":3}],3:[function(require,module,exports){ +var WebRtcPeer = require('./WebRtcPeer'); +exports.WebRtcPeer = WebRtcPeer; +},{"./WebRtcPeer":1}],4:[function(require,module,exports){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +function EventEmitter() { + this._events = this._events || {}; + this._maxListeners = this._maxListeners || undefined; +} +module.exports = EventEmitter; + +// Backwards-compat with node 0.10.x +EventEmitter.EventEmitter = EventEmitter; + +EventEmitter.prototype._events = undefined; +EventEmitter.prototype._maxListeners = undefined; + +// By default EventEmitters will print a warning if more than 10 listeners are +// added to it. This is a useful default which helps finding memory leaks. +EventEmitter.defaultMaxListeners = 10; + +// Obviously not all Emitters should be limited to 10. This function allows +// that to be increased. Set to zero for unlimited. +EventEmitter.prototype.setMaxListeners = function(n) { + if (!isNumber(n) || n < 0 || isNaN(n)) + throw TypeError('n must be a positive number'); + this._maxListeners = n; + return this; +}; + +EventEmitter.prototype.emit = function(type) { + var er, handler, len, args, i, listeners; + + if (!this._events) + this._events = {}; + + // If there is no 'error' event listener then throw. + if (type === 'error') { + if (!this._events.error || + (isObject(this._events.error) && !this._events.error.length)) { + er = arguments[1]; + if (er instanceof Error) { + throw er; // Unhandled 'error' event + } else { + // At least give some kind of context to the user + var err = new Error('Uncaught, unspecified "error" event. (' + er + ')'); + err.context = er; + throw err; + } + } + } + + handler = this._events[type]; + + if (isUndefined(handler)) + return false; + + if (isFunction(handler)) { + switch (arguments.length) { + // fast cases + case 1: + handler.call(this); + break; + case 2: + handler.call(this, arguments[1]); + break; + case 3: + handler.call(this, arguments[1], arguments[2]); + break; + // slower + default: + args = Array.prototype.slice.call(arguments, 1); + handler.apply(this, args); + } + } else if (isObject(handler)) { + args = Array.prototype.slice.call(arguments, 1); + listeners = handler.slice(); + len = listeners.length; + for (i = 0; i < len; i++) + listeners[i].apply(this, args); + } + + return true; +}; + +EventEmitter.prototype.addListener = function(type, listener) { + var m; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events) + this._events = {}; + + // To avoid recursion in the case that type === "newListener"! Before + // adding it to the listeners, first emit "newListener". + if (this._events.newListener) + this.emit('newListener', type, + isFunction(listener.listener) ? + listener.listener : listener); + + if (!this._events[type]) + // Optimize the case of one listener. Don't need the extra array object. + this._events[type] = listener; + else if (isObject(this._events[type])) + // If we've already got an array, just append. + this._events[type].push(listener); + else + // Adding the second element, need to change to array. + this._events[type] = [this._events[type], listener]; + + // Check for listener leak + if (isObject(this._events[type]) && !this._events[type].warned) { + if (!isUndefined(this._maxListeners)) { + m = this._maxListeners; + } else { + m = EventEmitter.defaultMaxListeners; + } + + if (m && m > 0 && this._events[type].length > m) { + this._events[type].warned = true; + console.error('(node) warning: possible EventEmitter memory ' + + 'leak detected. %d listeners added. ' + + 'Use emitter.setMaxListeners() to increase limit.', + this._events[type].length); + if (typeof console.trace === 'function') { + // not supported in IE 10 + console.trace(); + } + } + } + + return this; +}; + +EventEmitter.prototype.on = EventEmitter.prototype.addListener; + +EventEmitter.prototype.once = function(type, listener) { + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + var fired = false; + + function g() { + this.removeListener(type, g); + + if (!fired) { + fired = true; + listener.apply(this, arguments); + } + } + + g.listener = listener; + this.on(type, g); + + return this; +}; + +// emits a 'removeListener' event iff the listener was removed +EventEmitter.prototype.removeListener = function(type, listener) { + var list, position, length, i; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events || !this._events[type]) + return this; + + list = this._events[type]; + length = list.length; + position = -1; + + if (list === listener || + (isFunction(list.listener) && list.listener === listener)) { + delete this._events[type]; + if (this._events.removeListener) + this.emit('removeListener', type, listener); + + } else if (isObject(list)) { + for (i = length; i-- > 0;) { + if (list[i] === listener || + (list[i].listener && list[i].listener === listener)) { + position = i; + break; + } + } + + if (position < 0) + return this; + + if (list.length === 1) { + list.length = 0; + delete this._events[type]; + } else { + list.splice(position, 1); + } + + if (this._events.removeListener) + this.emit('removeListener', type, listener); + } + + return this; +}; + +EventEmitter.prototype.removeAllListeners = function(type) { + var key, listeners; + + if (!this._events) + return this; + + // not listening for removeListener, no need to emit + if (!this._events.removeListener) { + if (arguments.length === 0) + this._events = {}; + else if (this._events[type]) + delete this._events[type]; + return this; + } + + // emit removeListener for all listeners on all events + if (arguments.length === 0) { + for (key in this._events) { + if (key === 'removeListener') continue; + this.removeAllListeners(key); + } + this.removeAllListeners('removeListener'); + this._events = {}; + return this; + } + + listeners = this._events[type]; + + if (isFunction(listeners)) { + this.removeListener(type, listeners); + } else if (listeners) { + // LIFO order + while (listeners.length) + this.removeListener(type, listeners[listeners.length - 1]); + } + delete this._events[type]; + + return this; +}; + +EventEmitter.prototype.listeners = function(type) { + var ret; + if (!this._events || !this._events[type]) + ret = []; + else if (isFunction(this._events[type])) + ret = [this._events[type]]; + else + ret = this._events[type].slice(); + return ret; +}; + +EventEmitter.prototype.listenerCount = function(type) { + if (this._events) { + var evlistener = this._events[type]; + + if (isFunction(evlistener)) + return 1; + else if (evlistener) + return evlistener.length; + } + return 0; +}; + +EventEmitter.listenerCount = function(emitter, type) { + return emitter.listenerCount(type); +}; + +function isFunction(arg) { + return typeof arg === 'function'; +} + +function isNumber(arg) { + return typeof arg === 'number'; +} + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} + +function isUndefined(arg) { + return arg === void 0; +} + +},{}],5:[function(require,module,exports){ +/* jshint node: true */ +'use strict'; + +var normalice = require('normalice'); + +/** + # freeice + + The `freeice` module is a simple way of getting random STUN or TURN server + for your WebRTC application. The list of servers (just STUN at this stage) + were sourced from this [gist](https://gist.github.com/zziuni/3741933). + + ## Example Use + + The following demonstrates how you can use `freeice` with + [rtc-quickconnect](https://github.com/rtc-io/rtc-quickconnect): + + <<< examples/quickconnect.js + + As the `freeice` module generates ice servers in a list compliant with the + WebRTC spec you will be able to use it with raw `RTCPeerConnection` + constructors and other WebRTC libraries. + + ## Hey, don't use my STUN/TURN server! + + If for some reason your free STUN or TURN server ends up in the + list of servers ([stun](https://github.com/DamonOehlman/freeice/blob/master/stun.json) or + [turn](https://github.com/DamonOehlman/freeice/blob/master/turn.json)) + that is used in this module, you can feel + free to open an issue on this repository and those servers will be removed + within 24 hours (or sooner). This is the quickest and probably the most + polite way to have something removed (and provides us some visibility + if someone opens a pull request requesting that a server is added). + + ## Please add my server! + + If you have a server that you wish to add to the list, that's awesome! I'm + sure I speak on behalf of a whole pile of WebRTC developers who say thanks. + To get it into the list, feel free to either open a pull request or if you + find that process a bit daunting then just create an issue requesting + the addition of the server (make sure you provide all the details, and if + you have a Terms of Service then including that in the PR/issue would be + awesome). + + ## I know of a free server, can I add it? + + Sure, if you do your homework and make sure it is ok to use (I'm currently + in the process of reviewing the terms of those STUN servers included from + the original list). If it's ok to go, then please see the previous entry + for how to add it. + + ## Current List of Servers + + * current as at the time of last `README.md` file generation + + ### STUN + + <<< stun.json + + ### TURN + + <<< turn.json + +**/ + +var freeice = module.exports = function(opts) { + // if a list of servers has been provided, then use it instead of defaults + var servers = { + stun: (opts || {}).stun || require('./stun.json'), + turn: (opts || {}).turn || require('./turn.json') + }; + + var stunCount = (opts || {}).stunCount || 2; + var turnCount = (opts || {}).turnCount || 0; + var selected; + + function getServers(type, count) { + var out = []; + var input = [].concat(servers[type]); + var idx; + + while (input.length && out.length < count) { + idx = (Math.random() * input.length) | 0; + out = out.concat(input.splice(idx, 1)); + } + + return out.map(function(url) { + //If it's a not a string, don't try to "normalice" it otherwise using type:url will screw it up + if ((typeof url !== 'string') && (! (url instanceof String))) { + return url; + } else { + return normalice(type + ':' + url); + } + }); + } + + // add stun servers + selected = [].concat(getServers('stun', stunCount)); + + if (turnCount) { + selected = selected.concat(getServers('turn', turnCount)); + } + + return selected; +}; + +},{"./stun.json":6,"./turn.json":7,"normalice":12}],6:[function(require,module,exports){ +module.exports=[ + "stun.l.google.com:19302", + "stun1.l.google.com:19302", + "stun2.l.google.com:19302", + "stun3.l.google.com:19302", + "stun4.l.google.com:19302", + "stun.ekiga.net", + "stun.ideasip.com", + "stun.schlund.de", + "stun.stunprotocol.org:3478", + "stun.voiparound.com", + "stun.voipbuster.com", + "stun.voipstunt.com", + "stun.voxgratia.org", + "stun.services.mozilla.com" +] + +},{}],7:[function(require,module,exports){ +module.exports=[] + +},{}],8:[function(require,module,exports){ +var WildEmitter = require('wildemitter'); + +function getMaxVolume (analyser, fftBins) { + var maxVolume = -Infinity; + analyser.getFloatFrequencyData(fftBins); + + for(var i=4, ii=fftBins.length; i < ii; i++) { + if (fftBins[i] > maxVolume && fftBins[i] < 0) { + maxVolume = fftBins[i]; + } + }; + + return maxVolume; +} + + +var audioContextType = window.AudioContext || window.webkitAudioContext; +// use a single audio context due to hardware limits +var audioContext = null; +module.exports = function(stream, options) { + var harker = new WildEmitter(); + + + // make it not break in non-supported browsers + if (!audioContextType) return harker; + + //Config + var options = options || {}, + smoothing = (options.smoothing || 0.1), + interval = (options.interval || 50), + threshold = options.threshold, + play = options.play, + history = options.history || 10, + running = true; + + //Setup Audio Context + if (!audioContext) { + audioContext = new audioContextType(); + } + var sourceNode, fftBins, analyser; + + analyser = audioContext.createAnalyser(); + analyser.fftSize = 512; + analyser.smoothingTimeConstant = smoothing; + fftBins = new Float32Array(analyser.fftSize); + + if (stream.jquery) stream = stream[0]; + if (stream instanceof HTMLAudioElement || stream instanceof HTMLVideoElement) { + //Audio Tag + sourceNode = audioContext.createMediaElementSource(stream); + if (typeof play === 'undefined') play = true; + threshold = threshold || -50; + } else { + //WebRTC Stream + sourceNode = audioContext.createMediaStreamSource(stream); + threshold = threshold || -50; + } + + sourceNode.connect(analyser); + if (play) analyser.connect(audioContext.destination); + + harker.speaking = false; + + harker.setThreshold = function(t) { + threshold = t; + }; + + harker.setInterval = function(i) { + interval = i; + }; + + harker.stop = function() { + running = false; + harker.emit('volume_change', -100, threshold); + if (harker.speaking) { + harker.speaking = false; + harker.emit('stopped_speaking'); + } + }; + harker.speakingHistory = []; + for (var i = 0; i < history; i++) { + harker.speakingHistory.push(0); + } + + // Poll the analyser node to determine if speaking + // and emit events if changed + var looper = function() { + setTimeout(function() { + + //check if stop has been called + if(!running) { + return; + } + + var currentVolume = getMaxVolume(analyser, fftBins); + + harker.emit('volume_change', currentVolume, threshold); + + var history = 0; + if (currentVolume > threshold && !harker.speaking) { + // trigger quickly, short history + for (var i = harker.speakingHistory.length - 3; i < harker.speakingHistory.length; i++) { + history += harker.speakingHistory[i]; + } + if (history >= 2) { + harker.speaking = true; + harker.emit('speaking'); + } + } else if (currentVolume < threshold && harker.speaking) { + for (var i = 0; i < harker.speakingHistory.length; i++) { + history += harker.speakingHistory[i]; + } + if (history == 0) { + harker.speaking = false; + harker.emit('stopped_speaking'); + } + } + harker.speakingHistory.shift(); + harker.speakingHistory.push(0 + (currentVolume > threshold)); + + looper(); + }, interval); + }; + looper(); + + + return harker; +} + +},{"wildemitter":24}],9:[function(require,module,exports){ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } +} + +},{}],10:[function(require,module,exports){ +// Does nothing at all. + +},{}],11:[function(require,module,exports){ +/*! + * @name JavaScript/NodeJS Merge v1.2.0 + * @author yeikos + * @repository https://github.com/yeikos/js.merge + + * Copyright 2014 yeikos - MIT license + * https://raw.github.com/yeikos/js.merge/master/LICENSE + */ + +;(function(isNode) { + + /** + * Merge one or more objects + * @param bool? clone + * @param mixed,... arguments + * @return object + */ + + var Public = function(clone) { + + return merge(clone === true, false, arguments); + + }, publicName = 'merge'; + + /** + * Merge two or more objects recursively + * @param bool? clone + * @param mixed,... arguments + * @return object + */ + + Public.recursive = function(clone) { + + return merge(clone === true, true, arguments); + + }; + + /** + * Clone the input removing any reference + * @param mixed input + * @return mixed + */ + + Public.clone = function(input) { + + var output = input, + type = typeOf(input), + index, size; + + if (type === 'array') { + + output = []; + size = input.length; + + for (index=0;index<size;++index) + + output[index] = Public.clone(input[index]); + + } else if (type === 'object') { + + output = {}; + + for (index in input) + + output[index] = Public.clone(input[index]); + + } + + return output; + + }; + + /** + * Merge two objects recursively + * @param mixed input + * @param mixed extend + * @return mixed + */ + + function merge_recursive(base, extend) { + + if (typeOf(base) !== 'object') + + return extend; + + for (var key in extend) { + + if (typeOf(base[key]) === 'object' && typeOf(extend[key]) === 'object') { + + base[key] = merge_recursive(base[key], extend[key]); + + } else { + + base[key] = extend[key]; + + } + + } + + return base; + + } + + /** + * Merge two or more objects + * @param bool clone + * @param bool recursive + * @param array argv + * @return object + */ + + function merge(clone, recursive, argv) { + + var result = argv[0], + size = argv.length; + + if (clone || typeOf(result) !== 'object') + + result = {}; + + for (var index=0;index<size;++index) { + + var item = argv[index], + + type = typeOf(item); + + if (type !== 'object') continue; + + for (var key in item) { + + var sitem = clone ? Public.clone(item[key]) : item[key]; + + if (recursive) { + + result[key] = merge_recursive(result[key], sitem); + + } else { + + result[key] = sitem; + + } + + } + + } + + return result; + + } + + /** + * Get type of variable + * @param mixed input + * @return string + * + * @see http://jsperf.com/typeofvar + */ + + function typeOf(input) { + + return ({}).toString.call(input).slice(8, -1).toLowerCase(); + + } + + if (isNode) { + + module.exports = Public; + + } else { + + window[publicName] = Public; + + } + +})(typeof module === 'object' && module && typeof module.exports === 'object' && module.exports); +},{}],12:[function(require,module,exports){ +/** + # normalice + + Normalize an ice server configuration object (or plain old string) into a format + that is usable in all browsers supporting WebRTC. Primarily this module is designed + to help with the transition of the `url` attribute of the configuration object to + the `urls` attribute. + + ## Example Usage + + <<< examples/simple.js + +**/ + +var protocols = [ + 'stun:', + 'turn:' +]; + +module.exports = function(input) { + var url = (input || {}).url || input; + var protocol; + var parts; + var output = {}; + + // if we don't have a string url, then allow the input to passthrough + if (typeof url != 'string' && (! (url instanceof String))) { + return input; + } + + // trim the url string, and convert to an array + url = url.trim(); + + // if the protocol is not known, then passthrough + protocol = protocols[protocols.indexOf(url.slice(0, 5))]; + if (! protocol) { + return input; + } + + // now let's attack the remaining url parts + url = url.slice(5); + parts = url.split('@'); + + output.username = input.username; + output.credential = input.credential; + // if we have an authentication part, then set the credentials + if (parts.length > 1) { + url = parts[1]; + parts = parts[0].split(':'); + + // add the output credential and username + output.username = parts[0]; + output.credential = (input || {}).credential || parts[1] || ''; + } + + output.url = protocol + url; + output.urls = [ output.url ]; + + return output; +}; + +},{}],13:[function(require,module,exports){ +var grammar = module.exports = { + v: [{ + name: 'version', + reg: /^(\d*)$/ + }], + o: [{ //o=- 20518 0 IN IP4 203.0.113.1 + // NB: sessionId will be a String in most cases because it is huge + name: 'origin', + reg: /^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/, + names: ['username', 'sessionId', 'sessionVersion', 'netType', 'ipVer', 'address'], + format: "%s %s %d %s IP%d %s" + }], + // default parsing of these only (though some of these feel outdated) + s: [{ name: 'name' }], + i: [{ name: 'description' }], + u: [{ name: 'uri' }], + e: [{ name: 'email' }], + p: [{ name: 'phone' }], + z: [{ name: 'timezones' }], // TODO: this one can actually be parsed properly.. + r: [{ name: 'repeats' }], // TODO: this one can also be parsed properly + //k: [{}], // outdated thing ignored + t: [{ //t=0 0 + name: 'timing', + reg: /^(\d*) (\d*)/, + names: ['start', 'stop'], + format: "%d %d" + }], + c: [{ //c=IN IP4 10.47.197.26 + name: 'connection', + reg: /^IN IP(\d) (\S*)/, + names: ['version', 'ip'], + format: "IN IP%d %s" + }], + b: [{ //b=AS:4000 + push: 'bandwidth', + reg: /^(TIAS|AS|CT|RR|RS):(\d*)/, + names: ['type', 'limit'], + format: "%s:%s" + }], + m: [{ //m=video 51744 RTP/AVP 126 97 98 34 31 + // NB: special - pushes to session + // TODO: rtp/fmtp should be filtered by the payloads found here? + reg: /^(\w*) (\d*) ([\w\/]*)(?: (.*))?/, + names: ['type', 'port', 'protocol', 'payloads'], + format: "%s %d %s %s" + }], + a: [ + { //a=rtpmap:110 opus/48000/2 + push: 'rtp', + reg: /^rtpmap:(\d*) ([\w\-]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/, + names: ['payload', 'codec', 'rate', 'encoding'], + format: function (o) { + return (o.encoding) ? + "rtpmap:%d %s/%s/%s": + o.rate ? + "rtpmap:%d %s/%s": + "rtpmap:%d %s"; + } + }, + { + //a=fmtp:108 profile-level-id=24;object=23;bitrate=64000 + //a=fmtp:111 minptime=10; useinbandfec=1 + push: 'fmtp', + reg: /^fmtp:(\d*) ([\S| ]*)/, + names: ['payload', 'config'], + format: "fmtp:%d %s" + }, + { //a=control:streamid=0 + name: 'control', + reg: /^control:(.*)/, + format: "control:%s" + }, + { //a=rtcp:65179 IN IP4 193.84.77.194 + name: 'rtcp', + reg: /^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/, + names: ['port', 'netType', 'ipVer', 'address'], + format: function (o) { + return (o.address != null) ? + "rtcp:%d %s IP%d %s": + "rtcp:%d"; + } + }, + { //a=rtcp-fb:98 trr-int 100 + push: 'rtcpFbTrrInt', + reg: /^rtcp-fb:(\*|\d*) trr-int (\d*)/, + names: ['payload', 'value'], + format: "rtcp-fb:%d trr-int %d" + }, + { //a=rtcp-fb:98 nack rpsi + push: 'rtcpFb', + reg: /^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/, + names: ['payload', 'type', 'subtype'], + format: function (o) { + return (o.subtype != null) ? + "rtcp-fb:%s %s %s": + "rtcp-fb:%s %s"; + } + }, + { //a=extmap:2 urn:ietf:params:rtp-hdrext:toffset + //a=extmap:1/recvonly URI-gps-string + push: 'ext', + reg: /^extmap:([\w_\/]*) (\S*)(?: (\S*))?/, + names: ['value', 'uri', 'config'], // value may include "/direction" suffix + format: function (o) { + return (o.config != null) ? + "extmap:%s %s %s": + "extmap:%s %s"; + } + }, + { + //a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:PS1uQCVeeCFCanVmcjkpPywjNWhcYD0mXXtxaVBR|2^20|1:32 + push: 'crypto', + reg: /^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/, + names: ['id', 'suite', 'config', 'sessionConfig'], + format: function (o) { + return (o.sessionConfig != null) ? + "crypto:%d %s %s %s": + "crypto:%d %s %s"; + } + }, + { //a=setup:actpass + name: 'setup', + reg: /^setup:(\w*)/, + format: "setup:%s" + }, + { //a=mid:1 + name: 'mid', + reg: /^mid:([^\s]*)/, + format: "mid:%s" + }, + { //a=msid:0c8b064d-d807-43b4-b434-f92a889d8587 98178685-d409-46e0-8e16-7ef0db0db64a + name: 'msid', + reg: /^msid:(.*)/, + format: "msid:%s" + }, + { //a=ptime:20 + name: 'ptime', + reg: /^ptime:(\d*)/, + format: "ptime:%d" + }, + { //a=maxptime:60 + name: 'maxptime', + reg: /^maxptime:(\d*)/, + format: "maxptime:%d" + }, + { //a=sendrecv + name: 'direction', + reg: /^(sendrecv|recvonly|sendonly|inactive)/ + }, + { //a=ice-lite + name: 'icelite', + reg: /^(ice-lite)/ + }, + { //a=ice-ufrag:F7gI + name: 'iceUfrag', + reg: /^ice-ufrag:(\S*)/, + format: "ice-ufrag:%s" + }, + { //a=ice-pwd:x9cml/YzichV2+XlhiMu8g + name: 'icePwd', + reg: /^ice-pwd:(\S*)/, + format: "ice-pwd:%s" + }, + { //a=fingerprint:SHA-1 00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33 + name: 'fingerprint', + reg: /^fingerprint:(\S*) (\S*)/, + names: ['type', 'hash'], + format: "fingerprint:%s %s" + }, + { + //a=candidate:0 1 UDP 2113667327 203.0.113.1 54400 typ host + //a=candidate:1162875081 1 udp 2113937151 192.168.34.75 60017 typ host generation 0 + //a=candidate:3289912957 2 udp 1845501695 193.84.77.194 60017 typ srflx raddr 192.168.34.75 rport 60017 generation 0 + //a=candidate:229815620 1 tcp 1518280447 192.168.150.19 60017 typ host tcptype active generation 0 + //a=candidate:3289912957 2 tcp 1845501695 193.84.77.194 60017 typ srflx raddr 192.168.34.75 rport 60017 tcptype passive generation 0 + push:'candidates', + reg: /^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?/, + names: ['foundation', 'component', 'transport', 'priority', 'ip', 'port', 'type', 'raddr', 'rport', 'tcptype', 'generation'], + format: function (o) { + var str = "candidate:%s %d %s %d %s %d typ %s"; + + str += (o.raddr != null) ? " raddr %s rport %d" : "%v%v"; + + // NB: candidate has three optional chunks, so %void middles one if it's missing + str += (o.tcptype != null) ? " tcptype %s" : "%v"; + + if (o.generation != null) { + str += " generation %d"; + } + return str; + } + }, + { //a=end-of-candidates (keep after the candidates line for readability) + name: 'endOfCandidates', + reg: /^(end-of-candidates)/ + }, + { //a=remote-candidates:1 203.0.113.1 54400 2 203.0.113.1 54401 ... + name: 'remoteCandidates', + reg: /^remote-candidates:(.*)/, + format: "remote-candidates:%s" + }, + { //a=ice-options:google-ice + name: 'iceOptions', + reg: /^ice-options:(\S*)/, + format: "ice-options:%s" + }, + { //a=ssrc:2566107569 cname:t9YU8M1UxTF8Y1A1 + push: "ssrcs", + reg: /^ssrc:(\d*) ([\w_]*):(.*)/, + names: ['id', 'attribute', 'value'], + format: "ssrc:%d %s:%s" + }, + { //a=ssrc-group:FEC 1 2 + push: "ssrcGroups", + reg: /^ssrc-group:(\w*) (.*)/, + names: ['semantics', 'ssrcs'], + format: "ssrc-group:%s %s" + }, + { //a=msid-semantic: WMS Jvlam5X3SX1OP6pn20zWogvaKJz5Hjf9OnlV + name: "msidSemantic", + reg: /^msid-semantic:\s?(\w*) (\S*)/, + names: ['semantic', 'token'], + format: "msid-semantic: %s %s" // space after ":" is not accidental + }, + { //a=group:BUNDLE audio video + push: 'groups', + reg: /^group:(\w*) (.*)/, + names: ['type', 'mids'], + format: "group:%s %s" + }, + { //a=rtcp-mux + name: 'rtcpMux', + reg: /^(rtcp-mux)/ + }, + { //a=rtcp-rsize + name: 'rtcpRsize', + reg: /^(rtcp-rsize)/ + }, + { // any a= that we don't understand is kepts verbatim on media.invalid + push: 'invalid', + names: ["value"] + } + ] +}; + +// set sensible defaults to avoid polluting the grammar with boring details +Object.keys(grammar).forEach(function (key) { + var objs = grammar[key]; + objs.forEach(function (obj) { + if (!obj.reg) { + obj.reg = /(.*)/; + } + if (!obj.format) { + obj.format = "%s"; + } + }); +}); + +},{}],14:[function(require,module,exports){ +var parser = require('./parser'); +var writer = require('./writer'); + +exports.write = writer; +exports.parse = parser.parse; +exports.parseFmtpConfig = parser.parseFmtpConfig; +exports.parsePayloads = parser.parsePayloads; +exports.parseRemoteCandidates = parser.parseRemoteCandidates; + +},{"./parser":15,"./writer":16}],15:[function(require,module,exports){ +var toIntIfInt = function (v) { + return String(Number(v)) === v ? Number(v) : v; +}; + +var attachProperties = function (match, location, names, rawName) { + if (rawName && !names) { + location[rawName] = toIntIfInt(match[1]); + } + else { + for (var i = 0; i < names.length; i += 1) { + if (match[i+1] != null) { + location[names[i]] = toIntIfInt(match[i+1]); + } + } + } +}; + +var parseReg = function (obj, location, content) { + var needsBlank = obj.name && obj.names; + if (obj.push && !location[obj.push]) { + location[obj.push] = []; + } + else if (needsBlank && !location[obj.name]) { + location[obj.name] = {}; + } + var keyLocation = obj.push ? + {} : // blank object that will be pushed + needsBlank ? location[obj.name] : location; // otherwise, named location or root + + attachProperties(content.match(obj.reg), keyLocation, obj.names, obj.name); + + if (obj.push) { + location[obj.push].push(keyLocation); + } +}; + +var grammar = require('./grammar'); +var validLine = RegExp.prototype.test.bind(/^([a-z])=(.*)/); + +exports.parse = function (sdp) { + var session = {} + , media = [] + , location = session; // points at where properties go under (one of the above) + + // parse lines we understand + sdp.split(/(\r\n|\r|\n)/).filter(validLine).forEach(function (l) { + var type = l[0]; + var content = l.slice(2); + if (type === 'm') { + media.push({rtp: [], fmtp: []}); + location = media[media.length-1]; // point at latest media line + } + + for (var j = 0; j < (grammar[type] || []).length; j += 1) { + var obj = grammar[type][j]; + if (obj.reg.test(content)) { + return parseReg(obj, location, content); + } + } + }); + + session.media = media; // link it up + return session; +}; + +var fmtpReducer = function (acc, expr) { + var s = expr.split('='); + if (s.length === 2) { + acc[s[0]] = toIntIfInt(s[1]); + } + return acc; +}; + +exports.parseFmtpConfig = function (str) { + return str.split(/\;\s?/).reduce(fmtpReducer, {}); +}; + +exports.parsePayloads = function (str) { + return str.split(' ').map(Number); +}; + +exports.parseRemoteCandidates = function (str) { + var candidates = []; + var parts = str.split(' ').map(toIntIfInt); + for (var i = 0; i < parts.length; i += 3) { + candidates.push({ + component: parts[i], + ip: parts[i + 1], + port: parts[i + 2] + }); + } + return candidates; +}; + +},{"./grammar":13}],16:[function(require,module,exports){ +var grammar = require('./grammar'); + +// customized util.format - discards excess arguments and can void middle ones +var formatRegExp = /%[sdv%]/g; +var format = function (formatStr) { + var i = 1; + var args = arguments; + var len = args.length; + return formatStr.replace(formatRegExp, function (x) { + if (i >= len) { + return x; // missing argument + } + var arg = args[i]; + i += 1; + switch (x) { + case '%%': + return '%'; + case '%s': + return String(arg); + case '%d': + return Number(arg); + case '%v': + return ''; + } + }); + // NB: we discard excess arguments - they are typically undefined from makeLine +}; + +var makeLine = function (type, obj, location) { + var str = obj.format instanceof Function ? + (obj.format(obj.push ? location : location[obj.name])) : + obj.format; + + var args = [type + '=' + str]; + if (obj.names) { + for (var i = 0; i < obj.names.length; i += 1) { + var n = obj.names[i]; + if (obj.name) { + args.push(location[obj.name][n]); + } + else { // for mLine and push attributes + args.push(location[obj.names[i]]); + } + } + } + else { + args.push(location[obj.name]); + } + return format.apply(null, args); +}; + +// RFC specified order +// TODO: extend this with all the rest +var defaultOuterOrder = [ + 'v', 'o', 's', 'i', + 'u', 'e', 'p', 'c', + 'b', 't', 'r', 'z', 'a' +]; +var defaultInnerOrder = ['i', 'c', 'b', 'a']; + + +module.exports = function (session, opts) { + opts = opts || {}; + // ensure certain properties exist + if (session.version == null) { + session.version = 0; // "v=0" must be there (only defined version atm) + } + if (session.name == null) { + session.name = " "; // "s= " must be there if no meaningful name set + } + session.media.forEach(function (mLine) { + if (mLine.payloads == null) { + mLine.payloads = ""; + } + }); + + var outerOrder = opts.outerOrder || defaultOuterOrder; + var innerOrder = opts.innerOrder || defaultInnerOrder; + var sdp = []; + + // loop through outerOrder for matching properties on session + outerOrder.forEach(function (type) { + grammar[type].forEach(function (obj) { + if (obj.name in session && session[obj.name] != null) { + sdp.push(makeLine(type, obj, session)); + } + else if (obj.push in session && session[obj.push] != null) { + session[obj.push].forEach(function (el) { + sdp.push(makeLine(type, obj, el)); + }); + } + }); + }); + + // then for each media line, follow the innerOrder + session.media.forEach(function (mLine) { + sdp.push(makeLine('m', grammar.m[0], mLine)); + + innerOrder.forEach(function (type) { + grammar[type].forEach(function (obj) { + if (obj.name in mLine && mLine[obj.name] != null) { + sdp.push(makeLine(type, obj, mLine)); + } + else if (obj.push in mLine && mLine[obj.push] != null) { + mLine[obj.push].forEach(function (el) { + sdp.push(makeLine(type, obj, el)); + }); + } + }); + }); + }); + + return sdp.join('\r\n') + '\r\n'; +}; + +},{"./grammar":13}],17:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +module.exports = function arrayEquals(array) { + // if the other array is a falsy value, return + if (!array) + return false; + + // compare lengths - can save a lot of time + if (this.length != array.length) + return false; + + for (var i = 0, l = this.length; i < l; i++) { + // Check if we have nested arrays + if (this[i] instanceof Array && array[i] instanceof Array) { + // recurse into the nested arrays + if (!arrayEquals.apply(this[i], [array[i]])) + return false; + } else if (this[i] != array[i]) { + // Warning - two different object instances will never be equal: + // {x:20} != {x:20} + return false; + } + } + return true; +}; + + +},{}],18:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +exports.Interop = require('./interop'); + +},{"./interop":19}],19:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* global RTCSessionDescription */ +/* global RTCIceCandidate */ +/* jshint -W097 */ +"use strict"; + +var transform = require('./transform'); +var arrayEquals = require('./array-equals'); + +function Interop() { + + /** + * This map holds the most recent Unified Plan offer/answer SDP that was + * converted to Plan B, with the SDP type ('offer' or 'answer') as keys and + * the SDP string as values. + * + * @type {{}} + */ + this.cache = { + mlB2UMap : {}, + mlU2BMap : {} + }; +} + +module.exports = Interop; + +/** + * Changes the candidate args to match with the related Unified Plan + */ +Interop.prototype.candidateToUnifiedPlan = function(candidate) { + var cand = new RTCIceCandidate(candidate); + + cand.sdpMLineIndex = this.cache.mlB2UMap[cand.sdpMLineIndex]; + /* TODO: change sdpMid to (audio|video)-SSRC */ + + return cand; +}; + +/** + * Changes the candidate args to match with the related Plan B + */ +Interop.prototype.candidateToPlanB = function(candidate) { + var cand = new RTCIceCandidate(candidate); + + if (cand.sdpMid.indexOf('audio') === 0) { + cand.sdpMid = 'audio'; + } else if (cand.sdpMid.indexOf('video') === 0) { + cand.sdpMid = 'video'; + } else { + throw new Error('candidate with ' + cand.sdpMid + ' not allowed'); + } + + cand.sdpMLineIndex = this.cache.mlU2BMap[cand.sdpMLineIndex]; + + return cand; +}; + +/** + * Returns the index of the first m-line with the given media type and with a + * direction which allows sending, in the last Unified Plan description with + * type "answer" converted to Plan B. Returns {null} if there is no saved + * answer, or if none of its m-lines with the given type allow sending. + * @param type the media type ("audio" or "video"). + * @returns {*} + */ +Interop.prototype.getFirstSendingIndexFromAnswer = function(type) { + if (!this.cache.answer) { + return null; + } + + var session = transform.parse(this.cache.answer); + if (session && session.media && Array.isArray(session.media)){ + for (var i = 0; i < session.media.length; i++) { + if (session.media[i].type == type && + (!session.media[i].direction /* default to sendrecv */ || + session.media[i].direction === 'sendrecv' || + session.media[i].direction === 'sendonly')){ + return i; + } + } + } + + return null; +}; + +/** + * This method transforms a Unified Plan SDP to an equivalent Plan B SDP. A + * PeerConnection wrapper transforms the SDP to Plan B before passing it to the + * application. + * + * @param desc + * @returns {*} + */ +Interop.prototype.toPlanB = function(desc) { + var self = this; + //#region Preliminary input validation. + + if (typeof desc !== 'object' || desc === null || + typeof desc.sdp !== 'string') { + console.warn('An empty description was passed as an argument.'); + return desc; + } + + // Objectify the SDP for easier manipulation. + var session = transform.parse(desc.sdp); + + // If the SDP contains no media, there's nothing to transform. + if (typeof session.media === 'undefined' || + !Array.isArray(session.media) || session.media.length === 0) { + console.warn('The description has no media.'); + return desc; + } + + // Try some heuristics to "make sure" this is a Unified Plan SDP. Plan B + // SDP has a video, an audio and a data "channel" at most. + if (session.media.length <= 3 && session.media.every(function(m) { + return ['video', 'audio', 'data'].indexOf(m.mid) !== -1; + })) { + console.warn('This description does not look like Unified Plan.'); + return desc; + } + + //#endregion + + // HACK https://bugzilla.mozilla.org/show_bug.cgi?id=1113443 + var sdp = desc.sdp; + var rewrite = false; + for (var i = 0; i < session.media.length; i++) { + var uLine = session.media[i]; + uLine.rtp.forEach(function(rtp) { + if (rtp.codec === 'NULL') + { + rewrite = true; + var offer = transform.parse(self.cache.offer); + rtp.codec = offer.media[i].rtp[0].codec; + } + }); + } + if (rewrite) { + sdp = transform.write(session); + } + + // Unified Plan SDP is our "precious". Cache it for later use in the Plan B + // -> Unified Plan transformation. + this.cache[desc.type] = sdp; + + //#region Convert from Unified Plan to Plan B. + + // We rebuild the session.media array. + var media = session.media; + session.media = []; + + // Associative array that maps channel types to channel objects for fast + // access to channel objects by their type, e.g. type2bl['audio']->channel + // obj. + var type2bl = {}; + + // Used to build the group:BUNDLE value after the channels construction + // loop. + var types = []; + + media.forEach(function(uLine) { + // rtcp-mux is required in the Plan B SDP. + if ((typeof uLine.rtcpMux !== 'string' || + uLine.rtcpMux !== 'rtcp-mux') && + uLine.direction !== 'inactive') { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'without the rtcp-mux attribute were found.'); + } + + // If we don't have a channel for this uLine.type OR the selected is + // inactive, then select this uLine as the channel basis. + if (typeof type2bl[uLine.type] === 'undefined' || + type2bl[uLine.type].direction === 'inactive') { + type2bl[uLine.type] = uLine; + } + + if (uLine.protocol != type2bl[uLine.type].protocol) { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'have different protocols and this library does not have ' + + 'support for that'); + } + + if (uLine.payloads != type2bl[uLine.type].payloads) { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'have different payloads and this library does not have ' + + 'support for that'); + } + + }); + + // Implode the Unified Plan m-lines/tracks into Plan B channels. + media.forEach(function(uLine) { + if (uLine.type === 'application') { + session.media.push(uLine); + types.push(uLine.mid); + return; + } + + // Add sources to the channel and handle a=msid. + if (typeof uLine.sources === 'object') { + Object.keys(uLine.sources).forEach(function(ssrc) { + if (typeof type2bl[uLine.type].sources !== 'object') + type2bl[uLine.type].sources = {}; + + // Assign the sources to the channel. + type2bl[uLine.type].sources[ssrc] = + uLine.sources[ssrc]; + + if (typeof uLine.msid !== 'undefined') { + // In Plan B the msid is an SSRC attribute. Also, we don't + // care about the obsolete label and mslabel attributes. + // + // Note that it is not guaranteed that the uLine will + // have an msid. recvonly channels in particular don't have + // one. + type2bl[uLine.type].sources[ssrc].msid = + uLine.msid; + } + // NOTE ssrcs in ssrc groups will share msids, as + // draft-uberti-rtcweb-plan-00 mandates. + }); + } + + // Add ssrc groups to the channel. + if (typeof uLine.ssrcGroups !== 'undefined' && + Array.isArray(uLine.ssrcGroups)) { + + // Create the ssrcGroups array, if it's not defined. + if (typeof type2bl[uLine.type].ssrcGroups === 'undefined' || + !Array.isArray(type2bl[uLine.type].ssrcGroups)) { + type2bl[uLine.type].ssrcGroups = []; + } + + type2bl[uLine.type].ssrcGroups = + type2bl[uLine.type].ssrcGroups.concat( + uLine.ssrcGroups); + } + + if (type2bl[uLine.type] === uLine) { + // Plan B mids are in ['audio', 'video', 'data'] + uLine.mid = uLine.type; + + // Plan B doesn't support/need the bundle-only attribute. + delete uLine.bundleOnly; + + // In Plan B the msid is an SSRC attribute. + delete uLine.msid; + + if (uLine.type == media[0].type) { + types.unshift(uLine.type); + // Add the channel to the new media array. + session.media.unshift(uLine); + } else { + types.push(uLine.type); + // Add the channel to the new media array. + session.media.push(uLine); + } + } + }); + + if (typeof session.groups !== 'undefined') { + // We regenerate the BUNDLE group with the new mids. + session.groups.some(function(group) { + if (group.type === 'BUNDLE') { + group.mids = types.join(' '); + return true; + } + }); + } + + // msid semantic + session.msidSemantic = { + semantic: 'WMS', + token: '*' + }; + + var resStr = transform.write(session); + + return new RTCSessionDescription({ + type: desc.type, + sdp: resStr + }); + + //#endregion +}; + +/* follow rules defined in RFC4145 */ +function addSetupAttr(uLine) { + if (typeof uLine.setup === 'undefined') { + return; + } + + if (uLine.setup === "active") { + uLine.setup = "passive"; + } else if (uLine.setup === "passive") { + uLine.setup = "active"; + } +} + +/** + * This method transforms a Plan B SDP to an equivalent Unified Plan SDP. A + * PeerConnection wrapper transforms the SDP to Unified Plan before passing it + * to FF. + * + * @param desc + * @returns {*} + */ +Interop.prototype.toUnifiedPlan = function(desc) { + var self = this; + //#region Preliminary input validation. + + if (typeof desc !== 'object' || desc === null || + typeof desc.sdp !== 'string') { + console.warn('An empty description was passed as an argument.'); + return desc; + } + + var session = transform.parse(desc.sdp); + + // If the SDP contains no media, there's nothing to transform. + if (typeof session.media === 'undefined' || + !Array.isArray(session.media) || session.media.length === 0) { + console.warn('The description has no media.'); + return desc; + } + + // Try some heuristics to "make sure" this is a Plan B SDP. Plan B SDP has + // a video, an audio and a data "channel" at most. + if (session.media.length > 3 || !session.media.every(function(m) { + return ['video', 'audio', 'data'].indexOf(m.mid) !== -1; + })) { + console.warn('This description does not look like Plan B.'); + return desc; + } + + // Make sure this Plan B SDP can be converted to a Unified Plan SDP. + var mids = []; + session.media.forEach(function(m) { + mids.push(m.mid); + }); + + var hasBundle = false; + if (typeof session.groups !== 'undefined' && + Array.isArray(session.groups)) { + hasBundle = session.groups.every(function(g) { + return g.type !== 'BUNDLE' || + arrayEquals.apply(g.mids.sort(), [mids.sort()]); + }); + } + + if (!hasBundle) { + var mustBeBundle = false; + + session.media.forEach(function(m) { + if (m.direction !== 'inactive') { + mustBeBundle = true; + } + }); + + if (mustBeBundle) { + throw new Error("Cannot convert to Unified Plan because m-lines that" + + " are not bundled were found."); + } + } + + //#endregion + + + //#region Convert from Plan B to Unified Plan. + + // Unfortunately, a Plan B offer/answer doesn't have enough information to + // rebuild an equivalent Unified Plan offer/answer. + // + // For example, if this is a local answer (in Unified Plan style) that we + // convert to Plan B prior to handing it over to the application (the + // PeerConnection wrapper called us, for instance, after a successful + // createAnswer), we want to remember the m-line at which we've seen the + // (local) SSRC. That's because when the application wants to do call the + // SLD method, forcing us to do the inverse transformation (from Plan B to + // Unified Plan), we need to know to which m-line to assign the (local) + // SSRC. We also need to know all the other m-lines that the original + // answer had and include them in the transformed answer as well. + // + // Another example is if this is a remote offer that we convert to Plan B + // prior to giving it to the application, we want to remember the mid at + // which we've seen the (remote) SSRC. + // + // In the iteration that follows, we use the cached Unified Plan (if it + // exists) to assign mids to ssrcs. + + var type; + if (desc.type === 'answer') { + type = 'offer'; + } else if (desc.type === 'offer') { + type = 'answer'; + } else { + throw new Error("Type '" + desc.type + "' not supported."); + } + + var cached; + if (typeof this.cache[type] !== 'undefined') { + cached = transform.parse(this.cache[type]); + } + + var recvonlySsrcs = { + audio: {}, + video: {} + }; + + // A helper map that sends mids to m-line objects. We use it later to + // rebuild the Unified Plan style session.media array. + var mid2ul = {}; + var bIdx = 0; + var uIdx = 0; + + var sources2ul = {}; + + var candidates; + var iceUfrag; + var icePwd; + var fingerprint; + var payloads = {}; + var rtcpFb = {}; + var rtp = {}; + + session.media.forEach(function(bLine) { + if ((typeof bLine.rtcpMux !== 'string' || + bLine.rtcpMux !== 'rtcp-mux') && + bLine.direction !== 'inactive') { + throw new Error("Cannot convert to Unified Plan because m-lines " + + "without the rtcp-mux attribute were found."); + } + + if (bLine.type === 'application') { + mid2ul[bLine.mid] = bLine; + return; + } + + // With rtcp-mux and bundle all the channels should have the same ICE + // stuff. + var sources = bLine.sources; + var ssrcGroups = bLine.ssrcGroups; + var port = bLine.port; + + /* Chrome adds different candidates even using bundle, so we concat the candidates list */ + if (typeof bLine.candidates != 'undefined') { + if (typeof candidates != 'undefined') { + candidates = candidates.concat(bLine.candidates); + } else { + candidates = bLine.candidates; + } + } + + if ((typeof iceUfrag != 'undefined') && (typeof bLine.iceUfrag != 'undefined') && (iceUfrag != bLine.iceUfrag)) { + throw new Error("Only BUNDLE supported, iceUfrag must be the same for all m-lines.\n" + + "\tLast iceUfrag: " + iceUfrag + "\n" + + "\tNew iceUfrag: " + bLine.iceUfrag + ); + } + + if (typeof bLine.iceUfrag != 'undefined') { + iceUfrag = bLine.iceUfrag; + } + + if ((typeof icePwd != 'undefined') && (typeof bLine.icePwd != 'undefined') && (icePwd != bLine.icePwd)) { + throw new Error("Only BUNDLE supported, icePwd must be the same for all m-lines.\n" + + "\tLast icePwd: " + icePwd + "\n" + + "\tNew icePwd: " + bLine.icePwd + ); + } + + if (typeof bLine.icePwd != 'undefined') { + icePwd = bLine.icePwd; + } + + if ((typeof fingerprint != 'undefined') && (typeof bLine.fingerprint != 'undefined') && + (fingerprint.type != bLine.fingerprint.type || fingerprint.hash != bLine.fingerprint.hash)) { + throw new Error("Only BUNDLE supported, fingerprint must be the same for all m-lines.\n" + + "\tLast fingerprint: " + JSON.stringify(fingerprint) + "\n" + + "\tNew fingerprint: " + JSON.stringify(bLine.fingerprint) + ); + } + + if (typeof bLine.fingerprint != 'undefined') { + fingerprint = bLine.fingerprint; + } + + payloads[bLine.type] = bLine.payloads; + rtcpFb[bLine.type] = bLine.rtcpFb; + rtp[bLine.type] = bLine.rtp; + + // inverted ssrc group map + var ssrc2group = {}; + if (typeof ssrcGroups !== 'undefined' && Array.isArray(ssrcGroups)) { + ssrcGroups.forEach(function (ssrcGroup) { + // XXX This might brake if an SSRC is in more than one group + // for some reason. + if (typeof ssrcGroup.ssrcs !== 'undefined' && + Array.isArray(ssrcGroup.ssrcs)) { + ssrcGroup.ssrcs.forEach(function (ssrc) { + if (typeof ssrc2group[ssrc] === 'undefined') { + ssrc2group[ssrc] = []; + } + + ssrc2group[ssrc].push(ssrcGroup); + }); + } + }); + } + + // ssrc to m-line index. + var ssrc2ml = {}; + + if (typeof sources === 'object') { + + // We'll use the "bLine" object as a prototype for each new "mLine" + // that we create, but first we need to clean it up a bit. + delete bLine.sources; + delete bLine.ssrcGroups; + delete bLine.candidates; + delete bLine.iceUfrag; + delete bLine.icePwd; + delete bLine.fingerprint; + delete bLine.port; + delete bLine.mid; + + // Explode the Plan B channel sources with one m-line per source. + Object.keys(sources).forEach(function(ssrc) { + + // The (unified) m-line for this SSRC. We either create it from + // scratch or, if it's a grouped SSRC, we re-use a related + // mline. In other words, if the source is grouped with another + // source, put the two together in the same m-line. + var uLine; + + // We assume here that we are the answerer in the O/A, so any + // offers which we translate come from the remote side, while + // answers are local. So the check below is to make that we + // handle receive-only SSRCs in a special way only if they come + // from the remote side. + if (desc.type==='offer') { + // We want to detect SSRCs which are used by a remote peer + // in an m-line with direction=recvonly (i.e. they are + // being used for RTCP only). + // This information would have gotten lost if the remote + // peer used Unified Plan and their local description was + // translated to Plan B. So we use the lack of an MSID + // attribute to deduce a "receive only" SSRC. + if (!sources[ssrc].msid) { + recvonlySsrcs[bLine.type][ssrc] = sources[ssrc]; + // Receive-only SSRCs must not create new m-lines. We + // will assign them to an existing m-line later. + return; + } + } + + if (typeof ssrc2group[ssrc] !== 'undefined' && + Array.isArray(ssrc2group[ssrc])) { + ssrc2group[ssrc].some(function (ssrcGroup) { + // ssrcGroup.ssrcs *is* an Array, no need to check + // again here. + return ssrcGroup.ssrcs.some(function (related) { + if (typeof ssrc2ml[related] === 'object') { + uLine = ssrc2ml[related]; + return true; + } + }); + }); + } + + if (typeof uLine === 'object') { + // the m-line already exists. Just add the source. + uLine.sources[ssrc] = sources[ssrc]; + delete sources[ssrc].msid; + } else { + // Use the "bLine" as a prototype for the "uLine". + uLine = Object.create(bLine); + ssrc2ml[ssrc] = uLine; + + if (typeof sources[ssrc].msid !== 'undefined') { + // Assign the msid of the source to the m-line. Note + // that it is not guaranteed that the source will have + // msid. In particular "recvonly" sources don't have an + // msid. Note that "recvonly" is a term only defined + // for m-lines. + uLine.msid = sources[ssrc].msid; + delete sources[ssrc].msid; + } + + // We assign one SSRC per media line. + uLine.sources = {}; + uLine.sources[ssrc] = sources[ssrc]; + uLine.ssrcGroups = ssrc2group[ssrc]; + + // Use the cached Unified Plan SDP (if it exists) to assign + // SSRCs to mids. + if (typeof cached !== 'undefined' && + typeof cached.media !== 'undefined' && + Array.isArray(cached.media)) { + + cached.media.forEach(function (m) { + if (typeof m.sources === 'object') { + Object.keys(m.sources).forEach(function (s) { + if (s === ssrc) { + uLine.mid = m.mid; + } + }); + } + }); + } + + if (typeof uLine.mid === 'undefined') { + + // If this is an SSRC that we see for the first time + // assign it a new mid. This is typically the case when + // this method is called to transform a remote + // description for the first time or when there is a + // new SSRC in the remote description because a new + // peer has joined the conference. Local SSRCs should + // have already been added to the map in the toPlanB + // method. + // + // Because FF generates answers in Unified Plan style, + // we MUST already have a cached answer with all the + // local SSRCs mapped to some m-line/mid. + + uLine.mid = [bLine.type, '-', ssrc].join(''); + } + + // Include the candidates in the 1st media line. + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + uLine.port = port; + + mid2ul[uLine.mid] = uLine; + sources2ul[uIdx] = uLine.sources; + + self.cache.mlU2BMap[uIdx] = bIdx; + if (typeof self.cache.mlB2UMap[bIdx] === 'undefined') { + self.cache.mlB2UMap[bIdx] = uIdx; + } + uIdx++; + } + }); + } else { + var uLine = bLine; + + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + uLine.port = port; + + mid2ul[uLine.mid] = uLine; + + self.cache.mlU2BMap[uIdx] = bIdx; + if (typeof self.cache.mlB2UMap[bIdx] === 'undefined') { + self.cache.mlB2UMap[bIdx] = uIdx; + } + } + + bIdx++; + }); + + // Rebuild the media array in the right order and add the missing mLines + // (missing from the Plan B SDP). + session.media = []; + mids = []; // reuse + + if (desc.type === 'answer') { + + // The media lines in the answer must match the media lines in the + // offer. The order is important too. Here we assume that Firefox is + // the answerer, so we merely have to use the reconstructed (unified) + // answer to update the cached (unified) answer accordingly. + // + // In the general case, one would have to use the cached (unified) + // offer to find the m-lines that are missing from the reconstructed + // answer, potentially grabbing them from the cached (unified) answer. + // One has to be careful with this approach because inactive m-lines do + // not always have an mid, making it tricky (impossible?) to find where + // exactly and which m-lines are missing from the reconstructed answer. + + for (var i = 0; i < cached.media.length; i++) { + var uLine = cached.media[i]; + + delete uLine.msid; + delete uLine.sources; + delete uLine.ssrcGroups; + + if (typeof sources2ul[i] === 'undefined') { + if (!uLine.direction + || uLine.direction === 'sendrecv') + uLine.direction = 'recvonly'; + else if (uLine.direction === 'sendonly') + uLine.direction = 'inactive'; + } else { + if (!uLine.direction + || uLine.direction === 'sendrecv') + uLine.direction = 'sendrecv'; + else if (uLine.direction === 'recvonly') + uLine.direction = 'sendonly'; + } + + uLine.sources = sources2ul[i]; + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + + uLine.rtp = rtp[uLine.type]; + uLine.payloads = payloads[uLine.type]; + uLine.rtcpFb = rtcpFb[uLine.type]; + + session.media.push(uLine); + + if (typeof uLine.mid === 'string') { + // inactive lines don't/may not have an mid. + mids.push(uLine.mid); + } + } + } else { + + // SDP offer/answer (and the JSEP spec) forbids removing an m-section + // under any circumstances. If we are no longer interested in sending a + // track, we just remove the msid and ssrc attributes and set it to + // either a=recvonly (as the reofferer, we must use recvonly if the + // other side was previously sending on the m-section, but we can also + // leave the possibility open if it wasn't previously in use), or + // a=inactive. + + if (typeof cached !== 'undefined' && + typeof cached.media !== 'undefined' && + Array.isArray(cached.media)) { + cached.media.forEach(function(uLine) { + mids.push(uLine.mid); + if (typeof mid2ul[uLine.mid] !== 'undefined') { + session.media.push(mid2ul[uLine.mid]); + } else { + delete uLine.msid; + delete uLine.sources; + delete uLine.ssrcGroups; + + if (!uLine.direction + || uLine.direction === 'sendrecv') { + uLine.direction = 'sendonly'; + } + if (!uLine.direction + || uLine.direction === 'recvonly') { + uLine.direction = 'inactive'; + } + + addSetupAttr (uLine); + session.media.push(uLine); + } + }); + } + + // Add all the remaining (new) m-lines of the transformed SDP. + Object.keys(mid2ul).forEach(function(mid) { + if (mids.indexOf(mid) === -1) { + mids.push(mid); + if (mid2ul[mid].direction === 'recvonly') { + // This is a remote recvonly channel. Add its SSRC to the + // appropriate sendrecv or sendonly channel. + // TODO(gp) what if we don't have sendrecv/sendonly + // channel? + + var done = false; + + session.media.some(function (uLine) { + if ((uLine.direction === 'sendrecv' || + uLine.direction === 'sendonly') && + uLine.type === mid2ul[mid].type) { + // mid2ul[mid] shouldn't have any ssrc-groups + Object.keys(mid2ul[mid].sources).forEach( + function (ssrc) { + uLine.sources[ssrc] = + mid2ul[mid].sources[ssrc]; + }); + + done = true; + return true; + } + }); + + if (!done) { + session.media.push(mid2ul[mid]); + } + } else { + session.media.push(mid2ul[mid]); + } + } + }); + } + + // After we have constructed the Plan Unified m-lines we can figure out + // where (in which m-line) to place the 'recvonly SSRCs'. + // Note: we assume here that we are the answerer in the O/A, so any offers + // which we translate come from the remote side, while answers are local + // (and so our last local description is cached as an 'answer'). + ["audio", "video"].forEach(function (type) { + if (!session || !session.media || !Array.isArray(session.media)) + return; + + var idx = null; + if (Object.keys(recvonlySsrcs[type]).length > 0) { + idx = self.getFirstSendingIndexFromAnswer(type); + if (idx === null){ + // If this is the first offer we receive, we don't have a + // cached answer. Assume that we will be sending media using + // the first m-line for each media type. + + for (var i = 0; i < session.media.length; i++) { + if (session.media[i].type === type) { + idx = i; + break; + } + } + } + } + + if (idx && session.media.length > idx) { + var mLine = session.media[idx]; + Object.keys(recvonlySsrcs[type]).forEach(function(ssrc) { + if (mLine.sources && mLine.sources[ssrc]) { + console.warn("Replacing an existing SSRC."); + } + if (!mLine.sources) { + mLine.sources = {}; + } + + mLine.sources[ssrc] = recvonlySsrcs[type][ssrc]; + }); + } + }); + + if (typeof session.groups !== 'undefined') { + // We regenerate the BUNDLE group (since we regenerated the mids) + session.groups.some(function(group) { + if (group.type === 'BUNDLE') { + group.mids = mids.join(' '); + return true; + } + }); + } + + // msid semantic + session.msidSemantic = { + semantic: 'WMS', + token: '*' + }; + + var resStr = transform.write(session); + + // Cache the transformed SDP (Unified Plan) for later re-use in this + // function. + this.cache[desc.type] = resStr; + + return new RTCSessionDescription({ + type: desc.type, + sdp: resStr + }); + + //#endregion +}; + +},{"./array-equals":17,"./transform":20}],20:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +var transform = require('sdp-transform'); + +exports.write = function(session, opts) { + + if (typeof session !== 'undefined' && + typeof session.media !== 'undefined' && + Array.isArray(session.media)) { + + session.media.forEach(function (mLine) { + // expand sources to ssrcs + if (typeof mLine.sources !== 'undefined' && + Object.keys(mLine.sources).length !== 0) { + mLine.ssrcs = []; + Object.keys(mLine.sources).forEach(function (ssrc) { + var source = mLine.sources[ssrc]; + Object.keys(source).forEach(function (attribute) { + mLine.ssrcs.push({ + id: ssrc, + attribute: attribute, + value: source[attribute] + }); + }); + }); + delete mLine.sources; + } + + // join ssrcs in ssrc groups + if (typeof mLine.ssrcGroups !== 'undefined' && + Array.isArray(mLine.ssrcGroups)) { + mLine.ssrcGroups.forEach(function (ssrcGroup) { + if (typeof ssrcGroup.ssrcs !== 'undefined' && + Array.isArray(ssrcGroup.ssrcs)) { + ssrcGroup.ssrcs = ssrcGroup.ssrcs.join(' '); + } + }); + } + }); + } + + // join group mids + if (typeof session !== 'undefined' && + typeof session.groups !== 'undefined' && Array.isArray(session.groups)) { + + session.groups.forEach(function (g) { + if (typeof g.mids !== 'undefined' && Array.isArray(g.mids)) { + g.mids = g.mids.join(' '); + } + }); + } + + return transform.write(session, opts); +}; + +exports.parse = function(sdp) { + var session = transform.parse(sdp); + + if (typeof session !== 'undefined' && typeof session.media !== 'undefined' && + Array.isArray(session.media)) { + + session.media.forEach(function (mLine) { + // group sources attributes by ssrc + if (typeof mLine.ssrcs !== 'undefined' && Array.isArray(mLine.ssrcs)) { + mLine.sources = {}; + mLine.ssrcs.forEach(function (ssrc) { + if (!mLine.sources[ssrc.id]) + mLine.sources[ssrc.id] = {}; + mLine.sources[ssrc.id][ssrc.attribute] = ssrc.value; + }); + + delete mLine.ssrcs; + } + + // split ssrcs in ssrc groups + if (typeof mLine.ssrcGroups !== 'undefined' && + Array.isArray(mLine.ssrcGroups)) { + mLine.ssrcGroups.forEach(function (ssrcGroup) { + if (typeof ssrcGroup.ssrcs === 'string') { + ssrcGroup.ssrcs = ssrcGroup.ssrcs.split(' '); + } + }); + } + }); + } + // split group mids + if (typeof session !== 'undefined' && + typeof session.groups !== 'undefined' && Array.isArray(session.groups)) { + + session.groups.forEach(function (g) { + if (typeof g.mids === 'string') { + g.mids = g.mids.split(' '); + } + }); + } + + return session; +}; + + +},{"sdp-transform":14}],21:[function(require,module,exports){ +/** + * UAParser.js v0.7.17 + * Lightweight JavaScript-based User-Agent string parser + * https://github.com/faisalman/ua-parser-js + * + * Copyright © 2012-2016 Faisal Salman <fyzlman@gmail.com> + * Dual licensed under GPLv2 & MIT + */ + +(function (window, undefined) { + + 'use strict'; + + ////////////// + // Constants + ///////////// + + + var LIBVERSION = '0.7.17', + EMPTY = '', + UNKNOWN = '?', + FUNC_TYPE = 'function', + UNDEF_TYPE = 'undefined', + OBJ_TYPE = 'object', + STR_TYPE = 'string', + MAJOR = 'major', // deprecated + MODEL = 'model', + NAME = 'name', + TYPE = 'type', + VENDOR = 'vendor', + VERSION = 'version', + ARCHITECTURE= 'architecture', + CONSOLE = 'console', + MOBILE = 'mobile', + TABLET = 'tablet', + SMARTTV = 'smarttv', + WEARABLE = 'wearable', + EMBEDDED = 'embedded'; + + + /////////// + // Helper + ////////// + + + var util = { + extend : function (regexes, extensions) { + var margedRegexes = {}; + for (var i in regexes) { + if (extensions[i] && extensions[i].length % 2 === 0) { + margedRegexes[i] = extensions[i].concat(regexes[i]); + } else { + margedRegexes[i] = regexes[i]; + } + } + return margedRegexes; + }, + has : function (str1, str2) { + if (typeof str1 === "string") { + return str2.toLowerCase().indexOf(str1.toLowerCase()) !== -1; + } else { + return false; + } + }, + lowerize : function (str) { + return str.toLowerCase(); + }, + major : function (version) { + return typeof(version) === STR_TYPE ? version.replace(/[^\d\.]/g,'').split(".")[0] : undefined; + }, + trim : function (str) { + return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); + } + }; + + + /////////////// + // Map helper + ////////////// + + + var mapper = { + + rgx : function (ua, arrays) { + + //var result = {}, + var i = 0, j, k, p, q, matches, match;//, args = arguments; + + /*// construct object barebones + for (p = 0; p < args[1].length; p++) { + q = args[1][p]; + result[typeof q === OBJ_TYPE ? q[0] : q] = undefined; + }*/ + + // loop through all regexes maps + while (i < arrays.length && !matches) { + + var regex = arrays[i], // even sequence (0,2,4,..) + props = arrays[i + 1]; // odd sequence (1,3,5,..) + j = k = 0; + + // try matching uastring with regexes + while (j < regex.length && !matches) { + + matches = regex[j++].exec(ua); + + if (!!matches) { + for (p = 0; p < props.length; p++) { + match = matches[++k]; + q = props[p]; + // check if given property is actually array + if (typeof q === OBJ_TYPE && q.length > 0) { + if (q.length == 2) { + if (typeof q[1] == FUNC_TYPE) { + // assign modified match + this[q[0]] = q[1].call(this, match); + } else { + // assign given value, ignore regex match + this[q[0]] = q[1]; + } + } else if (q.length == 3) { + // check whether function or regex + if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) { + // call function (usually string mapper) + this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined; + } else { + // sanitize match using given regex + this[q[0]] = match ? match.replace(q[1], q[2]) : undefined; + } + } else if (q.length == 4) { + this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined; + } + } else { + this[q] = match ? match : undefined; + } + } + } + } + i += 2; + } + // console.log(this); + //return this; + }, + + str : function (str, map) { + + for (var i in map) { + // check if array + if (typeof map[i] === OBJ_TYPE && map[i].length > 0) { + for (var j = 0; j < map[i].length; j++) { + if (util.has(map[i][j], str)) { + return (i === UNKNOWN) ? undefined : i; + } + } + } else if (util.has(map[i], str)) { + return (i === UNKNOWN) ? undefined : i; + } + } + return str; + } + }; + + + /////////////// + // String map + ////////////// + + + var maps = { + + browser : { + oldsafari : { + version : { + '1.0' : '/8', + '1.2' : '/1', + '1.3' : '/3', + '2.0' : '/412', + '2.0.2' : '/416', + '2.0.3' : '/417', + '2.0.4' : '/419', + '?' : '/' + } + } + }, + + device : { + amazon : { + model : { + 'Fire Phone' : ['SD', 'KF'] + } + }, + sprint : { + model : { + 'Evo Shift 4G' : '7373KT' + }, + vendor : { + 'HTC' : 'APA', + 'Sprint' : 'Sprint' + } + } + }, + + os : { + windows : { + version : { + 'ME' : '4.90', + 'NT 3.11' : 'NT3.51', + 'NT 4.0' : 'NT4.0', + '2000' : 'NT 5.0', + 'XP' : ['NT 5.1', 'NT 5.2'], + 'Vista' : 'NT 6.0', + '7' : 'NT 6.1', + '8' : 'NT 6.2', + '8.1' : 'NT 6.3', + '10' : ['NT 6.4', 'NT 10.0'], + 'RT' : 'ARM' + } + } + } + }; + + + ////////////// + // Regex map + ///////////// + + + var regexes = { + + browser : [[ + + // Presto based + /(opera\smini)\/([\w\.-]+)/i, // Opera Mini + /(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet + /(opera).+version\/([\w\.]+)/i, // Opera > 9.80 + /(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80 + ], [NAME, VERSION], [ + + /(opios)[\/\s]+([\w\.]+)/i // Opera mini on iphone >= 8.0 + ], [[NAME, 'Opera Mini'], VERSION], [ + + /\s(opr)\/([\w\.]+)/i // Opera Webkit + ], [[NAME, 'Opera'], VERSION], [ + + // Mixed + /(kindle)\/([\w\.]+)/i, // Kindle + /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i, + // Lunascape/Maxthon/Netfront/Jasmine/Blazer + + // Trident based + /(avant\s|iemobile|slim|baidu)(?:browser)?[\/\s]?([\w\.]*)/i, + // Avant/IEMobile/SlimBrowser/Baidu + /(?:ms|\()(ie)\s([\w\.]+)/i, // Internet Explorer + + // Webkit/KHTML based + /(rekonq)\/([\w\.]+)*/i, // Rekonq + /(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser)\/([\w\.-]+)/i + // Chromium/Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser + ], [NAME, VERSION], [ + + /(trident).+rv[:\s]([\w\.]+).+like\sgecko/i // IE11 + ], [[NAME, 'IE'], VERSION], [ + + /(edge)\/((\d+)?[\w\.]+)/i // Microsoft Edge + ], [NAME, VERSION], [ + + /(yabrowser)\/([\w\.]+)/i // Yandex + ], [[NAME, 'Yandex'], VERSION], [ + + /(puffin)\/([\w\.]+)/i // Puffin + ], [[NAME, 'Puffin'], VERSION], [ + + /((?:[\s\/])uc?\s?browser|(?:juc.+)ucweb)[\/\s]?([\w\.]+)/i + // UCBrowser + ], [[NAME, 'UCBrowser'], VERSION], [ + + /(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon + ], [[NAME, /_/g, ' '], VERSION], [ + + /(micromessenger)\/([\w\.]+)/i // WeChat + ], [[NAME, 'WeChat'], VERSION], [ + + /(QQ)\/([\d\.]+)/i // QQ, aka ShouQ + ], [NAME, VERSION], [ + + /m?(qqbrowser)[\/\s]?([\w\.]+)/i // QQBrowser + ], [NAME, VERSION], [ + + /xiaomi\/miuibrowser\/([\w\.]+)/i // MIUI Browser + ], [VERSION, [NAME, 'MIUI Browser']], [ + + /;fbav\/([\w\.]+);/i // Facebook App for iOS & Android + ], [VERSION, [NAME, 'Facebook']], [ + + /headlesschrome(?:\/([\w\.]+)|\s)/i // Chrome Headless + ], [VERSION, [NAME, 'Chrome Headless']], [ + + /\swv\).+(chrome)\/([\w\.]+)/i // Chrome WebView + ], [[NAME, /(.+)/, '$1 WebView'], VERSION], [ + + /((?:oculus|samsung)browser)\/([\w\.]+)/i + ], [[NAME, /(.+(?:g|us))(.+)/, '$1 $2'], VERSION], [ // Oculus / Samsung Browser + + /android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)*/i // Android Browser + ], [VERSION, [NAME, 'Android Browser']], [ + + /(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i + // Chrome/OmniWeb/Arora/Tizen/Nokia + ], [NAME, VERSION], [ + + /(dolfin)\/([\w\.]+)/i // Dolphin + ], [[NAME, 'Dolphin'], VERSION], [ + + /((?:android.+)crmo|crios)\/([\w\.]+)/i // Chrome for Android/iOS + ], [[NAME, 'Chrome'], VERSION], [ + + /(coast)\/([\w\.]+)/i // Opera Coast + ], [[NAME, 'Opera Coast'], VERSION], [ + + /fxios\/([\w\.-]+)/i // Firefox for iOS + ], [VERSION, [NAME, 'Firefox']], [ + + /version\/([\w\.]+).+?mobile\/\w+\s(safari)/i // Mobile Safari + ], [VERSION, [NAME, 'Mobile Safari']], [ + + /version\/([\w\.]+).+?(mobile\s?safari|safari)/i // Safari & Safari Mobile + ], [VERSION, NAME], [ + + /webkit.+?(gsa)\/([\w\.]+).+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Google Search Appliance on iOS + ], [[NAME, 'GSA'], VERSION], [ + + /webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Safari < 3.0 + ], [NAME, [VERSION, mapper.str, maps.browser.oldsafari.version]], [ + + /(konqueror)\/([\w\.]+)/i, // Konqueror + /(webkit|khtml)\/([\w\.]+)/i + ], [NAME, VERSION], [ + + // Gecko based + /(navigator|netscape)\/([\w\.-]+)/i // Netscape + ], [[NAME, 'Netscape'], VERSION], [ + /(swiftfox)/i, // Swiftfox + /(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i, + // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror + /(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i, + // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix + /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i, // Mozilla + + // Other + /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i, + // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir + /(links)\s\(([\w\.]+)/i, // Links + /(gobrowser)\/?([\w\.]+)*/i, // GoBrowser + /(ice\s?browser)\/v?([\w\._]+)/i, // ICE Browser + /(mosaic)[\/\s]([\w\.]+)/i // Mosaic + ], [NAME, VERSION] + + /* ///////////////////// + // Media players BEGIN + //////////////////////// + + , [ + + /(apple(?:coremedia|))\/((\d+)[\w\._]+)/i, // Generic Apple CoreMedia + /(coremedia) v((\d+)[\w\._]+)/i + ], [NAME, VERSION], [ + + /(aqualung|lyssna|bsplayer)\/((\d+)?[\w\.-]+)/i // Aqualung/Lyssna/BSPlayer + ], [NAME, VERSION], [ + + /(ares|ossproxy)\s((\d+)[\w\.-]+)/i // Ares/OSSProxy + ], [NAME, VERSION], [ + + /(audacious|audimusicstream|amarok|bass|core|dalvik|gnomemplayer|music on console|nsplayer|psp-internetradioplayer|videos)\/((\d+)[\w\.-]+)/i, + // Audacious/AudiMusicStream/Amarok/BASS/OpenCORE/Dalvik/GnomeMplayer/MoC + // NSPlayer/PSP-InternetRadioPlayer/Videos + /(clementine|music player daemon)\s((\d+)[\w\.-]+)/i, // Clementine/MPD + /(lg player|nexplayer)\s((\d+)[\d\.]+)/i, + /player\/(nexplayer|lg player)\s((\d+)[\w\.-]+)/i // NexPlayer/LG Player + ], [NAME, VERSION], [ + /(nexplayer)\s((\d+)[\w\.-]+)/i // Nexplayer + ], [NAME, VERSION], [ + + /(flrp)\/((\d+)[\w\.-]+)/i // Flip Player + ], [[NAME, 'Flip Player'], VERSION], [ + + /(fstream|nativehost|queryseekspider|ia-archiver|facebookexternalhit)/i + // FStream/NativeHost/QuerySeekSpider/IA Archiver/facebookexternalhit + ], [NAME], [ + + /(gstreamer) souphttpsrc (?:\([^\)]+\)){0,1} libsoup\/((\d+)[\w\.-]+)/i + // Gstreamer + ], [NAME, VERSION], [ + + /(htc streaming player)\s[\w_]+\s\/\s((\d+)[\d\.]+)/i, // HTC Streaming Player + /(java|python-urllib|python-requests|wget|libcurl)\/((\d+)[\w\.-_]+)/i, + // Java/urllib/requests/wget/cURL + /(lavf)((\d+)[\d\.]+)/i // Lavf (FFMPEG) + ], [NAME, VERSION], [ + + /(htc_one_s)\/((\d+)[\d\.]+)/i // HTC One S + ], [[NAME, /_/g, ' '], VERSION], [ + + /(mplayer)(?:\s|\/)(?:(?:sherpya-){0,1}svn)(?:-|\s)(r\d+(?:-\d+[\w\.-]+){0,1})/i + // MPlayer SVN + ], [NAME, VERSION], [ + + /(mplayer)(?:\s|\/|[unkow-]+)((\d+)[\w\.-]+)/i // MPlayer + ], [NAME, VERSION], [ + + /(mplayer)/i, // MPlayer (no other info) + /(yourmuze)/i, // YourMuze + /(media player classic|nero showtime)/i // Media Player Classic/Nero ShowTime + ], [NAME], [ + + /(nero (?:home|scout))\/((\d+)[\w\.-]+)/i // Nero Home/Nero Scout + ], [NAME, VERSION], [ + + /(nokia\d+)\/((\d+)[\w\.-]+)/i // Nokia + ], [NAME, VERSION], [ + + /\s(songbird)\/((\d+)[\w\.-]+)/i // Songbird/Philips-Songbird + ], [NAME, VERSION], [ + + /(winamp)3 version ((\d+)[\w\.-]+)/i, // Winamp + /(winamp)\s((\d+)[\w\.-]+)/i, + /(winamp)mpeg\/((\d+)[\w\.-]+)/i + ], [NAME, VERSION], [ + + /(ocms-bot|tapinradio|tunein radio|unknown|winamp|inlight radio)/i // OCMS-bot/tap in radio/tunein/unknown/winamp (no other info) + // inlight radio + ], [NAME], [ + + /(quicktime|rma|radioapp|radioclientapplication|soundtap|totem|stagefright|streamium)\/((\d+)[\w\.-]+)/i + // QuickTime/RealMedia/RadioApp/RadioClientApplication/ + // SoundTap/Totem/Stagefright/Streamium + ], [NAME, VERSION], [ + + /(smp)((\d+)[\d\.]+)/i // SMP + ], [NAME, VERSION], [ + + /(vlc) media player - version ((\d+)[\w\.]+)/i, // VLC Videolan + /(vlc)\/((\d+)[\w\.-]+)/i, + /(xbmc|gvfs|xine|xmms|irapp)\/((\d+)[\w\.-]+)/i, // XBMC/gvfs/Xine/XMMS/irapp + /(foobar2000)\/((\d+)[\d\.]+)/i, // Foobar2000 + /(itunes)\/((\d+)[\d\.]+)/i // iTunes + ], [NAME, VERSION], [ + + /(wmplayer)\/((\d+)[\w\.-]+)/i, // Windows Media Player + /(windows-media-player)\/((\d+)[\w\.-]+)/i + ], [[NAME, /-/g, ' '], VERSION], [ + + /windows\/((\d+)[\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ (home media server)/i + // Windows Media Server + ], [VERSION, [NAME, 'Windows']], [ + + /(com\.riseupradioalarm)\/((\d+)[\d\.]*)/i // RiseUP Radio Alarm + ], [NAME, VERSION], [ + + /(rad.io)\s((\d+)[\d\.]+)/i, // Rad.io + /(radio.(?:de|at|fr))\s((\d+)[\d\.]+)/i + ], [[NAME, 'rad.io'], VERSION] + + ////////////////////// + // Media players END + ////////////////////*/ + + ], + + cpu : [[ + + /(?:(amd|x(?:(?:86|64)[_-])?|wow|win)64)[;\)]/i // AMD64 + ], [[ARCHITECTURE, 'amd64']], [ + + /(ia32(?=;))/i // IA32 (quicktime) + ], [[ARCHITECTURE, util.lowerize]], [ + + /((?:i[346]|x)86)[;\)]/i // IA32 + ], [[ARCHITECTURE, 'ia32']], [ + + // PocketPC mistakenly identified as PowerPC + /windows\s(ce|mobile);\sppc;/i + ], [[ARCHITECTURE, 'arm']], [ + + /((?:ppc|powerpc)(?:64)?)(?:\smac|;|\))/i // PowerPC + ], [[ARCHITECTURE, /ower/, '', util.lowerize]], [ + + /(sun4\w)[;\)]/i // SPARC + ], [[ARCHITECTURE, 'sparc']], [ + + /((?:avr32|ia64(?=;))|68k(?=\))|arm(?:64|(?=v\d+;))|(?=atmel\s)avr|(?:irix|mips|sparc)(?:64)?(?=;)|pa-risc)/i + // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC + ], [[ARCHITECTURE, util.lowerize]] + ], + + device : [[ + + /\((ipad|playbook);[\w\s\);-]+(rim|apple)/i // iPad/PlayBook + ], [MODEL, VENDOR, [TYPE, TABLET]], [ + + /applecoremedia\/[\w\.]+ \((ipad)/ // iPad + ], [MODEL, [VENDOR, 'Apple'], [TYPE, TABLET]], [ + + /(apple\s{0,1}tv)/i // Apple TV + ], [[MODEL, 'Apple TV'], [VENDOR, 'Apple']], [ + + /(archos)\s(gamepad2?)/i, // Archos + /(hp).+(touchpad)/i, // HP TouchPad + /(hp).+(tablet)/i, // HP Tablet + /(kindle)\/([\w\.]+)/i, // Kindle + /\s(nook)[\w\s]+build\/(\w+)/i, // Nook + /(dell)\s(strea[kpr\s\d]*[\dko])/i // Dell Streak + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /(kf[A-z]+)\sbuild\/[\w\.]+.*silk\//i // Kindle Fire HD + ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ + /(sd|kf)[0349hijorstuw]+\sbuild\/[\w\.]+.*silk\//i // Fire Phone + ], [[MODEL, mapper.str, maps.device.amazon.model], [VENDOR, 'Amazon'], [TYPE, MOBILE]], [ + + /\((ip[honed|\s\w*]+);.+(apple)/i // iPod/iPhone + ], [MODEL, VENDOR, [TYPE, MOBILE]], [ + /\((ip[honed|\s\w*]+);/i // iPod/iPhone + ], [MODEL, [VENDOR, 'Apple'], [TYPE, MOBILE]], [ + + /(blackberry)[\s-]?(\w+)/i, // BlackBerry + /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[\s_-]?([\w-]+)*/i, + // BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron + /(hp)\s([\w\s]+\w)/i, // HP iPAQ + /(asus)-?(\w+)/i // Asus + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /\(bb10;\s(\w+)/i // BlackBerry 10 + ], [MODEL, [VENDOR, 'BlackBerry'], [TYPE, MOBILE]], [ + // Asus Tablets + /android.+(transfo[prime\s]{4,10}\s\w+|eeepc|slider\s\w+|nexus 7|padfone)/i + ], [MODEL, [VENDOR, 'Asus'], [TYPE, TABLET]], [ + + /(sony)\s(tablet\s[ps])\sbuild\//i, // Sony + /(sony)?(?:sgp.+)\sbuild\//i + ], [[VENDOR, 'Sony'], [MODEL, 'Xperia Tablet'], [TYPE, TABLET]], [ + /android.+\s([c-g]\d{4}|so[-l]\w+)\sbuild\//i + ], [MODEL, [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + + /\s(ouya)\s/i, // Ouya + /(nintendo)\s([wids3u]+)/i // Nintendo + ], [VENDOR, MODEL, [TYPE, CONSOLE]], [ + + /android.+;\s(shield)\sbuild/i // Nvidia + ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, CONSOLE]], [ + + /(playstation\s[34portablevi]+)/i // Playstation + ], [MODEL, [VENDOR, 'Sony'], [TYPE, CONSOLE]], [ + + /(sprint\s(\w+))/i // Sprint Phones + ], [[VENDOR, mapper.str, maps.device.sprint.vendor], [MODEL, mapper.str, maps.device.sprint.model], [TYPE, MOBILE]], [ + + /(lenovo)\s?(S(?:5000|6000)+(?:[-][\w+]))/i // Lenovo tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /(htc)[;_\s-]+([\w\s]+(?=\))|\w+)*/i, // HTC + /(zte)-(\w+)*/i, // ZTE + /(alcatel|geeksphone|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]+)*/i + // Alcatel/GeeksPhone/Lenovo/Nexian/Panasonic/Sony + ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [ + + /(nexus\s9)/i // HTC Nexus 9 + ], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [ + + /d\/huawei([\w\s-]+)[;\)]/i, + /(nexus\s6p)/i // Huawei + ], [MODEL, [VENDOR, 'Huawei'], [TYPE, MOBILE]], [ + + /(microsoft);\s(lumia[\s\w]+)/i // Microsoft Lumia + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /[\s\(;](xbox(?:\sone)?)[\s\);]/i // Microsoft Xbox + ], [MODEL, [VENDOR, 'Microsoft'], [TYPE, CONSOLE]], [ + /(kin\.[onetw]{3})/i // Microsoft Kin + ], [[MODEL, /\./g, ' '], [VENDOR, 'Microsoft'], [TYPE, MOBILE]], [ + + // Motorola + /\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?(:?\s4g)?)[\w\s]+build\//i, + /mot[\s-]?(\w+)*/i, + /(XT\d{3,4}) build\//i, + /(nexus\s6)/i + ], [MODEL, [VENDOR, 'Motorola'], [TYPE, MOBILE]], [ + /android.+\s(mz60\d|xoom[\s2]{0,2})\sbuild\//i + ], [MODEL, [VENDOR, 'Motorola'], [TYPE, TABLET]], [ + + /hbbtv\/\d+\.\d+\.\d+\s+\([\w\s]*;\s*(\w[^;]*);([^;]*)/i // HbbTV devices + ], [[VENDOR, util.trim], [MODEL, util.trim], [TYPE, SMARTTV]], [ + + /hbbtv.+maple;(\d+)/i + ], [[MODEL, /^/, 'SmartTV'], [VENDOR, 'Samsung'], [TYPE, SMARTTV]], [ + + /\(dtv[\);].+(aquos)/i // Sharp + ], [MODEL, [VENDOR, 'Sharp'], [TYPE, SMARTTV]], [ + + /android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n\d+|sgh-t8[56]9|nexus 10))/i, + /((SM-T\w+))/i + ], [[VENDOR, 'Samsung'], MODEL, [TYPE, TABLET]], [ // Samsung + /smart-tv.+(samsung)/i + ], [VENDOR, [TYPE, SMARTTV], MODEL], [ + /((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i, + /(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i, + /sec-((sgh\w+))/i + ], [[VENDOR, 'Samsung'], MODEL, [TYPE, MOBILE]], [ + + /sie-(\w+)*/i // Siemens + ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [ + + /(maemo|nokia).*(n900|lumia\s\d+)/i, // Nokia + /(nokia)[\s_-]?([\w-]+)*/i + ], [[VENDOR, 'Nokia'], MODEL, [TYPE, MOBILE]], [ + + /android\s3\.[\s\w;-]{10}(a\d{3})/i // Acer + ], [MODEL, [VENDOR, 'Acer'], [TYPE, TABLET]], [ + + /android.+([vl]k\-?\d{3})\s+build/i // LG Tablet + ], [MODEL, [VENDOR, 'LG'], [TYPE, TABLET]], [ + /android\s3\.[\s\w;-]{10}(lg?)-([06cv9]{3,4})/i // LG Tablet + ], [[VENDOR, 'LG'], MODEL, [TYPE, TABLET]], [ + /(lg) netcast\.tv/i // LG SmartTV + ], [VENDOR, MODEL, [TYPE, SMARTTV]], [ + /(nexus\s[45])/i, // LG + /lg[e;\s\/-]+(\w+)*/i, + /android.+lg(\-?[\d\w]+)\s+build/i + ], [MODEL, [VENDOR, 'LG'], [TYPE, MOBILE]], [ + + /android.+(ideatab[a-z0-9\-\s]+)/i // Lenovo + ], [MODEL, [VENDOR, 'Lenovo'], [TYPE, TABLET]], [ + + /linux;.+((jolla));/i // Jolla + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /((pebble))app\/[\d\.]+\s/i // Pebble + ], [VENDOR, MODEL, [TYPE, WEARABLE]], [ + + /android.+;\s(oppo)\s?([\w\s]+)\sbuild/i // OPPO + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /crkey/i // Google Chromecast + ], [[MODEL, 'Chromecast'], [VENDOR, 'Google']], [ + + /android.+;\s(glass)\s\d/i // Google Glass + ], [MODEL, [VENDOR, 'Google'], [TYPE, WEARABLE]], [ + + /android.+;\s(pixel c)\s/i // Google Pixel C + ], [MODEL, [VENDOR, 'Google'], [TYPE, TABLET]], [ + + /android.+;\s(pixel xl|pixel)\s/i // Google Pixel + ], [MODEL, [VENDOR, 'Google'], [TYPE, MOBILE]], [ + + /android.+(\w+)\s+build\/hm\1/i, // Xiaomi Hongmi 'numeric' models + /android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i, // Xiaomi Hongmi + /android.+(mi[\s\-_]*(?:one|one[\s_]plus|note lte)?[\s_]*(?:\d\w)?)\s+build/i, // Xiaomi Mi + /android.+(redmi[\s\-_]*(?:note)?(?:[\s_]*[\w\s]+)?)\s+build/i // Redmi Phones + ], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [ + /android.+(mi[\s\-_]*(?:pad)?(?:[\s_]*[\w\s]+)?)\s+build/i // Mi Pad tablets + ],[[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, TABLET]], [ + /android.+;\s(m[1-5]\snote)\sbuild/i // Meizu Tablet + ], [MODEL, [VENDOR, 'Meizu'], [TYPE, TABLET]], [ + + /android.+a000(1)\s+build/i // OnePlus + ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(RCT[\d\w]+)\s+build/i // RCA Tablets + ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Venue[\d\s]*)\s+build/i // Dell Venue Tablets + ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Q[T|M][\d\w]+)\s+build/i // Verizon Tablet + ], [MODEL, [VENDOR, 'Verizon'], [TYPE, TABLET]], [ + + /android.+[;\/]\s+(Barnes[&\s]+Noble\s+|BN[RT])(V?.*)\s+build/i // Barnes & Noble Tablet + ], [[VENDOR, 'Barnes & Noble'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s+(TM\d{3}.*\b)\s+build/i // Barnes & Noble Tablet + ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(zte)?.+(k\d{2})\s+build/i // ZTE K Series Tablet + ], [[VENDOR, 'ZTE'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(gen\d{3})\s+build.*49h/i // Swiss GEN Mobile + ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(zur\d{3})\s+build/i // Swiss ZUR Tablet + ], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*((Zeki)?TB.*\b)\s+build/i // Zeki Tablets + ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [ + + /(android).+[;\/]\s+([YR]\d{2}x?.*)\s+build/i, + /android.+[;\/]\s+(Dragon[\-\s]+Touch\s+|DT)(.+)\s+build/i // Dragon Touch Tablet + ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(NS-?.+)\s+build/i // Insignia Tablets + ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*((NX|Next)-?.+)\s+build/i // NextBook Tablets + ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Xtreme\_?)?(V(1[045]|2[015]|30|40|60|7[05]|90))\s+build/i + ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [ // Voice Xtreme Phones + + /android.+[;\/]\s*(LVTEL\-?)?(V1[12])\s+build/i // LvTel Phones + ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(V(100MD|700NA|7011|917G).*\b)\s+build/i // Envizen Tablets + ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Le[\s\-]+Pan)[\s\-]+(.*\b)\s+build/i // Le Pan Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Trio[\s\-]*.*)\s+build/i // MachSpeed Tablets + ], [MODEL, [VENDOR, 'MachSpeed'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Trinity)[\-\s]*(T\d{3})\s+build/i // Trinity Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*TU_(1491)\s+build/i // Rotor Tablets + ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [ + + /android.+(KS(.+))\s+build/i // Amazon Kindle Tablets + ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ + + /android.+(Gigaset)[\s\-]+(Q.+)\s+build/i // Gigaset Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /\s(tablet|tab)[;\/]/i, // Unidentifiable Tablet + /\s(mobile)(?:[;\/]|\ssafari)/i // Unidentifiable Mobile + ], [[TYPE, util.lowerize], VENDOR, MODEL], [ + + /(android.+)[;\/].+build/i // Generic Android Device + ], [MODEL, [VENDOR, 'Generic']] + + + /*////////////////////////// + // TODO: move to string map + //////////////////////////// + + /(C6603)/i // Sony Xperia Z C6603 + ], [[MODEL, 'Xperia Z C6603'], [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + /(C6903)/i // Sony Xperia Z 1 + ], [[MODEL, 'Xperia Z 1'], [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + + /(SM-G900[F|H])/i // Samsung Galaxy S5 + ], [[MODEL, 'Galaxy S5'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G7102)/i // Samsung Galaxy Grand 2 + ], [[MODEL, 'Galaxy Grand 2'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G530H)/i // Samsung Galaxy Grand Prime + ], [[MODEL, 'Galaxy Grand Prime'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G313HZ)/i // Samsung Galaxy V + ], [[MODEL, 'Galaxy V'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-T805)/i // Samsung Galaxy Tab S 10.5 + ], [[MODEL, 'Galaxy Tab S 10.5'], [VENDOR, 'Samsung'], [TYPE, TABLET]], [ + /(SM-G800F)/i // Samsung Galaxy S5 Mini + ], [[MODEL, 'Galaxy S5 Mini'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-T311)/i // Samsung Galaxy Tab 3 8.0 + ], [[MODEL, 'Galaxy Tab 3 8.0'], [VENDOR, 'Samsung'], [TYPE, TABLET]], [ + + /(T3C)/i // Advan Vandroid T3C + ], [MODEL, [VENDOR, 'Advan'], [TYPE, TABLET]], [ + /(ADVAN T1J\+)/i // Advan Vandroid T1J+ + ], [[MODEL, 'Vandroid T1J+'], [VENDOR, 'Advan'], [TYPE, TABLET]], [ + /(ADVAN S4A)/i // Advan Vandroid S4A + ], [[MODEL, 'Vandroid S4A'], [VENDOR, 'Advan'], [TYPE, MOBILE]], [ + + /(V972M)/i // ZTE V972M + ], [MODEL, [VENDOR, 'ZTE'], [TYPE, MOBILE]], [ + + /(i-mobile)\s(IQ\s[\d\.]+)/i // i-mobile IQ + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /(IQ6.3)/i // i-mobile IQ IQ 6.3 + ], [[MODEL, 'IQ 6.3'], [VENDOR, 'i-mobile'], [TYPE, MOBILE]], [ + /(i-mobile)\s(i-style\s[\d\.]+)/i // i-mobile i-STYLE + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /(i-STYLE2.1)/i // i-mobile i-STYLE 2.1 + ], [[MODEL, 'i-STYLE 2.1'], [VENDOR, 'i-mobile'], [TYPE, MOBILE]], [ + + /(mobiistar touch LAI 512)/i // mobiistar touch LAI 512 + ], [[MODEL, 'Touch LAI 512'], [VENDOR, 'mobiistar'], [TYPE, MOBILE]], [ + + ///////////// + // END TODO + ///////////*/ + + ], + + engine : [[ + + /windows.+\sedge\/([\w\.]+)/i // EdgeHTML + ], [VERSION, [NAME, 'EdgeHTML']], [ + + /(presto)\/([\w\.]+)/i, // Presto + /(webkit|trident|netfront|netsurf|amaya|lynx|w3m)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m + /(khtml|tasman|links)[\/\s]\(?([\w\.]+)/i, // KHTML/Tasman/Links + /(icab)[\/\s]([23]\.[\d\.]+)/i // iCab + ], [NAME, VERSION], [ + + /rv\:([\w\.]+).*(gecko)/i // Gecko + ], [VERSION, NAME] + ], + + os : [[ + + // Windows based + /microsoft\s(windows)\s(vista|xp)/i // Windows (iTunes) + ], [NAME, VERSION], [ + /(windows)\snt\s6\.2;\s(arm)/i, // Windows RT + /(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s]+\w)*/i, // Windows Phone + /(windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i + ], [NAME, [VERSION, mapper.str, maps.os.windows.version]], [ + /(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i + ], [[NAME, 'Windows'], [VERSION, mapper.str, maps.os.windows.version]], [ + + // Mobile/Embedded OS + /\((bb)(10);/i // BlackBerry 10 + ], [[NAME, 'BlackBerry'], VERSION], [ + /(blackberry)\w*\/?([\w\.]+)*/i, // Blackberry + /(tizen)[\/\s]([\w\.]+)/i, // Tizen + /(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i, + // Android/WebOS/Palm/QNX/Bada/RIM/MeeGo/Contiki + /linux;.+(sailfish);/i // Sailfish OS + ], [NAME, VERSION], [ + /(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i // Symbian + ], [[NAME, 'Symbian'], VERSION], [ + /\((series40);/i // Series 40 + ], [NAME], [ + /mozilla.+\(mobile;.+gecko.+firefox/i // Firefox OS + ], [[NAME, 'Firefox OS'], VERSION], [ + + // Console + /(nintendo|playstation)\s([wids34portablevu]+)/i, // Nintendo/Playstation + + // GNU/Linux based + /(mint)[\/\s\(]?(\w+)*/i, // Mint + /(mageia|vectorlinux)[;\s]/i, // Mageia/VectorLinux + /(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]+)*/i, + // Joli/Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware + // Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus + /(hurd|linux)\s?([\w\.]+)*/i, // Hurd/Linux + /(gnu)\s?([\w\.]+)*/i // GNU + ], [NAME, VERSION], [ + + /(cros)\s[\w]+\s([\w\.]+\w)/i // Chromium OS + ], [[NAME, 'Chromium OS'], VERSION],[ + + // Solaris + /(sunos)\s?([\w\.]+\d)*/i // Solaris + ], [[NAME, 'Solaris'], VERSION], [ + + // BSD based + /\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i // FreeBSD/NetBSD/OpenBSD/PC-BSD/DragonFly + ], [NAME, VERSION],[ + + /(haiku)\s(\w+)/i // Haiku + ], [NAME, VERSION],[ + + /cfnetwork\/.+darwin/i, + /ip[honead]+(?:.*os\s([\w]+)\slike\smac|;\sopera)/i // iOS + ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [ + + /(mac\sos\sx)\s?([\w\s\.]+\w)*/i, + /(macintosh|mac(?=_powerpc)\s)/i // Mac OS + ], [[NAME, 'Mac OS'], [VERSION, /_/g, '.']], [ + + // Other + /((?:open)?solaris)[\/\s-]?([\w\.]+)*/i, // Solaris + /(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i, // AIX + /(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i, + // Plan9/Minix/BeOS/OS2/AmigaOS/MorphOS/RISCOS/OpenVMS + /(unix)\s?([\w\.]+)*/i // UNIX + ], [NAME, VERSION] + ] + }; + + + ///////////////// + // Constructor + //////////////// + /* + var Browser = function (name, version) { + this[NAME] = name; + this[VERSION] = version; + }; + var CPU = function (arch) { + this[ARCHITECTURE] = arch; + }; + var Device = function (vendor, model, type) { + this[VENDOR] = vendor; + this[MODEL] = model; + this[TYPE] = type; + }; + var Engine = Browser; + var OS = Browser; + */ + var UAParser = function (uastring, extensions) { + + if (typeof uastring === 'object') { + extensions = uastring; + uastring = undefined; + } + + if (!(this instanceof UAParser)) { + return new UAParser(uastring, extensions).getResult(); + } + + var ua = uastring || ((window && window.navigator && window.navigator.userAgent) ? window.navigator.userAgent : EMPTY); + var rgxmap = extensions ? util.extend(regexes, extensions) : regexes; + //var browser = new Browser(); + //var cpu = new CPU(); + //var device = new Device(); + //var engine = new Engine(); + //var os = new OS(); + + this.getBrowser = function () { + var browser = { name: undefined, version: undefined }; + mapper.rgx.call(browser, ua, rgxmap.browser); + browser.major = util.major(browser.version); // deprecated + return browser; + }; + this.getCPU = function () { + var cpu = { architecture: undefined }; + mapper.rgx.call(cpu, ua, rgxmap.cpu); + return cpu; + }; + this.getDevice = function () { + var device = { vendor: undefined, model: undefined, type: undefined }; + mapper.rgx.call(device, ua, rgxmap.device); + return device; + }; + this.getEngine = function () { + var engine = { name: undefined, version: undefined }; + mapper.rgx.call(engine, ua, rgxmap.engine); + return engine; + }; + this.getOS = function () { + var os = { name: undefined, version: undefined }; + mapper.rgx.call(os, ua, rgxmap.os); + return os; + }; + this.getResult = function () { + return { + ua : this.getUA(), + browser : this.getBrowser(), + engine : this.getEngine(), + os : this.getOS(), + device : this.getDevice(), + cpu : this.getCPU() + }; + }; + this.getUA = function () { + return ua; + }; + this.setUA = function (uastring) { + ua = uastring; + //browser = new Browser(); + //cpu = new CPU(); + //device = new Device(); + //engine = new Engine(); + //os = new OS(); + return this; + }; + return this; + }; + + UAParser.VERSION = LIBVERSION; + UAParser.BROWSER = { + NAME : NAME, + MAJOR : MAJOR, // deprecated + VERSION : VERSION + }; + UAParser.CPU = { + ARCHITECTURE : ARCHITECTURE + }; + UAParser.DEVICE = { + MODEL : MODEL, + VENDOR : VENDOR, + TYPE : TYPE, + CONSOLE : CONSOLE, + MOBILE : MOBILE, + SMARTTV : SMARTTV, + TABLET : TABLET, + WEARABLE: WEARABLE, + EMBEDDED: EMBEDDED + }; + UAParser.ENGINE = { + NAME : NAME, + VERSION : VERSION + }; + UAParser.OS = { + NAME : NAME, + VERSION : VERSION + }; + //UAParser.Utils = util; + + /////////// + // Export + ////////// + + + // check js environment + if (typeof(exports) !== UNDEF_TYPE) { + // nodejs env + if (typeof module !== UNDEF_TYPE && module.exports) { + exports = module.exports = UAParser; + } + // TODO: test!!!!!!!! + /* + if (require && require.main === module && process) { + // cli + var jsonize = function (arr) { + var res = []; + for (var i in arr) { + res.push(new UAParser(arr[i]).getResult()); + } + process.stdout.write(JSON.stringify(res, null, 2) + '\n'); + }; + if (process.stdin.isTTY) { + // via args + jsonize(process.argv.slice(2)); + } else { + // via pipe + var str = ''; + process.stdin.on('readable', function() { + var read = process.stdin.read(); + if (read !== null) { + str += read; + } + }); + process.stdin.on('end', function () { + jsonize(str.replace(/\n$/, '').split('\n')); + }); + } + } + */ + exports.UAParser = UAParser; + } else { + // requirejs env (optional) + if (typeof(define) === FUNC_TYPE && define.amd) { + define(function () { + return UAParser; + }); + } else if (window) { + // browser env + window.UAParser = UAParser; + } + } + + // jQuery/Zepto specific (optional) + // Note: + // In AMD env the global scope should be kept clean, but jQuery is an exception. + // jQuery always exports to global scope, unless jQuery.noConflict(true) is used, + // and we should catch that. + var $ = window && (window.jQuery || window.Zepto); + if (typeof $ !== UNDEF_TYPE) { + var parser = new UAParser(); + $.ua = parser.getResult(); + $.ua.get = function () { + return parser.getUA(); + }; + $.ua.set = function (uastring) { + parser.setUA(uastring); + var result = parser.getResult(); + for (var prop in result) { + $.ua[prop] = result[prop]; + } + }; + } + +})(typeof window === 'object' ? window : this); + +},{}],22:[function(require,module,exports){ +(function (global){ + +var rng; + +var crypto = global.crypto || global.msCrypto; // for IE 11 +if (crypto && crypto.getRandomValues) { + // WHATWG crypto-based RNG - http://wiki.whatwg.org/wiki/Crypto + // Moderately fast, high quality + var _rnds8 = new Uint8Array(16); + rng = function whatwgRNG() { + crypto.getRandomValues(_rnds8); + return _rnds8; + }; +} + +if (!rng) { + // Math.random()-based (RNG) + // + // If all else fails, use Math.random(). It's fast, but is of unspecified + // quality. + var _rnds = new Array(16); + rng = function() { + for (var i = 0, r; i < 16; i++) { + if ((i & 0x03) === 0) r = Math.random() * 0x100000000; + _rnds[i] = r >>> ((i & 0x03) << 3) & 0xff; + } + + return _rnds; + }; +} + +module.exports = rng; + + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],23:[function(require,module,exports){ +// uuid.js +// +// Copyright (c) 2010-2012 Robert Kieffer +// MIT License - http://opensource.org/licenses/mit-license.php + +// Unique ID creation requires a high quality random # generator. We feature +// detect to determine the best RNG source, normalizing to a function that +// returns 128-bits of randomness, since that's what's usually required +var _rng = require('./rng'); + +// Maps for number <-> hex string conversion +var _byteToHex = []; +var _hexToByte = {}; +for (var i = 0; i < 256; i++) { + _byteToHex[i] = (i + 0x100).toString(16).substr(1); + _hexToByte[_byteToHex[i]] = i; +} + +// **`parse()` - Parse a UUID into it's component bytes** +function parse(s, buf, offset) { + var i = (buf && offset) || 0, ii = 0; + + buf = buf || []; + s.toLowerCase().replace(/[0-9a-f]{2}/g, function(oct) { + if (ii < 16) { // Don't overflow! + buf[i + ii++] = _hexToByte[oct]; + } + }); + + // Zero out remaining bytes if string was short + while (ii < 16) { + buf[i + ii++] = 0; + } + + return buf; +} + +// **`unparse()` - Convert UUID byte array (ala parse()) into a string** +function unparse(buf, offset) { + var i = offset || 0, bth = _byteToHex; + return bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]]; +} + +// **`v1()` - Generate time-based UUID** +// +// Inspired by https://github.com/LiosK/UUID.js +// and http://docs.python.org/library/uuid.html + +// random #'s we need to init node and clockseq +var _seedBytes = _rng(); + +// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1) +var _nodeId = [ + _seedBytes[0] | 0x01, + _seedBytes[1], _seedBytes[2], _seedBytes[3], _seedBytes[4], _seedBytes[5] +]; + +// Per 4.2.2, randomize (14 bit) clockseq +var _clockseq = (_seedBytes[6] << 8 | _seedBytes[7]) & 0x3fff; + +// Previous uuid creation time +var _lastMSecs = 0, _lastNSecs = 0; + +// See https://github.com/broofa/node-uuid for API details +function v1(options, buf, offset) { + var i = buf && offset || 0; + var b = buf || []; + + options = options || {}; + + var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; + + // UUID timestamps are 100 nano-second units since the Gregorian epoch, + // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so + // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs' + // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00. + var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime(); + + // Per 4.2.1.2, use count of uuid's generated during the current clock + // cycle to simulate higher resolution clock + var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; + + // Time since last uuid creation (in msecs) + var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000; + + // Per 4.2.1.2, Bump clockseq on clock regression + if (dt < 0 && options.clockseq === undefined) { + clockseq = clockseq + 1 & 0x3fff; + } + + // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new + // time interval + if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { + nsecs = 0; + } + + // Per 4.2.1.2 Throw error if too many uuids are requested + if (nsecs >= 10000) { + throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec'); + } + + _lastMSecs = msecs; + _lastNSecs = nsecs; + _clockseq = clockseq; + + // Per 4.1.4 - Convert from unix epoch to Gregorian epoch + msecs += 12219292800000; + + // `time_low` + var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; + b[i++] = tl >>> 24 & 0xff; + b[i++] = tl >>> 16 & 0xff; + b[i++] = tl >>> 8 & 0xff; + b[i++] = tl & 0xff; + + // `time_mid` + var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff; + b[i++] = tmh >>> 8 & 0xff; + b[i++] = tmh & 0xff; + + // `time_high_and_version` + b[i++] = tmh >>> 24 & 0xf | 0x10; // include version + b[i++] = tmh >>> 16 & 0xff; + + // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant) + b[i++] = clockseq >>> 8 | 0x80; + + // `clock_seq_low` + b[i++] = clockseq & 0xff; + + // `node` + var node = options.node || _nodeId; + for (var n = 0; n < 6; n++) { + b[i + n] = node[n]; + } + + return buf ? buf : unparse(b); +} + +// **`v4()` - Generate random UUID** + +// See https://github.com/broofa/node-uuid for API details +function v4(options, buf, offset) { + // Deprecated - 'format' argument, as supported in v1.2 + var i = buf && offset || 0; + + if (typeof(options) == 'string') { + buf = options == 'binary' ? new Array(16) : null; + options = null; + } + options = options || {}; + + var rnds = options.random || (options.rng || _rng)(); + + // Per 4.4, set bits for version and `clock_seq_hi_and_reserved` + rnds[6] = (rnds[6] & 0x0f) | 0x40; + rnds[8] = (rnds[8] & 0x3f) | 0x80; + + // Copy bytes to buffer, if provided + if (buf) { + for (var ii = 0; ii < 16; ii++) { + buf[i + ii] = rnds[ii]; + } + } + + return buf || unparse(rnds); +} + +// Export public API +var uuid = v4; +uuid.v1 = v1; +uuid.v4 = v4; +uuid.parse = parse; +uuid.unparse = unparse; + +module.exports = uuid; + +},{"./rng":22}],24:[function(require,module,exports){ +/* +WildEmitter.js is a slim little event emitter by @henrikjoreteg largely based +on @visionmedia's Emitter from UI Kit. + +Why? I wanted it standalone. + +I also wanted support for wildcard emitters like this: + +emitter.on('*', function (eventName, other, event, payloads) { + +}); + +emitter.on('somenamespace*', function (eventName, payloads) { + +}); + +Please note that callbacks triggered by wildcard registered events also get +the event name as the first argument. +*/ + +module.exports = WildEmitter; + +function WildEmitter() { } + +WildEmitter.mixin = function (constructor) { + var prototype = constructor.prototype || constructor; + + prototype.isWildEmitter= true; + + // Listen on the given `event` with `fn`. Store a group name if present. + prototype.on = function (event, groupName, fn) { + this.callbacks = this.callbacks || {}; + var hasGroup = (arguments.length === 3), + group = hasGroup ? arguments[1] : undefined, + func = hasGroup ? arguments[2] : arguments[1]; + func._groupName = group; + (this.callbacks[event] = this.callbacks[event] || []).push(func); + return this; + }; + + // Adds an `event` listener that will be invoked a single + // time then automatically removed. + prototype.once = function (event, groupName, fn) { + var self = this, + hasGroup = (arguments.length === 3), + group = hasGroup ? arguments[1] : undefined, + func = hasGroup ? arguments[2] : arguments[1]; + function on() { + self.off(event, on); + func.apply(this, arguments); + } + this.on(event, group, on); + return this; + }; + + // Unbinds an entire group + prototype.releaseGroup = function (groupName) { + this.callbacks = this.callbacks || {}; + var item, i, len, handlers; + for (item in this.callbacks) { + handlers = this.callbacks[item]; + for (i = 0, len = handlers.length; i < len; i++) { + if (handlers[i]._groupName === groupName) { + //console.log('removing'); + // remove it and shorten the array we're looping through + handlers.splice(i, 1); + i--; + len--; + } + } + } + return this; + }; + + // Remove the given callback for `event` or all + // registered callbacks. + prototype.off = function (event, fn) { + this.callbacks = this.callbacks || {}; + var callbacks = this.callbacks[event], + i; + + if (!callbacks) return this; + + // remove all handlers + if (arguments.length === 1) { + delete this.callbacks[event]; + return this; + } + + // remove specific handler + i = callbacks.indexOf(fn); + callbacks.splice(i, 1); + if (callbacks.length === 0) { + delete this.callbacks[event]; + } + return this; + }; + + /// Emit `event` with the given args. + // also calls any `*` handlers + prototype.emit = function (event) { + this.callbacks = this.callbacks || {}; + var args = [].slice.call(arguments, 1), + callbacks = this.callbacks[event], + specialCallbacks = this.getWildcardCallbacks(event), + i, + len, + item, + listeners; + + if (callbacks) { + listeners = callbacks.slice(); + for (i = 0, len = listeners.length; i < len; ++i) { + if (!listeners[i]) { + break; + } + listeners[i].apply(this, args); + } + } + + if (specialCallbacks) { + len = specialCallbacks.length; + listeners = specialCallbacks.slice(); + for (i = 0, len = listeners.length; i < len; ++i) { + if (!listeners[i]) { + break; + } + listeners[i].apply(this, [event].concat(args)); + } + } + + return this; + }; + + // Helper for for finding special wildcard event handlers that match the event + prototype.getWildcardCallbacks = function (eventName) { + this.callbacks = this.callbacks || {}; + var item, + split, + result = []; + + for (item in this.callbacks) { + split = item.split('*'); + if (item === '*' || (split.length === 2 && eventName.slice(0, split[0].length) === split[0])) { + result = result.concat(this.callbacks[item]); + } + } + return result; + }; + +}; + +WildEmitter.mixin(WildEmitter); + +},{}]},{},[2])(2) +}); \ No newline at end of file diff --git a/bigbluebutton-client/resources/prod/lib/kurento-utils.min.js b/bigbluebutton-client/resources/prod/lib/kurento-utils.min.js deleted file mode 100644 index 4e88a14cb52432fe068dd62adf6ec94350103ae2..0000000000000000000000000000000000000000 --- a/bigbluebutton-client/resources/prod/lib/kurento-utils.min.js +++ /dev/null @@ -1,56 +0,0 @@ -(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.kurentoUtils = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ -function noop(e){e&&logger.error(e)}function trackStop(e){e.stop&&e.stop()}function streamStop(e){e.getTracks().forEach(trackStop)}function bufferizeCandidates(e,n){var t=[];return e.addEventListener("signalingstatechange",function(){if("stable"===this.signalingState)for(;t.length;){var e=t.shift();this.addIceCandidate(e.candidate,e.callback,e.callback)}}),function(r,i){switch(i=i||n,e.signalingState){case"closed":i(new Error("PeerConnection object is closed"));break;case"stable":if(e.remoteDescription){e.addIceCandidate(r,i,i);break}default:t.push({candidate:r,callback:i})}}}function removeFIDFromOffer(e){var n=e.indexOf("a=ssrc-group:FID");return n>0?e.slice(0,n):e}function getSimulcastInfo(e){var n=e.getVideoTracks();if(!n.length)return logger.warn("No video tracks available in the video stream"),"";var t=["a=x-google-flag:conference","a=ssrc-group:SIM 1 2 3","a=ssrc:1 cname:localVideo","a=ssrc:1 msid:"+e.id+" "+n[0].id,"a=ssrc:1 mslabel:"+e.id,"a=ssrc:1 label:"+n[0].id,"a=ssrc:2 cname:localVideo","a=ssrc:2 msid:"+e.id+" "+n[0].id,"a=ssrc:2 mslabel:"+e.id,"a=ssrc:2 label:"+n[0].id,"a=ssrc:3 cname:localVideo","a=ssrc:3 msid:"+e.id+" "+n[0].id,"a=ssrc:3 mslabel:"+e.id,"a=ssrc:3 label:"+n[0].id];return t.push(""),t.join("\n")}function WebRtcPeer(e,n,t){function r(){if(l){var e=p.getRemoteStreams()[0],n=e?URL.createObjectURL(e):"";l.pause(),l.src=n,l.load(),logger.info("Remote URL:",n)}}function i(e){return w&&("Chrome"===browser.name||"Chromium"===browser.name?(logger.info("Adding multicast info"),e=new RTCSessionDescription({type:e.type,sdp:removeFIDFromOffer(e.sdp)+getSimulcastInfo(u)})):logger.warn("Simulcast is only available in Chrome browser.")),e}function o(){"closed"===p.signalingState&&t('The peer connection object is in "closed" state. This is most likely due to an invocation of the dispose method before accepting in the dialogue'),u&&d&&c.showLocalVideo(),u&&p.addStream(u),f&&p.addStream(f);var n=parser.getBrowser();"sendonly"!==e||"Chrome"!==n.name&&"Chromium"!==n.name||39!==n.major||(e="sendrecv"),t()}function a(e){void 0===e&&(e=MEDIA_CONSTRAINTS),navigator.mediaDevices.getUserMedia(e).then(function(e){u=e,o()}).catch(t)}if(!(this instanceof WebRtcPeer))return new WebRtcPeer(e,n,t);WebRtcPeer.super_.call(this),n instanceof Function&&(t=n,n=void 0),n=n||{},t=(t||noop).bind(this);var s,c=this,d=n.localVideo,l=n.remoteVideo,u=n.videoStream,f=n.audioStream,g=n.mediaConstraints,p=(n.connectionConstraints,n.peerConnection),h=n.sendSource||"webcam",m=n.dataChannelConfig,v=n.dataChannels||!1,b=uuid.v4(),P=recursive({iceServers:freeice()},n.configuration),S=n.onicecandidate;S&&this.on("icecandidate",S);var R=n.oncandidategatheringdone;R&&this.on("candidategatheringdone",R);var w=n.simulcast,C=n.multistream,y=new sdpTranslator.Interop,D=[],W=!1;if(Object.defineProperties(this,{peerConnection:{get:function(){return p}},id:{value:n.id||b,writable:!1},remoteVideo:{get:function(){return l}},localVideo:{get:function(){return d}},dataChannel:{get:function(){return s}},currentFrame:{get:function(){if(l){if(l.readyState<l.HAVE_CURRENT_DATA)throw new Error("No video stream data available");var e=document.createElement("canvas");return e.width=l.videoWidth,e.height=l.videoHeight,e.getContext("2d").drawImage(l,0,0),e}}}}),!p&&(p=new RTCPeerConnection(P),v&&!s)){var E="WebRtcPeer-"+c.id,T=void 0;m&&(E=m.id||E,T=m.options),s=p.createDataChannel(E,T),m&&(s.onopen=m.onopen,s.onclose=m.onclose,s.onmessage=m.onmessage,s.onbufferedamountlow=m.onbufferedamountlow,s.onerror=m.onerror||noop)}p.addEventListener("icecandidate",function(e){var n=e.candidate;if(EventEmitter.listenerCount(c,"icecandidate")||EventEmitter.listenerCount(c,"candidategatheringdone"))if(n){var t;t=C&&usePlanB?y.candidateToUnifiedPlan(n):n,c.emit("icecandidate",t),W=!1}else W||(c.emit("candidategatheringdone"),W=!0);else W||(D.push(n),n||(W=!0))}),p.ontrack=n.onaddstream,p.onnegotiationneeded=n.onnegotiationneeded,this.on("newListener",function(e,n){if("icecandidate"===e||"candidategatheringdone"===e)for(;D.length;){var t=D.shift();!t==("candidategatheringdone"===e)&&n(t)}});var k=bufferizeCandidates(p);this.addIceCandidate=function(e,n){var t;t=C&&usePlanB?y.candidateToPlanB(e):new RTCIceCandidate(e),logger.debug("Remote ICE candidate received",e),n=(n||noop).bind(this),k(t,n)},this.generateOffer=function(n){n=n.bind(this);var t=!0,r=!0;g&&(t="boolean"!=typeof g.audio||g.audio,r="boolean"!=typeof g.video||g.video);var o={offerToReceiveAudio:"sendonly"!==e&&t,offerToReceiveVideo:"sendonly"!==e&&r},a=o;logger.info("constraints: "+JSON.stringify(a)),p.createOffer(a).then(function(e){return logger.info("Created SDP offer"),e=i(e),p.setLocalDescription(e)}).then(function(){var e=p.localDescription;logger.info("Local description set",e.sdp),C&&usePlanB&&(e=y.toUnifiedPlan(e),logger.info("offer::origPlanB->UnifiedPlan",dumpSDP(e))),n(null,e.sdp,c.processAnswer.bind(c))}).catch(n)},this.getLocalSessionDescriptor=function(){return p.localDescription},this.getRemoteSessionDescriptor=function(){return p.remoteDescription},this.showLocalVideo=function(){d.src=URL.createObjectURL(u),d.muted=!0},this.send=function(e){s&&"open"===s.readyState?s.send(e):logger.warn("Trying to send data over a non-existing or closed data channel")},this.processAnswer=function(e,n){n=(n||noop).bind(this);var t=new RTCSessionDescription({type:"answer",sdp:e});if(C&&usePlanB){var i=y.toPlanB(t);logger.info("asnwer::planB",dumpSDP(i)),t=i}if(logger.info("SDP answer received, setting remote description"),"closed"===p.signalingState)return n("PeerConnection is closed");p.setRemoteDescription(t,function(){r(),n()},n)},this.processOffer=function(e,n){n=n.bind(this);var t=new RTCSessionDescription({type:"offer",sdp:e});if(C&&usePlanB){var o=y.toPlanB(t);logger.info("offer::planB",dumpSDP(o)),t=o}if(logger.info("SDP offer received, setting remote description"),"closed"===p.signalingState)return n("PeerConnection is closed");p.setRemoteDescription(t).then(function(){return r()}).then(function(){return p.createAnswer()}).then(function(e){return e=i(e),logger.info("Created SDP answer"),p.setLocalDescription(e)}).then(function(){var e=p.localDescription;C&&usePlanB&&(e=y.toUnifiedPlan(e),logger.info("answer::origPlanB->UnifiedPlan",dumpSDP(e))),logger.info("Local description set",e.sdp),n(null,e.sdp)}).catch(n)},"recvonly"===e||u||f?setTimeout(o,0):"webcam"===h?a(g):getScreenConstraints(h,function(e,n){if(e)return t(e);constraints=[g],constraints.unshift(n),a(recursive.apply(void 0,constraints))},b),this.on("_dispose",function(){d&&(d.pause(),d.src="",d.load(),d.muted=!1),l&&(l.pause(),l.src="",l.load()),c.removeAllListeners(),void 0!==window.cancelChooseDesktopMedia&&window.cancelChooseDesktopMedia(b)})}function createEnableDescriptor(e){var n="get"+e+"Tracks";return{enumerable:!0,get:function(){if(this.peerConnection){var e=this.peerConnection.getLocalStreams();if(e.length){for(var t,r=0;t=e[r];r++)for(var i,o=t[n](),a=0;i=o[a];a++)if(!i.enabled)return!1;return!0}}},set:function(e){function t(n){n.enabled=e}this.peerConnection.getLocalStreams().forEach(function(e){e[n]().forEach(t)})}}}function WebRtcPeerRecvonly(e,n){if(!(this instanceof WebRtcPeerRecvonly))return new WebRtcPeerRecvonly(e,n);WebRtcPeerRecvonly.super_.call(this,"recvonly",e,n)}function WebRtcPeerSendonly(e,n){if(!(this instanceof WebRtcPeerSendonly))return new WebRtcPeerSendonly(e,n);WebRtcPeerSendonly.super_.call(this,"sendonly",e,n)}function WebRtcPeerSendrecv(e,n){if(!(this instanceof WebRtcPeerSendrecv))return new WebRtcPeerSendrecv(e,n);WebRtcPeerSendrecv.super_.call(this,"sendrecv",e,n)}function harkUtils(e,n){return hark(e,n)}var freeice=require("freeice"),inherits=require("inherits"),UAParser=require("ua-parser-js"),uuid=require("uuid"),hark=require("hark"),EventEmitter=require("events").EventEmitter,recursive=require("merge").recursive.bind(void 0,!0),sdpTranslator=require("sdp-translator"),logger=window.Logger||console;try{require("kurento-browser-extensions")}catch(e){"undefined"==typeof getScreenConstraints&&(logger.warn("screen sharing is not available"),getScreenConstraints=function(e,n){n(new Error("This library is not enabled for screen sharing"))})}var MEDIA_CONSTRAINTS={audio:!0,video:{width:640,framerate:15}},ua=window&&window.navigator?window.navigator.userAgent:"",parser=new UAParser(ua),browser=parser.getBrowser(),usePlanB=!1;"Chrome"!==browser.name&&"Chromium"!==browser.name||(logger.info(browser.name+": using SDP PlanB"),usePlanB=!0);var dumpSDP=function(e){return void 0===e||null===e?"":"type: "+e.type+"\r\n"+e.sdp};inherits(WebRtcPeer,EventEmitter),Object.defineProperties(WebRtcPeer.prototype,{enabled:{enumerable:!0,get:function(){return this.audioEnabled&&this.videoEnabled},set:function(e){this.audioEnabled=this.videoEnabled=e}},audioEnabled:createEnableDescriptor("Audio"),videoEnabled:createEnableDescriptor("Video")}),WebRtcPeer.prototype.getLocalStream=function(e){if(this.peerConnection)return this.peerConnection.getLocalStreams()[e||0]},WebRtcPeer.prototype.getRemoteStream=function(e){if(this.peerConnection)return this.peerConnection.getRemoteStreams()[e||0]},WebRtcPeer.prototype.dispose=function(){logger.info("Disposing WebRtcPeer");var e=this.peerConnection,n=this.dataChannel;try{if(n){if("closed"===n.signalingState)return;n.close()}if(e){if("closed"===e.signalingState)return;e.getLocalStreams().forEach(streamStop),e.close()}}catch(e){logger.warn("Exception disposing webrtc peer "+e)}this.emit("_dispose")},inherits(WebRtcPeerRecvonly,WebRtcPeer),inherits(WebRtcPeerSendonly,WebRtcPeer),inherits(WebRtcPeerSendrecv,WebRtcPeer),exports.bufferizeCandidates=bufferizeCandidates,exports.WebRtcPeerRecvonly=WebRtcPeerRecvonly,exports.WebRtcPeerSendonly=WebRtcPeerSendonly,exports.WebRtcPeerSendrecv=WebRtcPeerSendrecv,exports.hark=harkUtils; -},{"events":4,"freeice":5,"hark":8,"inherits":9,"kurento-browser-extensions":10,"merge":11,"sdp-translator":18,"ua-parser-js":21,"uuid":23}],2:[function(require,module,exports){ -window.addEventListener&&(module.exports=require("./index")); -},{"./index":3}],3:[function(require,module,exports){ -var WebRtcPeer=require("./WebRtcPeer");exports.WebRtcPeer=WebRtcPeer; -},{"./WebRtcPeer":1}],4:[function(require,module,exports){ -function EventEmitter(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}function isFunction(e){return"function"==typeof e}function isNumber(e){return"number"==typeof e}function isObject(e){return"object"==typeof e&&null!==e}function isUndefined(e){return void 0===e}module.exports=EventEmitter,EventEmitter.EventEmitter=EventEmitter,EventEmitter.prototype._events=void 0,EventEmitter.prototype._maxListeners=void 0,EventEmitter.defaultMaxListeners=10,EventEmitter.prototype.setMaxListeners=function(e){if(!isNumber(e)||e<0||isNaN(e))throw TypeError("n must be a positive number");return this._maxListeners=e,this},EventEmitter.prototype.emit=function(e){var t,i,n,s,r,o;if(this._events||(this._events={}),"error"===e&&(!this._events.error||isObject(this._events.error)&&!this._events.error.length)){if((t=arguments[1])instanceof Error)throw t;var h=new Error('Uncaught, unspecified "error" event. ('+t+")");throw h.context=t,h}if(i=this._events[e],isUndefined(i))return!1;if(isFunction(i))switch(arguments.length){case 1:i.call(this);break;case 2:i.call(this,arguments[1]);break;case 3:i.call(this,arguments[1],arguments[2]);break;default:s=Array.prototype.slice.call(arguments,1),i.apply(this,s)}else if(isObject(i))for(s=Array.prototype.slice.call(arguments,1),o=i.slice(),n=o.length,r=0;r<n;r++)o[r].apply(this,s);return!0},EventEmitter.prototype.addListener=function(e,t){var i;if(!isFunction(t))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",e,isFunction(t.listener)?t.listener:t),this._events[e]?isObject(this._events[e])?this._events[e].push(t):this._events[e]=[this._events[e],t]:this._events[e]=t,isObject(this._events[e])&&!this._events[e].warned&&(i=isUndefined(this._maxListeners)?EventEmitter.defaultMaxListeners:this._maxListeners)&&i>0&&this._events[e].length>i&&(this._events[e].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[e].length),"function"==typeof console.trace&&console.trace()),this},EventEmitter.prototype.on=EventEmitter.prototype.addListener,EventEmitter.prototype.once=function(e,t){function i(){this.removeListener(e,i),n||(n=!0,t.apply(this,arguments))}if(!isFunction(t))throw TypeError("listener must be a function");var n=!1;return i.listener=t,this.on(e,i),this},EventEmitter.prototype.removeListener=function(e,t){var i,n,s,r;if(!isFunction(t))throw TypeError("listener must be a function");if(!this._events||!this._events[e])return this;if(i=this._events[e],s=i.length,n=-1,i===t||isFunction(i.listener)&&i.listener===t)delete this._events[e],this._events.removeListener&&this.emit("removeListener",e,t);else if(isObject(i)){for(r=s;r-- >0;)if(i[r]===t||i[r].listener&&i[r].listener===t){n=r;break}if(n<0)return this;1===i.length?(i.length=0,delete this._events[e]):i.splice(n,1),this._events.removeListener&&this.emit("removeListener",e,t)}return this},EventEmitter.prototype.removeAllListeners=function(e){var t,i;if(!this._events)return this;if(!this._events.removeListener)return 0===arguments.length?this._events={}:this._events[e]&&delete this._events[e],this;if(0===arguments.length){for(t in this._events)"removeListener"!==t&&this.removeAllListeners(t);return this.removeAllListeners("removeListener"),this._events={},this}if(i=this._events[e],isFunction(i))this.removeListener(e,i);else if(i)for(;i.length;)this.removeListener(e,i[i.length-1]);return delete this._events[e],this},EventEmitter.prototype.listeners=function(e){return this._events&&this._events[e]?isFunction(this._events[e])?[this._events[e]]:this._events[e].slice():[]},EventEmitter.prototype.listenerCount=function(e){if(this._events){var t=this._events[e];if(isFunction(t))return 1;if(t)return t.length}return 0},EventEmitter.listenerCount=function(e,t){return e.listenerCount(t)}; -},{}],5:[function(require,module,exports){ -"use strict";var normalice=require("normalice"),freeice=module.exports=function(n){function t(n,t){for(var r,u=[],o=[].concat(e[n]);o.length&&u.length<t;)r=Math.random()*o.length|0,u=u.concat(o.splice(r,1));return u.map(function(t){return"string"==typeof t||t instanceof String?normalice(n+":"+t):t})}var r,e={stun:(n||{}).stun||require("./stun.json"),turn:(n||{}).turn||require("./turn.json")},u=(n||{}).stunCount||2,o=(n||{}).turnCount||0;return r=[].concat(t("stun",u)),o&&(r=r.concat(t("turn",o))),r}; -},{"./stun.json":6,"./turn.json":7,"normalice":12}],6:[function(require,module,exports){ -module.exports=["stun.l.google.com:19302","stun1.l.google.com:19302","stun2.l.google.com:19302","stun3.l.google.com:19302","stun4.l.google.com:19302","stun.ekiga.net","stun.ideasip.com","stun.schlund.de","stun.stunprotocol.org:3478","stun.voiparound.com","stun.voipbuster.com","stun.voipstunt.com","stun.voxgratia.org","stun.services.mozilla.com"] -},{}],7:[function(require,module,exports){ -module.exports=[] -},{}],8:[function(require,module,exports){ -function getMaxVolume(e,t){var i=-1/0;e.getFloatFrequencyData(t);for(var n=4,o=t.length;n<o;n++)t[n]>i&&t[n]<0&&(i=t[n]);return i}var WildEmitter=require("wildemitter"),audioContextType=window.AudioContext||window.webkitAudioContext,audioContext=null;module.exports=function(e,t){var i=new WildEmitter;if(!audioContextType)return i;var t=t||{},n=t.smoothing||.1,o=t.interval||50,a=t.threshold,r=t.play,s=t.history||10,u=!0;audioContext||(audioContext=new audioContextType);var p,g,d;d=audioContext.createAnalyser(),d.fftSize=512,d.smoothingTimeConstant=n,g=new Float32Array(d.fftSize),e.jquery&&(e=e[0]),e instanceof HTMLAudioElement||e instanceof HTMLVideoElement?(p=audioContext.createMediaElementSource(e),void 0===r&&(r=!0),a=a||-50):(p=audioContext.createMediaStreamSource(e),a=a||-50),p.connect(d),r&&d.connect(audioContext.destination),i.speaking=!1,i.setThreshold=function(e){a=e},i.setInterval=function(e){o=e},i.stop=function(){u=!1,i.emit("volume_change",-100,a),i.speaking&&(i.speaking=!1,i.emit("stopped_speaking"))},i.speakingHistory=[];for(var l=0;l<s;l++)i.speakingHistory.push(0);var f=function(){setTimeout(function(){if(u){var e=getMaxVolume(d,g);i.emit("volume_change",e,a);var t=0;if(e>a&&!i.speaking){for(var n=i.speakingHistory.length-3;n<i.speakingHistory.length;n++)t+=i.speakingHistory[n];t>=2&&(i.speaking=!0,i.emit("speaking"))}else if(e<a&&i.speaking){for(var n=0;n<i.speakingHistory.length;n++)t+=i.speakingHistory[n];0==t&&(i.speaking=!1,i.emit("stopped_speaking"))}i.speakingHistory.shift(),i.speakingHistory.push(0+(e>a)),f()}},o)};return f(),i}; -},{"wildemitter":24}],9:[function(require,module,exports){ -"function"==typeof Object.create?module.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(t,e){t.super_=e;var o=function(){};o.prototype=e.prototype,t.prototype=new o,t.prototype.constructor=t}; -},{}],10:[function(require,module,exports){ - -},{}],11:[function(require,module,exports){ -!function(e){function o(e,r){if("object"!==n(e))return r;for(var t in r)"object"===n(e[t])&&"object"===n(r[t])?e[t]=o(e[t],r[t]):e[t]=r[t];return e}function r(e,r,c){var u=c[0],f=c.length;(e||"object"!==n(u))&&(u={});for(var i=0;i<f;++i){var l=c[i];if("object"===n(l))for(var a in l){var v=e?t.clone(l[a]):l[a];u[a]=r?o(u[a],v):v}}return u}function n(e){return{}.toString.call(e).slice(8,-1).toLowerCase()}var t=function(e){return r(!0===e,!1,arguments)};t.recursive=function(e){return r(!0===e,!0,arguments)},t.clone=function(e){var o,r,c=e,u=n(e);if("array"===u)for(c=[],r=e.length,o=0;o<r;++o)c[o]=t.clone(e[o]);else if("object"===u){c={};for(o in e)c[o]=t.clone(e[o])}return c},e?module.exports=t:window.merge=t}("object"==typeof module&&module&&"object"==typeof module.exports&&module.exports); -},{}],12:[function(require,module,exports){ -var protocols=["stun:","turn:"];module.exports=function(e){var r,t,n=(e||{}).url||e,l={};return"string"==typeof n||n instanceof String?(n=n.trim(),(r=protocols[protocols.indexOf(n.slice(0,5))])?(n=n.slice(5),t=n.split("@"),l.username=e.username,l.credential=e.credential,t.length>1&&(n=t[1],t=t[0].split(":"),l.username=t[0],l.credential=(e||{}).credential||t[1]||""),l.url=r+n,l.urls=[l.url],l):e):e}; -},{}],13:[function(require,module,exports){ -var grammar=module.exports={v:[{name:"version",reg:/^(\d*)$/}],o:[{name:"origin",reg:/^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/,names:["username","sessionId","sessionVersion","netType","ipVer","address"],format:"%s %s %d %s IP%d %s"}],s:[{name:"name"}],i:[{name:"description"}],u:[{name:"uri"}],e:[{name:"email"}],p:[{name:"phone"}],z:[{name:"timezones"}],r:[{name:"repeats"}],t:[{name:"timing",reg:/^(\d*) (\d*)/,names:["start","stop"],format:"%d %d"}],c:[{name:"connection",reg:/^IN IP(\d) (\S*)/,names:["version","ip"],format:"IN IP%d %s"}],b:[{push:"bandwidth",reg:/^(TIAS|AS|CT|RR|RS):(\d*)/,names:["type","limit"],format:"%s:%s"}],m:[{reg:/^(\w*) (\d*) ([\w\/]*)(?: (.*))?/,names:["type","port","protocol","payloads"],format:"%s %d %s %s"}],a:[{push:"rtp",reg:/^rtpmap:(\d*) ([\w\-]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/,names:["payload","codec","rate","encoding"],format:function(e){return e.encoding?"rtpmap:%d %s/%s/%s":e.rate?"rtpmap:%d %s/%s":"rtpmap:%d %s"}},{push:"fmtp",reg:/^fmtp:(\d*) ([\S| ]*)/,names:["payload","config"],format:"fmtp:%d %s"},{name:"control",reg:/^control:(.*)/,format:"control:%s"},{name:"rtcp",reg:/^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/,names:["port","netType","ipVer","address"],format:function(e){return null!=e.address?"rtcp:%d %s IP%d %s":"rtcp:%d"}},{push:"rtcpFbTrrInt",reg:/^rtcp-fb:(\*|\d*) trr-int (\d*)/,names:["payload","value"],format:"rtcp-fb:%d trr-int %d"},{push:"rtcpFb",reg:/^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/,names:["payload","type","subtype"],format:function(e){return null!=e.subtype?"rtcp-fb:%s %s %s":"rtcp-fb:%s %s"}},{push:"ext",reg:/^extmap:([\w_\/]*) (\S*)(?: (\S*))?/,names:["value","uri","config"],format:function(e){return null!=e.config?"extmap:%s %s %s":"extmap:%s %s"}},{push:"crypto",reg:/^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/,names:["id","suite","config","sessionConfig"],format:function(e){return null!=e.sessionConfig?"crypto:%d %s %s %s":"crypto:%d %s %s"}},{name:"setup",reg:/^setup:(\w*)/,format:"setup:%s"},{name:"mid",reg:/^mid:([^\s]*)/,format:"mid:%s"},{name:"msid",reg:/^msid:(.*)/,format:"msid:%s"},{name:"ptime",reg:/^ptime:(\d*)/,format:"ptime:%d"},{name:"maxptime",reg:/^maxptime:(\d*)/,format:"maxptime:%d"},{name:"direction",reg:/^(sendrecv|recvonly|sendonly|inactive)/},{name:"icelite",reg:/^(ice-lite)/},{name:"iceUfrag",reg:/^ice-ufrag:(\S*)/,format:"ice-ufrag:%s"},{name:"icePwd",reg:/^ice-pwd:(\S*)/,format:"ice-pwd:%s"},{name:"fingerprint",reg:/^fingerprint:(\S*) (\S*)/,names:["type","hash"],format:"fingerprint:%s %s"},{push:"candidates",reg:/^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?/,names:["foundation","component","transport","priority","ip","port","type","raddr","rport","tcptype","generation"],format:function(e){var r="candidate:%s %d %s %d %s %d typ %s";return r+=null!=e.raddr?" raddr %s rport %d":"%v%v",r+=null!=e.tcptype?" tcptype %s":"%v",null!=e.generation&&(r+=" generation %d"),r}},{name:"endOfCandidates",reg:/^(end-of-candidates)/},{name:"remoteCandidates",reg:/^remote-candidates:(.*)/,format:"remote-candidates:%s"},{name:"iceOptions",reg:/^ice-options:(\S*)/,format:"ice-options:%s"},{push:"ssrcs",reg:/^ssrc:(\d*) ([\w_]*):(.*)/,names:["id","attribute","value"],format:"ssrc:%d %s:%s"},{push:"ssrcGroups",reg:/^ssrc-group:(\w*) (.*)/,names:["semantics","ssrcs"],format:"ssrc-group:%s %s"},{name:"msidSemantic",reg:/^msid-semantic:\s?(\w*) (\S*)/,names:["semantic","token"],format:"msid-semantic: %s %s"},{push:"groups",reg:/^group:(\w*) (.*)/,names:["type","mids"],format:"group:%s %s"},{name:"rtcpMux",reg:/^(rtcp-mux)/},{name:"rtcpRsize",reg:/^(rtcp-rsize)/},{push:"invalid",names:["value"]}]};Object.keys(grammar).forEach(function(e){grammar[e].forEach(function(e){e.reg||(e.reg=/(.*)/),e.format||(e.format="%s")})}); -},{}],14:[function(require,module,exports){ -var parser=require("./parser"),writer=require("./writer");exports.write=writer,exports.parse=parser.parse,exports.parseFmtpConfig=parser.parseFmtpConfig,exports.parsePayloads=parser.parsePayloads,exports.parseRemoteCandidates=parser.parseRemoteCandidates; -},{"./parser":15,"./writer":16}],15:[function(require,module,exports){ -var toIntIfInt=function(t){return String(Number(t))===t?Number(t):t},attachProperties=function(t,r,e,n){if(n&&!e)r[n]=toIntIfInt(t[1]);else for(var a=0;a<e.length;a+=1)null!=t[a+1]&&(r[e[a]]=toIntIfInt(t[a+1]))},parseReg=function(t,r,e){var n=t.name&&t.names;t.push&&!r[t.push]?r[t.push]=[]:n&&!r[t.name]&&(r[t.name]={});var a=t.push?{}:n?r[t.name]:r;attachProperties(e.match(t.reg),a,t.names,t.name),t.push&&r[t.push].push(a)},grammar=require("./grammar"),validLine=RegExp.prototype.test.bind(/^([a-z])=(.*)/);exports.parse=function(t){var r={},e=[],n=r;return t.split(/(\r\n|\r|\n)/).filter(validLine).forEach(function(t){var r=t[0],a=t.slice(2);"m"===r&&(e.push({rtp:[],fmtp:[]}),n=e[e.length-1]);for(var p=0;p<(grammar[r]||[]).length;p+=1){var s=grammar[r][p];if(s.reg.test(a))return parseReg(s,n,a)}}),r.media=e,r};var fmtpReducer=function(t,r){var e=r.split("=");return 2===e.length&&(t[e[0]]=toIntIfInt(e[1])),t};exports.parseFmtpConfig=function(t){return t.split(/\;\s?/).reduce(fmtpReducer,{})},exports.parsePayloads=function(t){return t.split(" ").map(Number)},exports.parseRemoteCandidates=function(t){for(var r=[],e=t.split(" ").map(toIntIfInt),n=0;n<e.length;n+=3)r.push({component:e[n],ip:e[n+1],port:e[n+2]});return r}; -},{"./grammar":13}],16:[function(require,module,exports){ -var grammar=require("./grammar"),formatRegExp=/%[sdv%]/g,format=function(n){var r=1,e=arguments,a=e.length;return n.replace(formatRegExp,function(n){if(r>=a)return n;var u=e[r];switch(r+=1,n){case"%%":return"%";case"%s":return String(u);case"%d":return Number(u);case"%v":return""}})},makeLine=function(n,r,e){var a=r.format instanceof Function?r.format(r.push?e:e[r.name]):r.format,u=[n+"="+a];if(r.names)for(var m=0;m<r.names.length;m+=1){var t=r.names[m];r.name?u.push(e[r.name][t]):u.push(e[r.names[m]])}else u.push(e[r.name]);return format.apply(null,u)},defaultOuterOrder=["v","o","s","i","u","e","p","c","b","t","r","z","a"],defaultInnerOrder=["i","c","b","a"];module.exports=function(n,r){r=r||{},null==n.version&&(n.version=0),null==n.name&&(n.name=" "),n.media.forEach(function(n){null==n.payloads&&(n.payloads="")});var e=r.outerOrder||defaultOuterOrder,a=r.innerOrder||defaultInnerOrder,u=[];return e.forEach(function(r){grammar[r].forEach(function(e){e.name in n&&null!=n[e.name]?u.push(makeLine(r,e,n)):e.push in n&&null!=n[e.push]&&n[e.push].forEach(function(n){u.push(makeLine(r,e,n))})})}),n.media.forEach(function(n){u.push(makeLine("m",grammar.m[0],n)),a.forEach(function(r){grammar[r].forEach(function(e){e.name in n&&null!=n[e.name]?u.push(makeLine(r,e,n)):e.push in n&&null!=n[e.push]&&n[e.push].forEach(function(n){u.push(makeLine(r,e,n))})})})}),u.join("\r\n")+"\r\n"}; -},{"./grammar":13}],17:[function(require,module,exports){ -module.exports=function r(t){if(!t)return!1;if(this.length!=t.length)return!1;for(var e=0,n=this.length;e<n;e++)if(this[e]instanceof Array&&t[e]instanceof Array){if(!r.apply(this[e],[t[e]]))return!1}else if(this[e]!=t[e])return!1;return!0}; -},{}],18:[function(require,module,exports){ -exports.Interop=require("./interop"); -},{"./interop":19}],19:[function(require,module,exports){ -"use strict";function Interop(){this.cache={mlB2UMap:{},mlU2BMap:{}}}function addSetupAttr(e){void 0!==e.setup&&("active"===e.setup?e.setup="passive":"passive"===e.setup&&(e.setup="active"))}var transform=require("./transform"),arrayEquals=require("./array-equals");module.exports=Interop,Interop.prototype.candidateToUnifiedPlan=function(e){var r=new RTCIceCandidate(e);return r.sdpMLineIndex=this.cache.mlB2UMap[r.sdpMLineIndex],r},Interop.prototype.candidateToPlanB=function(e){var r=new RTCIceCandidate(e);if(0===r.sdpMid.indexOf("audio"))r.sdpMid="audio";else{if(0!==r.sdpMid.indexOf("video"))throw new Error("candidate with "+r.sdpMid+" not allowed");r.sdpMid="video"}return r.sdpMLineIndex=this.cache.mlU2BMap[r.sdpMLineIndex],r},Interop.prototype.getFirstSendingIndexFromAnswer=function(e){if(!this.cache.answer)return null;var r=transform.parse(this.cache.answer);if(r&&r.media&&Array.isArray(r.media))for(var i=0;i<r.media.length;i++)if(r.media[i].type==e&&(!r.media[i].direction||"sendrecv"===r.media[i].direction||"sendonly"===r.media[i].direction))return i;return null},Interop.prototype.toPlanB=function(e){var r=this;if("object"!=typeof e||null===e||"string"!=typeof e.sdp)return console.warn("An empty description was passed as an argument."),e;var i=transform.parse(e.sdp);if(void 0===i.media||!Array.isArray(i.media)||0===i.media.length)return console.warn("The description has no media."),e;if(i.media.length<=3&&i.media.every(function(e){return-1!==["video","audio","data"].indexOf(e.mid)}))return console.warn("This description does not look like Unified Plan."),e;for(var t=e.sdp,o=!1,n=0;n<i.media.length;n++){i.media[n].rtp.forEach(function(e){if("NULL"===e.codec){o=!0;var i=transform.parse(r.cache.offer);e.codec=i.media[n].rtp[0].codec}})}o&&(t=transform.write(i)),this.cache[e.type]=t;var s=i.media;i.media=[];var a={},d=[];s.forEach(function(e){if(("string"!=typeof e.rtcpMux||"rtcp-mux"!==e.rtcpMux)&&"inactive"!==e.direction)throw new Error("Cannot convert to Plan B because m-lines without the rtcp-mux attribute were found.");if(void 0!==a[e.type]&&"inactive"!==a[e.type].direction||(a[e.type]=e),e.protocol!=a[e.type].protocol)throw new Error("Cannot convert to Plan B because m-lines have different protocols and this library does not have support for that");if(e.payloads!=a[e.type].payloads)throw new Error("Cannot convert to Plan B because m-lines have different payloads and this library does not have support for that")}),s.forEach(function(e){if("application"===e.type)return i.media.push(e),void d.push(e.mid);"object"==typeof e.sources&&Object.keys(e.sources).forEach(function(r){"object"!=typeof a[e.type].sources&&(a[e.type].sources={}),a[e.type].sources[r]=e.sources[r],void 0!==e.msid&&(a[e.type].sources[r].msid=e.msid)}),void 0!==e.ssrcGroups&&Array.isArray(e.ssrcGroups)&&(void 0!==a[e.type].ssrcGroups&&Array.isArray(a[e.type].ssrcGroups)||(a[e.type].ssrcGroups=[]),a[e.type].ssrcGroups=a[e.type].ssrcGroups.concat(e.ssrcGroups)),a[e.type]===e&&(e.mid=e.type,delete e.bundleOnly,delete e.msid,e.type==s[0].type?(d.unshift(e.type),i.media.unshift(e)):(d.push(e.type),i.media.push(e)))}),void 0!==i.groups&&i.groups.some(function(e){if("BUNDLE"===e.type)return e.mids=d.join(" "),!0}),i.msidSemantic={semantic:"WMS",token:"*"};var c=transform.write(i);return new RTCSessionDescription({type:e.type,sdp:c})},Interop.prototype.toUnifiedPlan=function(e){var r=this;if("object"!=typeof e||null===e||"string"!=typeof e.sdp)return console.warn("An empty description was passed as an argument."),e;var i=transform.parse(e.sdp);if(void 0===i.media||!Array.isArray(i.media)||0===i.media.length)return console.warn("The description has no media."),e;if(i.media.length>3||!i.media.every(function(e){return-1!==["video","audio","data"].indexOf(e.mid)}))return console.warn("This description does not look like Plan B."),e;var t=[];i.media.forEach(function(e){t.push(e.mid)});var o=!1;if(void 0!==i.groups&&Array.isArray(i.groups)&&(o=i.groups.every(function(e){return"BUNDLE"!==e.type||arrayEquals.apply(e.mids.sort(),[t.sort()])})),!o){var n=!1;if(i.media.forEach(function(e){"inactive"!==e.direction&&(n=!0)}),n)throw new Error("Cannot convert to Unified Plan because m-lines that are not bundled were found.")}var s;if("answer"===e.type)s="offer";else{if("offer"!==e.type)throw new Error("Type '"+e.type+"' not supported.");s="answer"}var a;void 0!==this.cache[s]&&(a=transform.parse(this.cache[s]));var d,c,p,u,f={audio:{},video:{}},m={},y=0,l=0,v={},h={},w={},g={};if(i.media.forEach(function(i){if(("string"!=typeof i.rtcpMux||"rtcp-mux"!==i.rtcpMux)&&"inactive"!==i.direction)throw new Error("Cannot convert to Unified Plan because m-lines without the rtcp-mux attribute were found.");if("application"===i.type)return void(m[i.mid]=i);var t=i.sources,o=i.ssrcGroups,n=i.port;if(void 0!==i.candidates&&(d=void 0!==d?d.concat(i.candidates):i.candidates),void 0!==c&&void 0!==i.iceUfrag&&c!=i.iceUfrag)throw new Error("Only BUNDLE supported, iceUfrag must be the same for all m-lines.\n\tLast iceUfrag: "+c+"\n\tNew iceUfrag: "+i.iceUfrag);if(void 0!==i.iceUfrag&&(c=i.iceUfrag),void 0!==p&&void 0!==i.icePwd&&p!=i.icePwd)throw new Error("Only BUNDLE supported, icePwd must be the same for all m-lines.\n\tLast icePwd: "+p+"\n\tNew icePwd: "+i.icePwd);if(void 0!==i.icePwd&&(p=i.icePwd),void 0!==u&&void 0!==i.fingerprint&&(u.type!=i.fingerprint.type||u.hash!=i.fingerprint.hash))throw new Error("Only BUNDLE supported, fingerprint must be the same for all m-lines.\n\tLast fingerprint: "+JSON.stringify(u)+"\n\tNew fingerprint: "+JSON.stringify(i.fingerprint));void 0!==i.fingerprint&&(u=i.fingerprint),h[i.type]=i.payloads,w[i.type]=i.rtcpFb,g[i.type]=i.rtp;var s={};void 0!==o&&Array.isArray(o)&&o.forEach(function(e){void 0!==e.ssrcs&&Array.isArray(e.ssrcs)&&e.ssrcs.forEach(function(r){void 0===s[r]&&(s[r]=[]),s[r].push(e)})});var E={};if("object"==typeof t)delete i.sources,delete i.ssrcGroups,delete i.candidates,delete i.iceUfrag,delete i.icePwd,delete i.fingerprint,delete i.port,delete i.mid,Object.keys(t).forEach(function(o){var h;if("offer"===e.type&&!t[o].msid)return void(f[i.type][o]=t[o]);void 0!==s[o]&&Array.isArray(s[o])&&s[o].some(function(e){return e.ssrcs.some(function(e){if("object"==typeof E[e])return h=E[e],!0})}),"object"==typeof h?(h.sources[o]=t[o],delete t[o].msid):(h=Object.create(i),E[o]=h,void 0!==t[o].msid&&(h.msid=t[o].msid,delete t[o].msid),h.sources={},h.sources[o]=t[o],h.ssrcGroups=s[o],void 0!==a&&void 0!==a.media&&Array.isArray(a.media)&&a.media.forEach(function(e){"object"==typeof e.sources&&Object.keys(e.sources).forEach(function(r){r===o&&(h.mid=e.mid)})}),void 0===h.mid&&(h.mid=[i.type,"-",o].join("")),h.candidates=d,h.iceUfrag=c,h.icePwd=p,h.fingerprint=u,h.port=n,m[h.mid]=h,v[l]=h.sources,r.cache.mlU2BMap[l]=y,void 0===r.cache.mlB2UMap[y]&&(r.cache.mlB2UMap[y]=l),l++)});else{var U=i;U.candidates=d,U.iceUfrag=c,U.icePwd=p,U.fingerprint=u,U.port=n,m[U.mid]=U,r.cache.mlU2BMap[l]=y,void 0===r.cache.mlB2UMap[y]&&(r.cache.mlB2UMap[y]=l)}y++}),i.media=[],t=[],"answer"===e.type)for(var E=0;E<a.media.length;E++){var U=a.media[E];delete U.msid,delete U.sources,delete U.ssrcGroups,void 0===v[E]?U.direction&&"sendrecv"!==U.direction?"sendonly"===U.direction&&(U.direction="inactive"):U.direction="recvonly":U.direction&&"sendrecv"!==U.direction?"recvonly"===U.direction&&(U.direction="sendonly"):U.direction="sendrecv",U.sources=v[E],U.candidates=d,U.iceUfrag=c,U.icePwd=p,U.fingerprint=u,U.rtp=g[U.type],U.payloads=h[U.type],U.rtcpFb=w[U.type],i.media.push(U),"string"==typeof U.mid&&t.push(U.mid)}else void 0!==a&&void 0!==a.media&&Array.isArray(a.media)&&a.media.forEach(function(e){t.push(e.mid),void 0!==m[e.mid]?i.media.push(m[e.mid]):(delete e.msid,delete e.sources,delete e.ssrcGroups,e.direction&&"sendrecv"!==e.direction||(e.direction="sendonly"),e.direction&&"recvonly"!==e.direction||(e.direction="inactive"),addSetupAttr(e),i.media.push(e))}),Object.keys(m).forEach(function(e){if(-1===t.indexOf(e))if(t.push(e),"recvonly"===m[e].direction){var r=!1;i.media.some(function(i){if(("sendrecv"===i.direction||"sendonly"===i.direction)&&i.type===m[e].type)return Object.keys(m[e].sources).forEach(function(r){i.sources[r]=m[e].sources[r]}),r=!0,!0}),r||i.media.push(m[e])}else i.media.push(m[e])});["audio","video"].forEach(function(e){if(i&&i.media&&Array.isArray(i.media)){var t=null;if(Object.keys(f[e]).length>0&&null===(t=r.getFirstSendingIndexFromAnswer(e)))for(var o=0;o<i.media.length;o++)if(i.media[o].type===e){t=o;break}if(t&&i.media.length>t){var n=i.media[t];Object.keys(f[e]).forEach(function(r){n.sources&&n.sources[r]&&console.warn("Replacing an existing SSRC."),n.sources||(n.sources={}),n.sources[r]=f[e][r]})}}}),void 0!==i.groups&&i.groups.some(function(e){if("BUNDLE"===e.type)return e.mids=t.join(" "),!0}),i.msidSemantic={semantic:"WMS",token:"*"};var b=transform.write(i);return this.cache[e.type]=b,new RTCSessionDescription({type:e.type,sdp:b})}; -},{"./array-equals":17,"./transform":20}],20:[function(require,module,exports){ -var transform=require("sdp-transform");exports.write=function(s,r){return void 0!==s&&void 0!==s.media&&Array.isArray(s.media)&&s.media.forEach(function(s){void 0!==s.sources&&0!==Object.keys(s.sources).length&&(s.ssrcs=[],Object.keys(s.sources).forEach(function(r){var o=s.sources[r];Object.keys(o).forEach(function(i){s.ssrcs.push({id:r,attribute:i,value:o[i]})})}),delete s.sources),void 0!==s.ssrcGroups&&Array.isArray(s.ssrcGroups)&&s.ssrcGroups.forEach(function(s){void 0!==s.ssrcs&&Array.isArray(s.ssrcs)&&(s.ssrcs=s.ssrcs.join(" "))})}),void 0!==s&&void 0!==s.groups&&Array.isArray(s.groups)&&s.groups.forEach(function(s){void 0!==s.mids&&Array.isArray(s.mids)&&(s.mids=s.mids.join(" "))}),transform.write(s,r)},exports.parse=function(s){var r=transform.parse(s);return void 0!==r&&void 0!==r.media&&Array.isArray(r.media)&&r.media.forEach(function(s){void 0!==s.ssrcs&&Array.isArray(s.ssrcs)&&(s.sources={},s.ssrcs.forEach(function(r){s.sources[r.id]||(s.sources[r.id]={}),s.sources[r.id][r.attribute]=r.value}),delete s.ssrcs),void 0!==s.ssrcGroups&&Array.isArray(s.ssrcGroups)&&s.ssrcGroups.forEach(function(s){"string"==typeof s.ssrcs&&(s.ssrcs=s.ssrcs.split(" "))})}),void 0!==r&&void 0!==r.groups&&Array.isArray(r.groups)&&r.groups.forEach(function(s){"string"==typeof s.mids&&(s.mids=s.mids.split(" "))}),r}; -},{"sdp-transform":14}],21:[function(require,module,exports){ -!function(i,e){"use strict";var s="model",o="name",r="type",n="vendor",a="version",t="mobile",w="tablet",d={extend:function(i,e){var s={};for(var o in i)e[o]&&e[o].length%2==0?s[o]=e[o].concat(i[o]):s[o]=i[o];return s},has:function(i,e){return"string"==typeof i&&-1!==e.toLowerCase().indexOf(i.toLowerCase())},lowerize:function(i){return i.toLowerCase()},major:function(i){return"string"==typeof i?i.replace(/[^\d\.]/g,"").split(".")[0]:void 0},trim:function(i){return i.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},l={rgx:function(){for(var i,e,s,o,r,n,a,t=0,w=arguments;t<w.length&&!n;){var d=w[t],l=w[t+1];if(void 0===i){i={};for(o in l)l.hasOwnProperty(o)&&(r=l[o],"object"==typeof r?i[r[0]]=void 0:i[r]=void 0)}for(e=s=0;e<d.length&&!n;)if(n=d[e++].exec(this.getUA()))for(o=0;o<l.length;o++)a=n[++s],r=l[o],"object"==typeof r&&r.length>0?2==r.length?"function"==typeof r[1]?i[r[0]]=r[1].call(this,a):i[r[0]]=r[1]:3==r.length?"function"!=typeof r[1]||r[1].exec&&r[1].test?i[r[0]]=a?a.replace(r[1],r[2]):void 0:i[r[0]]=a?r[1].call(this,a,r[2]):void 0:4==r.length&&(i[r[0]]=a?r[3].call(this,a.replace(r[1],r[2])):void 0):i[r]=a||void 0;t+=2}return i},str:function(i,e){for(var s in e)if("object"==typeof e[s]&&e[s].length>0){for(var o=0;o<e[s].length;o++)if(d.has(e[s][o],i))return"?"===s?void 0:s}else if(d.has(e[s],i))return"?"===s?void 0:s;return i}},c={browser:{oldsafari:{version:{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}}},device:{amazon:{model:{"Fire Phone":["SD","KF"]}},sprint:{model:{"Evo Shift 4G":"7373KT"},vendor:{HTC:"APA",Sprint:"Sprint"}}},os:{windows:{version:{ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2000:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"}}}},u={browser:[[/(opera\smini)\/([\w\.-]+)/i,/(opera\s[mobiletab]+).+version\/([\w\.-]+)/i,/(opera).+version\/([\w\.]+)/i,/(opera)[\/\s]+([\w\.]+)/i],[o,a],[/(opios)[\/\s]+([\w\.]+)/i],[[o,"Opera Mini"],a],[/\s(opr)\/([\w\.]+)/i],[[o,"Opera"],a],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i,/(avant\s|iemobile|slim|baidu)(?:browser)?[\/\s]?([\w\.]*)/i,/(?:ms|\()(ie)\s([\w\.]+)/i,/(rekonq)\/([\w\.]+)*/i,/(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs)\/([\w\.-]+)/i],[o,a],[/(trident).+rv[:\s]([\w\.]+).+like\sgecko/i],[[o,"IE"],a],[/(edge)\/((\d+)?[\w\.]+)/i],[o,a],[/(yabrowser)\/([\w\.]+)/i],[[o,"Yandex"],a],[/(comodo_dragon)\/([\w\.]+)/i],[[o,/_/g," "],a],[/(micromessenger)\/([\w\.]+)/i],[[o,"WeChat"],a],[/xiaomi\/miuibrowser\/([\w\.]+)/i],[a,[o,"MIUI Browser"]],[/\swv\).+(chrome)\/([\w\.]+)/i],[[o,/(.+)/,"$1 WebView"],a],[/android.+samsungbrowser\/([\w\.]+)/i,/android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)*/i],[a,[o,"Android Browser"]],[/(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i,/(qqbrowser)[\/\s]?([\w\.]+)/i],[o,a],[/(uc\s?browser)[\/\s]?([\w\.]+)/i,/ucweb.+(ucbrowser)[\/\s]?([\w\.]+)/i,/juc.+(ucweb)[\/\s]?([\w\.]+)/i],[[o,"UCBrowser"],a],[/(dolfin)\/([\w\.]+)/i],[[o,"Dolphin"],a],[/((?:android.+)crmo|crios)\/([\w\.]+)/i],[[o,"Chrome"],a],[/;fbav\/([\w\.]+);/i],[a,[o,"Facebook"]],[/fxios\/([\w\.-]+)/i],[a,[o,"Firefox"]],[/version\/([\w\.]+).+?mobile\/\w+\s(safari)/i],[a,[o,"Mobile Safari"]],[/version\/([\w\.]+).+?(mobile\s?safari|safari)/i],[a,o],[/webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i],[o,[a,l.str,c.browser.oldsafari.version]],[/(konqueror)\/([\w\.]+)/i,/(webkit|khtml)\/([\w\.]+)/i],[o,a],[/(navigator|netscape)\/([\w\.-]+)/i],[[o,"Netscape"],a],[/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i,/(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i,/(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i,/(links)\s\(([\w\.]+)/i,/(gobrowser)\/?([\w\.]+)*/i,/(ice\s?browser)\/v?([\w\._]+)/i,/(mosaic)[\/\s]([\w\.]+)/i],[o,a]],cpu:[[/(?:(amd|x(?:(?:86|64)[_-])?|wow|win)64)[;\)]/i],[["architecture","amd64"]],[/(ia32(?=;))/i],[["architecture",d.lowerize]],[/((?:i[346]|x)86)[;\)]/i],[["architecture","ia32"]],[/windows\s(ce|mobile);\sppc;/i],[["architecture","arm"]],[/((?:ppc|powerpc)(?:64)?)(?:\smac|;|\))/i],[["architecture",/ower/,"",d.lowerize]],[/(sun4\w)[;\)]/i],[["architecture","sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|arm(?:64|(?=v\d+;))|(?=atmel\s)avr|(?:irix|mips|sparc)(?:64)?(?=;)|pa-risc)/i],[["architecture",d.lowerize]]],device:[[/\((ipad|playbook);[\w\s\);-]+(rim|apple)/i],[s,n,[r,w]],[/applecoremedia\/[\w\.]+ \((ipad)/],[s,[n,"Apple"],[r,w]],[/(apple\s{0,1}tv)/i],[[s,"Apple TV"],[n,"Apple"]],[/(archos)\s(gamepad2?)/i,/(hp).+(touchpad)/i,/(hp).+(tablet)/i,/(kindle)\/([\w\.]+)/i,/\s(nook)[\w\s]+build\/(\w+)/i,/(dell)\s(strea[kpr\s\d]*[\dko])/i],[n,s,[r,w]],[/(kf[A-z]+)\sbuild\/[\w\.]+.*silk\//i],[s,[n,"Amazon"],[r,w]],[/(sd|kf)[0349hijorstuw]+\sbuild\/[\w\.]+.*silk\//i],[[s,l.str,c.device.amazon.model],[n,"Amazon"],[r,t]],[/\((ip[honed|\s\w*]+);.+(apple)/i],[s,n,[r,t]],[/\((ip[honed|\s\w*]+);/i],[s,[n,"Apple"],[r,t]],[/(blackberry)[\s-]?(\w+)/i,/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|huawei|meizu|motorola|polytron)[\s_-]?([\w-]+)*/i,/(hp)\s([\w\s]+\w)/i,/(asus)-?(\w+)/i],[n,s,[r,t]],[/\(bb10;\s(\w+)/i],[s,[n,"BlackBerry"],[r,t]],[/android.+(transfo[prime\s]{4,10}\s\w+|eeepc|slider\s\w+|nexus 7|padfone)/i],[s,[n,"Asus"],[r,w]],[/(sony)\s(tablet\s[ps])\sbuild\//i,/(sony)?(?:sgp.+)\sbuild\//i],[[n,"Sony"],[s,"Xperia Tablet"],[r,w]],[/(?:sony)?(?:(?:(?:c|d)\d{4})|(?:so[-l].+))\sbuild\//i],[[n,"Sony"],[s,"Xperia Phone"],[r,t]],[/\s(ouya)\s/i,/(nintendo)\s([wids3u]+)/i],[n,s,[r,"console"]],[/android.+;\s(shield)\sbuild/i],[s,[n,"Nvidia"],[r,"console"]],[/(playstation\s[34portablevi]+)/i],[s,[n,"Sony"],[r,"console"]],[/(sprint\s(\w+))/i],[[n,l.str,c.device.sprint.vendor],[s,l.str,c.device.sprint.model],[r,t]],[/(lenovo)\s?(S(?:5000|6000)+(?:[-][\w+]))/i],[n,s,[r,w]],[/(htc)[;_\s-]+([\w\s]+(?=\))|\w+)*/i,/(zte)-(\w+)*/i,/(alcatel|geeksphone|huawei|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]+)*/i],[n,[s,/_/g," "],[r,t]],[/(nexus\s9)/i],[s,[n,"HTC"],[r,w]],[/(nexus\s6p)/i],[s,[n,"Huawei"],[r,t]],[/(microsoft);\s(lumia[\s\w]+)/i],[n,s,[r,t]],[/[\s\(;](xbox(?:\sone)?)[\s\);]/i],[s,[n,"Microsoft"],[r,"console"]],[/(kin\.[onetw]{3})/i],[[s,/\./g," "],[n,"Microsoft"],[r,t]],[/\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?(:?\s4g)?)[\w\s]+build\//i,/mot[\s-]?(\w+)*/i,/(XT\d{3,4}) build\//i,/(nexus\s6)/i],[s,[n,"Motorola"],[r,t]],[/android.+\s(mz60\d|xoom[\s2]{0,2})\sbuild\//i],[s,[n,"Motorola"],[r,w]],[/hbbtv\/\d+\.\d+\.\d+\s+\([\w\s]*;\s*(\w[^;]*);([^;]*)/i],[[n,d.trim],[s,d.trim],[r,"smarttv"]],[/hbbtv.+maple;(\d+)/i],[[s,/^/,"SmartTV"],[n,"Samsung"],[r,"smarttv"]],[/\(dtv[\);].+(aquos)/i],[s,[n,"Sharp"],[r,"smarttv"]],[/android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n\d+|sgh-t8[56]9|nexus 10))/i,/((SM-T\w+))/i],[[n,"Samsung"],s,[r,w]],[/smart-tv.+(samsung)/i],[n,[r,"smarttv"],s],[/((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i,/(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i,/sec-((sgh\w+))/i],[[n,"Samsung"],s,[r,t]],[/sie-(\w+)*/i],[s,[n,"Siemens"],[r,t]],[/(maemo|nokia).*(n900|lumia\s\d+)/i,/(nokia)[\s_-]?([\w-]+)*/i],[[n,"Nokia"],s,[r,t]],[/android\s3\.[\s\w;-]{10}(a\d{3})/i],[s,[n,"Acer"],[r,w]],[/android\s3\.[\s\w;-]{10}(lg?)-([06cv9]{3,4})/i],[[n,"LG"],s,[r,w]],[/(lg) netcast\.tv/i],[n,s,[r,"smarttv"]],[/(nexus\s[45])/i,/lg[e;\s\/-]+(\w+)*/i],[s,[n,"LG"],[r,t]],[/android.+(ideatab[a-z0-9\-\s]+)/i],[s,[n,"Lenovo"],[r,w]],[/linux;.+((jolla));/i],[n,s,[r,t]],[/((pebble))app\/[\d\.]+\s/i],[n,s,[r,"wearable"]],[/android.+;\s(glass)\s\d/i],[s,[n,"Google"],[r,"wearable"]],[/android.+(\w+)\s+build\/hm\1/i,/android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i,/android.+(mi[\s\-_]*(?:one|one[\s_]plus|note lte)?[\s_]*(?:\d\w)?)\s+build/i],[[s,/_/g," "],[n,"Xiaomi"],[r,t]],[/android.+a000(1)\s+build/i],[s,[n,"OnePlus"],[r,t]],[/\s(tablet)[;\/]/i,/\s(mobile)(?:[;\/]|\ssafari)/i],[[r,d.lowerize],n,s]],engine:[[/windows.+\sedge\/([\w\.]+)/i],[a,[o,"EdgeHTML"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m)\/([\w\.]+)/i,/(khtml|tasman|links)[\/\s]\(?([\w\.]+)/i,/(icab)[\/\s]([23]\.[\d\.]+)/i],[o,a],[/rv\:([\w\.]+).*(gecko)/i],[a,o]],os:[[/microsoft\s(windows)\s(vista|xp)/i],[o,a],[/(windows)\snt\s6\.2;\s(arm)/i,/(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s]+\w)*/i,/(windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i],[o,[a,l.str,c.os.windows.version]],[/(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i],[[o,"Windows"],[a,l.str,c.os.windows.version]],[/\((bb)(10);/i],[[o,"BlackBerry"],a],[/(blackberry)\w*\/?([\w\.]+)*/i,/(tizen)[\/\s]([\w\.]+)/i,/(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i,/linux;.+(sailfish);/i],[o,a],[/(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i],[[o,"Symbian"],a],[/\((series40);/i],[o],[/mozilla.+\(mobile;.+gecko.+firefox/i],[[o,"Firefox OS"],a],[/(nintendo|playstation)\s([wids34portablevu]+)/i,/(mint)[\/\s\(]?(\w+)*/i,/(mageia|vectorlinux)[;\s]/i,/(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]+)*/i,/(hurd|linux)\s?([\w\.]+)*/i,/(gnu)\s?([\w\.]+)*/i],[o,a],[/(cros)\s[\w]+\s([\w\.]+\w)/i],[[o,"Chromium OS"],a],[/(sunos)\s?([\w\.]+\d)*/i],[[o,"Solaris"],a],[/\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i],[o,a],[/(haiku)\s(\w+)/i],[o,a],[/(ip[honead]+)(?:.*os\s([\w]+)*\slike\smac|;\sopera)/i],[[o,"iOS"],[a,/_/g,"."]],[/(mac\sos\sx)\s?([\w\s\.]+\w)*/i,/(macintosh|mac(?=_powerpc)\s)/i],[[o,"Mac OS"],[a,/_/g,"."]],[/((?:open)?solaris)[\/\s-]?([\w\.]+)*/i,/(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i,/(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i,/(unix)\s?([\w\.]+)*/i],[o,a]]},p=function(e,s){if(!(this instanceof p))return new p(e,s).getResult();var o=e||(i&&i.navigator&&i.navigator.userAgent?i.navigator.userAgent:""),r=s?d.extend(u,s):u;return this.getBrowser=function(){var i=l.rgx.apply(this,r.browser);return i.major=d.major(i.version),i},this.getCPU=function(){return l.rgx.apply(this,r.cpu)},this.getDevice=function(){return l.rgx.apply(this,r.device)},this.getEngine=function(){return l.rgx.apply(this,r.engine)},this.getOS=function(){return l.rgx.apply(this,r.os)},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return o},this.setUA=function(i){return o=i,this},this};p.VERSION="0.7.12",p.BROWSER={NAME:o,MAJOR:"major",VERSION:a},p.CPU={ARCHITECTURE:"architecture"},p.DEVICE={MODEL:s,VENDOR:n,TYPE:r,CONSOLE:"console",MOBILE:t,SMARTTV:"smarttv",TABLET:w,WEARABLE:"wearable",EMBEDDED:"embedded"},p.ENGINE={NAME:o,VERSION:a},p.OS={NAME:o,VERSION:a},"undefined"!=typeof exports?("undefined"!=typeof module&&module.exports&&(exports=module.exports=p),exports.UAParser=p):"function"==typeof define&&define.amd?define(function(){return p}):i.UAParser=p;var m=i.jQuery||i.Zepto;if(void 0!==m){var b=new p;m.ua=b.getResult(),m.ua.get=function(){return b.getUA()},m.ua.set=function(i){b.setUA(i);var e=b.getResult();for(var s in e)m.ua[s]=e[s]}}}("object"==typeof window?window:this); -},{}],22:[function(require,module,exports){ -(function (global){ -var rng,crypto=global.crypto||global.msCrypto;if(crypto&&crypto.getRandomValues){var _rnds8=new Uint8Array(16);rng=function(){return crypto.getRandomValues(_rnds8),_rnds8}}if(!rng){var _rnds=new Array(16);rng=function(){for(var r,n=0;n<16;n++)0==(3&n)&&(r=4294967296*Math.random()),_rnds[n]=r>>>((3&n)<<3)&255;return _rnds}}module.exports=rng; -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{}],23:[function(require,module,exports){ -function parse(e,s,r){var t=s&&r||0,n=0;for(s=s||[],e.toLowerCase().replace(/[0-9a-f]{2}/g,function(e){n<16&&(s[t+n++]=_hexToByte[e])});n<16;)s[t+n++]=0;return s}function unparse(e,s){var r=s||0,t=_byteToHex;return t[e[r++]]+t[e[r++]]+t[e[r++]]+t[e[r++]]+"-"+t[e[r++]]+t[e[r++]]+"-"+t[e[r++]]+t[e[r++]]+"-"+t[e[r++]]+t[e[r++]]+"-"+t[e[r++]]+t[e[r++]]+t[e[r++]]+t[e[r++]]+t[e[r++]]+t[e[r++]]}function v1(e,s,r){var t=s&&r||0,n=s||[];e=e||{};var o=void 0!==e.clockseq?e.clockseq:_clockseq,a=void 0!==e.msecs?e.msecs:(new Date).getTime(),u=void 0!==e.nsecs?e.nsecs:_lastNSecs+1,c=a-_lastMSecs+(u-_lastNSecs)/1e4;if(c<0&&void 0===e.clockseq&&(o=o+1&16383),(c<0||a>_lastMSecs)&&void 0===e.nsecs&&(u=0),u>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");_lastMSecs=a,_lastNSecs=u,_clockseq=o,a+=122192928e5;var i=(1e4*(268435455&a)+u)%4294967296;n[t++]=i>>>24&255,n[t++]=i>>>16&255,n[t++]=i>>>8&255,n[t++]=255&i;var _=a/4294967296*1e4&268435455;n[t++]=_>>>8&255,n[t++]=255&_,n[t++]=_>>>24&15|16,n[t++]=_>>>16&255,n[t++]=o>>>8|128,n[t++]=255&o;for(var d=e.node||_nodeId,v=0;v<6;v++)n[t+v]=d[v];return s||unparse(n)}function v4(e,s,r){var t=s&&r||0;"string"==typeof e&&(s="binary"==e?new Array(16):null,e=null),e=e||{};var n=e.random||(e.rng||_rng)();if(n[6]=15&n[6]|64,n[8]=63&n[8]|128,s)for(var o=0;o<16;o++)s[t+o]=n[o];return s||unparse(n)}for(var _rng=require("./rng"),_byteToHex=[],_hexToByte={},i=0;i<256;i++)_byteToHex[i]=(i+256).toString(16).substr(1),_hexToByte[_byteToHex[i]]=i;var _seedBytes=_rng(),_nodeId=[1|_seedBytes[0],_seedBytes[1],_seedBytes[2],_seedBytes[3],_seedBytes[4],_seedBytes[5]],_clockseq=16383&(_seedBytes[6]<<8|_seedBytes[7]),_lastMSecs=0,_lastNSecs=0,uuid=v4;uuid.v1=v1,uuid.v4=v4,uuid.parse=parse,uuid.unparse=unparse,module.exports=uuid; -},{"./rng":22}],24:[function(require,module,exports){ -function WildEmitter(){}module.exports=WildEmitter,WildEmitter.mixin=function(t){var l=t.prototype||t;l.isWildEmitter=!0,l.on=function(t,l,i){this.callbacks=this.callbacks||{};var s=3===arguments.length,c=s?arguments[1]:void 0,a=s?arguments[2]:arguments[1];return a._groupName=c,(this.callbacks[t]=this.callbacks[t]||[]).push(a),this},l.once=function(t,l,i){function s(){c.off(t,s),h.apply(this,arguments)}var c=this,a=3===arguments.length,e=a?arguments[1]:void 0,h=a?arguments[2]:arguments[1];return this.on(t,e,s),this},l.releaseGroup=function(t){this.callbacks=this.callbacks||{};var l,i,s,c;for(l in this.callbacks)for(c=this.callbacks[l],i=0,s=c.length;i<s;i++)c[i]._groupName===t&&(c.splice(i,1),i--,s--);return this},l.off=function(t,l){this.callbacks=this.callbacks||{};var i,s=this.callbacks[t];return s?1===arguments.length?(delete this.callbacks[t],this):(i=s.indexOf(l),s.splice(i,1),0===s.length&&delete this.callbacks[t],this):this},l.emit=function(t){this.callbacks=this.callbacks||{};var l,i,s,c=[].slice.call(arguments,1),a=this.callbacks[t],e=this.getWildcardCallbacks(t);if(a)for(s=a.slice(),l=0,i=s.length;l<i&&s[l];++l)s[l].apply(this,c);if(e)for(i=e.length,s=e.slice(),l=0,i=s.length;l<i&&s[l];++l)s[l].apply(this,[t].concat(c));return this},l.getWildcardCallbacks=function(t){this.callbacks=this.callbacks||{};var l,i,s=[];for(l in this.callbacks)i=l.split("*"),("*"===l||2===i.length&&t.slice(0,i[0].length)===i[0])&&(s=s.concat(this.callbacks[l]));return s}},WildEmitter.mixin(WildEmitter); -},{}]},{},[2])(2) -}); - - -//# sourceMappingURL=kurento-utils.map \ No newline at end of file diff --git a/bigbluebutton-client/resources/prod/lib/reconnecting-websocket.min.js b/bigbluebutton-client/resources/prod/lib/reconnecting-websocket.min.js new file mode 100644 index 0000000000000000000000000000000000000000..3015099ac17bb3ec057e545e21a4db524265d74f --- /dev/null +++ b/bigbluebutton-client/resources/prod/lib/reconnecting-websocket.min.js @@ -0,0 +1 @@ +!function(a,b){"function"==typeof define&&define.amd?define([],b):"undefined"!=typeof module&&module.exports?module.exports=b():a.ReconnectingWebSocket=b()}(this,function(){function a(b,c,d){function l(a,b){var c=document.createEvent("CustomEvent");return c.initCustomEvent(a,!1,!1,b),c}var e={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3};d||(d={});for(var f in e)this[f]="undefined"!=typeof d[f]?d[f]:e[f];this.url=b,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var h,g=this,i=!1,j=!1,k=document.createElement("div");k.addEventListener("open",function(a){g.onopen(a)}),k.addEventListener("close",function(a){g.onclose(a)}),k.addEventListener("connecting",function(a){g.onconnecting(a)}),k.addEventListener("message",function(a){g.onmessage(a)}),k.addEventListener("error",function(a){g.onerror(a)}),this.addEventListener=k.addEventListener.bind(k),this.removeEventListener=k.removeEventListener.bind(k),this.dispatchEvent=k.dispatchEvent.bind(k),this.open=function(b){h=new WebSocket(g.url,c||[]),b||k.dispatchEvent(l("connecting")),(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",g.url);var d=h,e=setTimeout(function(){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",g.url),j=!0,d.close(),j=!1},g.timeoutInterval);h.onopen=function(){clearTimeout(e),(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onopen",g.url),g.protocol=h.protocol,g.readyState=WebSocket.OPEN,g.reconnectAttempts=0;var d=l("open");d.isReconnect=b,b=!1,k.dispatchEvent(d)},h.onclose=function(c){if(clearTimeout(e),h=null,i)g.readyState=WebSocket.CLOSED,k.dispatchEvent(l("close"));else{g.readyState=WebSocket.CONNECTING;var d=l("connecting");d.code=c.code,d.reason=c.reason,d.wasClean=c.wasClean,k.dispatchEvent(d),b||j||((g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onclose",g.url),k.dispatchEvent(l("close")));var e=g.reconnectInterval*Math.pow(g.reconnectDecay,g.reconnectAttempts);setTimeout(function(){g.reconnectAttempts++,g.open(!0)},e>g.maxReconnectInterval?g.maxReconnectInterval:e)}},h.onmessage=function(b){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",g.url,b.data);var c=l("message");c.data=b.data,k.dispatchEvent(c)},h.onerror=function(b){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onerror",g.url,b),k.dispatchEvent(l("error"))}},1==this.automaticOpen&&this.open(!1),this.send=function(b){if(h)return(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","send",g.url,b),h.send(b);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(a,b){"undefined"==typeof a&&(a=1e3),i=!0,h&&h.close(a,b)},this.refresh=function(){h&&h.close()}}return a.prototype.onopen=function(){},a.prototype.onclose=function(){},a.prototype.onconnecting=function(){},a.prototype.onmessage=function(){},a.prototype.onerror=function(){},a.debugAll=!1,a.CONNECTING=WebSocket.CONNECTING,a.OPEN=WebSocket.OPEN,a.CLOSING=WebSocket.CLOSING,a.CLOSED=WebSocket.CLOSED,a}); diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/PopUpUtil.as b/bigbluebutton-client/src/org/bigbluebutton/core/PopUpUtil.as index fe9b20119b235034037a624531a3d6fad537c5af..5b5e2dfb4374ca91e63bf72ce2f11a4f671bfcd7 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/core/PopUpUtil.as +++ b/bigbluebutton-client/src/org/bigbluebutton/core/PopUpUtil.as @@ -103,7 +103,7 @@ package org.bigbluebutton.core { private static function addPopUpToStage(parent:DisplayObject, className:Class, modal:Boolean = false, center:Boolean = true):IFlexDisplayObject { var popUp:IFlexDisplayObject = PopUpManager.createPopUp(parent, className, modal); if (center) { - PopUpManager.centerPopUp(popUp) + PopUpManager.centerPopUp(popUp); } popUpDict[getQualifiedClassName(className)] = popUp; diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/connection/rtmp/MessageReceiver.as b/bigbluebutton-client/src/org/bigbluebutton/core/connection/rtmp/MessageReceiver.as deleted file mode 100755 index 17f2dcb3bdb981b0e4ddb914527d522bbd76121b..0000000000000000000000000000000000000000 --- a/bigbluebutton-client/src/org/bigbluebutton/core/connection/rtmp/MessageReceiver.as +++ /dev/null @@ -1,9 +0,0 @@ -package org.bigbluebutton.core.connection.rtmp -{ - public class MessageReceiver - { - public function MessageReceiver() - { - } - } -} \ No newline at end of file diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/events/SetWebcamsOnlyForModeratorEvent.as b/bigbluebutton-client/src/org/bigbluebutton/core/events/SetWebcamsOnlyForModeratorEvent.as new file mode 100644 index 0000000000000000000000000000000000000000..c42eeed1cd5d950259dd8758792c3b1d671a62e3 --- /dev/null +++ b/bigbluebutton-client/src/org/bigbluebutton/core/events/SetWebcamsOnlyForModeratorEvent.as @@ -0,0 +1,32 @@ +/** + * BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ + * + * Copyright (c) 2018 BigBlueButton Inc. and by respective authors (see below). + * + * This program is free software; you can redistribute it and/or modify it under the + * terms of the GNU Lesser General Public License as published by the Free Software + * Foundation; either version 2.1 of the License, or (at your option) any later + * version. + * + * BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A + * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License along + * with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. + * + */ +package org.bigbluebutton.core.events { + import flash.events.Event; + + public class SetWebcamsOnlyForModeratorEvent extends Event { + + public static const UPDATE_WEBCAMS_ONLY_FOR_MODERATOR:String = "UPDATE_WEBCAMS_ONLY_FOR_MODERATOR"; + + public var webcamsOnlyForModerator:Boolean; + + public function SetWebcamsOnlyForModeratorEvent(type:String) { + super(type, true, false); + } + } +} diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/model/Meeting2x.as b/bigbluebutton-client/src/org/bigbluebutton/core/model/Meeting2x.as index 0cb4724be72e03e15c8d89c73532e690fdcf74ab..8fff84c0e1f50ae22a16709d988149cdd1d48451 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/core/model/Meeting2x.as +++ b/bigbluebutton-client/src/org/bigbluebutton/core/model/Meeting2x.as @@ -14,7 +14,6 @@ package org.bigbluebutton.core.model private var _welcomeMessage:String; private var _modOnlyMessage:String; private var _allowStartStopRecording:Boolean; - private var _webcamsOnlyForModerator:Boolean; private var _metadata:Object = null; public function Meeting2x(build: MeetingBuilder2x) @@ -31,7 +30,6 @@ package org.bigbluebutton.core.model _welcomeMessage = build.welcomeMessage; _modOnlyMessage = build.modOnlyMessage; _allowStartStopRecording = build.allowStartStopRecording; - _webcamsOnlyForModerator = build.webcamsOnlyForModerator; _metadata = build.metadata; } @@ -71,10 +69,6 @@ package org.bigbluebutton.core.model return _allowStartStopRecording; } - public function get webcamsOnlyForModerator() : Boolean { - return _webcamsOnlyForModerator; - } - public function get metadata():Object { return _metadata; } diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder.as b/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder.as index 77badd9bfab691e21f376c49b8f22ba93a66ca91..eb2b40aac51232f6ea28914899d9ce4783dcdc56 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder.as +++ b/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder.as @@ -14,7 +14,6 @@ package org.bigbluebutton.core.model internal var welcomeMessage:String; internal var modOnlyMessage:String; internal var allowStartStopRecording: Boolean; - internal var webcamsOnlyForModerator: Boolean; internal var metadata: Object; internal var muteOnStart:Boolean; @@ -58,11 +57,6 @@ package org.bigbluebutton.core.model return this; } - public function withWebcamsOnlyForModerator(value: Boolean):MeetingBuilder { - webcamsOnlyForModerator = value; - return this; - } - public function withDefaultLayout(value: String):MeetingBuilder { defaultLayout = value; return this; diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder2x.as b/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder2x.as index e2a1b44b97af6b1e69a3fb1f726c15807ab575f5..45019366201c892fb14c7e48afba4448eb35d3d7 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder2x.as +++ b/bigbluebutton-client/src/org/bigbluebutton/core/model/MeetingBuilder2x.as @@ -14,7 +14,6 @@ package org.bigbluebutton.core.model internal var welcomeMessage:String; internal var modOnlyMessage:String; internal var allowStartStopRecording: Boolean; - internal var webcamsOnlyForModerator: Boolean; internal var metadata: Object; public function MeetingBuilder2x(id: String, name: String) @@ -58,11 +57,6 @@ package org.bigbluebutton.core.model return this; } - public function withWebcamsOnlyForModerator(value: Boolean):MeetingBuilder2x { - webcamsOnlyForModerator = value; - return this; - } - public function withDefaultLayout(value: String):MeetingBuilder2x { defaultLayout = value; return this; diff --git a/bigbluebutton-client/src/org/bigbluebutton/core/model/int/MeetingInt.as b/bigbluebutton-client/src/org/bigbluebutton/core/model/int/MeetingInt.as index e75d90a72e6ba34cfae071052170e521126b3d4b..250461aa6dd2329398a70185b3b390e7fdac5392 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/core/model/int/MeetingInt.as +++ b/bigbluebutton-client/src/org/bigbluebutton/core/model/int/MeetingInt.as @@ -1,6 +1,6 @@ package org.bigbluebutton.core.model.int { - class MeetingInt + internal class MeetingInt { var name:String; var internalId:String; @@ -14,7 +14,6 @@ package org.bigbluebutton.core.model.int var welcomeMessage:String; var modOnlyMessage:String; var allowStartStopRecording:Boolean; - var webcamsOnlyForModerator:Boolean; var metadata:Object = null; function MeetingInt() diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as b/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as index 29f73b6639b07e9f6e35b371cc19e983d0635f9b..13d252a0b76db72af80a872c424ff7aa3f0a3893 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/events/BBBEvent.as @@ -48,6 +48,7 @@ package org.bigbluebutton.main.events { public static const CAM_SETTINGS_CLOSED:String = "CAM_SETTINGS_CLOSED"; public static const JOIN_VOICE_FOCUS_HEAD:String = "JOIN_VOICE_FOCUS_HEAD"; public static const CHANGE_RECORDING_STATUS:String = "CHANGE_RECORDING_STATUS"; + public static const CHANGE_WEBCAMS_ONLY_FOR_MODERATOR:String = "CHANGE_WEBCAMS_ONLY_FOR_MODERATOR"; public static const ACCEPT_ALL_WAITING_GUESTS:String = "BBB_ACCEPT_ALL_WAITING_GUESTS"; public static const DENY_ALL_WAITING_GUESTS:String = "BBB_DENY_ALL_WAITING_GUESTS"; diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/model/options/LayoutOptions.as b/bigbluebutton-client/src/org/bigbluebutton/main/model/options/LayoutOptions.as index 858976ec3dda6ec16c25b2f8e51eb8de1aff09a7..4393f8fa313e68a26428e773915f60d8cd0e05cc 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/model/options/LayoutOptions.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/model/options/LayoutOptions.as @@ -54,6 +54,9 @@ package org.bigbluebutton.main.model.options { [Bindable] public var showNetworkMonitor:Boolean = false; + [Bindable] + public var askForFeedbackOnLogout:Boolean = false; + public var defaultLayout:String = "Default"; public function LayoutOptions() { diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/EnterApiResponse.as b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/EnterApiResponse.as index 11dd4cb0d02b34f12cac489877d05c7acbd53fc6..1c2c386c6664fdd6124c672cfe3b829084b1430d 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/EnterApiResponse.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/EnterApiResponse.as @@ -28,7 +28,6 @@ package org.bigbluebutton.main.model.users public var record: Boolean; public var allowStartStopRecording: Boolean; - public var webcamsOnlyForModerator: Boolean; public var metadata: Object = new Object(); public var modOnlyMessage: String; public var muteOnStart:Boolean = false; diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/JoinService.as b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/JoinService.as index a6ee28cf1b550322588f1d480bee5666c630430c..5c952e1975ed3a3a086386499e4aa2e1a4af0449 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/JoinService.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/JoinService.as @@ -1,198 +1,197 @@ -/** - * BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ - * - * Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below). - * - * This program is free software; you can redistribute it and/or modify it under the - * terms of the GNU Lesser General Public License as published by the Free Software - * Foundation; either version 3.0 of the License, or (at your option) any later - * version. - * - * BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A - * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License along - * with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. - * - */ -package org.bigbluebutton.main.model.users -{ - import com.asfusion.mate.events.Dispatcher; - - import flash.events.Event; - import flash.events.HTTPStatusEvent; - import flash.events.IOErrorEvent; - import flash.net.URLLoader; - import flash.net.URLRequest; - import flash.net.URLRequestMethod; - import flash.net.URLVariables; - - import org.as3commons.logging.api.ILogger; - import org.as3commons.logging.api.getClassLogger; - import org.bigbluebutton.core.UsersUtil; - import org.bigbluebutton.main.events.MeetingNotFoundEvent; - import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent; +/** + * BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ + * + * Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below). + * + * This program is free software; you can redistribute it and/or modify it under the + * terms of the GNU Lesser General Public License as published by the Free Software + * Foundation; either version 3.0 of the License, or (at your option) any later + * version. + * + * BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A + * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License along + * with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. + * + */ +package org.bigbluebutton.main.model.users +{ + import com.asfusion.mate.events.Dispatcher; + + import flash.events.Event; + import flash.events.HTTPStatusEvent; + import flash.events.IOErrorEvent; + import flash.net.URLLoader; + import flash.net.URLRequest; + import flash.net.URLRequestMethod; + import flash.net.URLVariables; + + import org.as3commons.logging.api.ILogger; + import org.as3commons.logging.api.getClassLogger; + import org.bigbluebutton.core.UsersUtil; + import org.bigbluebutton.main.events.MeetingNotFoundEvent; + import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent; import org.bigbluebutton.util.QueryStringParameters; - - public class JoinService - { - private static const LOGGER:ILogger = getClassLogger(JoinService); - - private var request:URLRequest = new URLRequest(); - private var reqVars:URLVariables = new URLVariables(); - - private var urlLoader:URLLoader; - private var _resultListener:Function; - - public function JoinService() { - urlLoader = new URLLoader(); - } - - public function load(url:String):void { - var p:QueryStringParameters = new QueryStringParameters(); - p.collectParameters(); - var sessionToken:String = p.getParameter("sessionToken"); - - reqVars.sessionToken = sessionToken; - - var date:Date = new Date(); - request = new URLRequest(url); - request.method = URLRequestMethod.GET; - request.data = reqVars; - - urlLoader.addEventListener(Event.COMPLETE, handleComplete); - urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); - urlLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); - urlLoader.load(request); - } - - public function addJoinResultListener(listener:Function):void { - _resultListener = listener; - } - - private function httpStatusHandler(event:HTTPStatusEvent):void { - LOGGER.debug("httpStatusHandler: {0}", [event]); - } - - private function ioErrorHandler(event:IOErrorEvent):void { - var logData:Object = UsersUtil.initLogData(); - logData.tags = ["initialization"]; - logData.message = "IOError calling ENTER api."; - LOGGER.error(JSON.stringify(logData)); - - var e:ConnectionFailedEvent = new ConnectionFailedEvent(ConnectionFailedEvent.USER_LOGGED_OUT); - var dispatcher:Dispatcher = new Dispatcher(); - dispatcher.dispatchEvent(e); - } - - private function processLogoutUrl(confInfo:Object):String { - var logoutUrl:String = confInfo.logoutUrl; - var rules:Object = { - "%%FULLNAME%%": confInfo.username, - "%%CONFNAME%%": confInfo.conferenceName, - "%%DIALNUM%%": confInfo.dialnumber, - "%%CONFNUM%%": confInfo.voicebridge - } - - for (var attr:String in rules) { - logoutUrl = logoutUrl.replace(new RegExp(attr, "g"), rules[attr]); - } - - return logoutUrl; - } - - private function extractMetadata(metadata:Object):Object { - var response:Object = new Object(); - if (metadata) { - var data:Array = metadata as Array; - for each (var item:Object in data) { - for (var id:String in item) { - var value:String = item[id] as String; - response[id] = value; - } - } - } - return response; - } - - private function handleComplete(e:Event):void { - var result:Object = JSON.parse(e.target.data); - - var logData:Object = UsersUtil.initLogData(); - logData.tags = ["initialization"]; - - - var returncode:String = result.response.returncode; - if (returncode == 'FAILED') { - logData.message = "Calling ENTER api failed."; - LOGGER.info(JSON.stringify(logData)); - - var dispatcher:Dispatcher = new Dispatcher(); - dispatcher.dispatchEvent(new MeetingNotFoundEvent(result.response.logoutURL)); - } else if (returncode == 'SUCCESS') { - logData.message = "Calling ENTER api succeeded."; - LOGGER.info(JSON.stringify(logData)); - - var apiResponse:EnterApiResponse = new EnterApiResponse(); - apiResponse.meetingName = result.response.confname; - apiResponse.extMeetingId = result.response.externMeetingID; - apiResponse.intMeetingId = result.response.meetingID; - apiResponse.isBreakout = result.response.isBreakout; - - apiResponse.username = result.response.fullname; - apiResponse.extUserId = result.response.externUserID; - apiResponse.intUserId = result.response.internalUserID; - apiResponse.role = result.response.role; - apiResponse.guest = result.response.guest; - apiResponse.authed = result.response.authed; - apiResponse.authToken = result.response.authToken; - - apiResponse.record = (result.response.record.toUpperCase() == "TRUE"); - apiResponse.allowStartStopRecording = result.response.allowStartStopRecording; - apiResponse.webcamsOnlyForModerator = result.response.webcamsOnlyForModerator; - - apiResponse.bannerColor = result.response.bannerColor; - apiResponse.bannerText = result.response.bannerText; - - apiResponse.dialnumber = result.response.dialnumber; - apiResponse.voiceConf = result.response.voicebridge; - - apiResponse.welcome = result.response.welcome; - apiResponse.logoutUrl = processLogoutUrl(result.response); - apiResponse.logoutTimer = result.response.logoutTimer; - apiResponse.defaultLayout = result.response.defaultLayout; - apiResponse.avatarURL = result.response.avatarURL; - - apiResponse.customdata = new Object(); - - if (result.response.customdata) { - var cdata:Array = result.response.customdata as Array; - for each (var item:Object in cdata) { - for (var id:String in item) { - var value:String = item[id] as String; - apiResponse.customdata[id] = value; - } - } - } - - apiResponse.metadata = extractMetadata(result.response.metadata); - - if (result.response.hasOwnProperty("modOnlyMessage")) { - apiResponse.modOnlyMessage = result.response.modOnlyMessage; - } - - apiResponse.customLogo = result.response.customLogoURL; - apiResponse.customCopyright = result.response.customCopyright; - apiResponse.muteOnStart = result.response.muteOnStart as Boolean; - - if (_resultListener != null) _resultListener(true, apiResponse); - } - - } - - public function get loader():URLLoader{ - return this.urlLoader; - } - } + + public class JoinService + { + private static const LOGGER:ILogger = getClassLogger(JoinService); + + private var request:URLRequest = new URLRequest(); + private var reqVars:URLVariables = new URLVariables(); + + private var urlLoader:URLLoader; + private var _resultListener:Function; + + public function JoinService() { + urlLoader = new URLLoader(); + } + + public function load(url:String):void { + var p:QueryStringParameters = new QueryStringParameters(); + p.collectParameters(); + var sessionToken:String = p.getParameter("sessionToken"); + + reqVars.sessionToken = sessionToken; + + var date:Date = new Date(); + request = new URLRequest(url); + request.method = URLRequestMethod.GET; + request.data = reqVars; + + urlLoader.addEventListener(Event.COMPLETE, handleComplete); + urlLoader.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler); + urlLoader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); + urlLoader.load(request); + } + + public function addJoinResultListener(listener:Function):void { + _resultListener = listener; + } + + private function httpStatusHandler(event:HTTPStatusEvent):void { + LOGGER.debug("httpStatusHandler: {0}", [event]); + } + + private function ioErrorHandler(event:IOErrorEvent):void { + var logData:Object = UsersUtil.initLogData(); + logData.tags = ["initialization"]; + logData.message = "IOError calling ENTER api."; + LOGGER.error(JSON.stringify(logData)); + + var e:ConnectionFailedEvent = new ConnectionFailedEvent(ConnectionFailedEvent.USER_LOGGED_OUT); + var dispatcher:Dispatcher = new Dispatcher(); + dispatcher.dispatchEvent(e); + } + + private function processLogoutUrl(confInfo:Object):String { + var logoutUrl:String = confInfo.logoutUrl; + var rules:Object = { + "%%FULLNAME%%": confInfo.username, + "%%CONFNAME%%": confInfo.conferenceName, + "%%DIALNUM%%": confInfo.dialnumber, + "%%CONFNUM%%": confInfo.voicebridge + } + + for (var attr:String in rules) { + logoutUrl = logoutUrl.replace(new RegExp(attr, "g"), rules[attr]); + } + + return logoutUrl; + } + + private function extractMetadata(metadata:Object):Object { + var response:Object = new Object(); + if (metadata) { + var data:Array = metadata as Array; + for each (var item:Object in data) { + for (var id:String in item) { + var value:String = item[id] as String; + response[id] = value; + } + } + } + return response; + } + + private function handleComplete(e:Event):void { + var result:Object = JSON.parse(e.target.data); + + var logData:Object = UsersUtil.initLogData(); + logData.tags = ["initialization"]; + + + var returncode:String = result.response.returncode; + if (returncode == 'FAILED') { + logData.message = "Calling ENTER api failed."; + LOGGER.info(JSON.stringify(logData)); + + var dispatcher:Dispatcher = new Dispatcher(); + dispatcher.dispatchEvent(new MeetingNotFoundEvent(result.response.logoutURL)); + } else if (returncode == 'SUCCESS') { + logData.message = "Calling ENTER api succeeded."; + LOGGER.info(JSON.stringify(logData)); + + var apiResponse:EnterApiResponse = new EnterApiResponse(); + apiResponse.meetingName = result.response.confname; + apiResponse.extMeetingId = result.response.externMeetingID; + apiResponse.intMeetingId = result.response.meetingID; + apiResponse.isBreakout = result.response.isBreakout; + + apiResponse.username = result.response.fullname; + apiResponse.extUserId = result.response.externUserID; + apiResponse.intUserId = result.response.internalUserID; + apiResponse.role = result.response.role; + apiResponse.guest = result.response.guest; + apiResponse.authed = result.response.authed; + apiResponse.authToken = result.response.authToken; + + apiResponse.record = (result.response.record.toUpperCase() == "TRUE"); + apiResponse.allowStartStopRecording = result.response.allowStartStopRecording; + + apiResponse.bannerColor = result.response.bannerColor; + apiResponse.bannerText = result.response.bannerText; + + apiResponse.dialnumber = result.response.dialnumber; + apiResponse.voiceConf = result.response.voicebridge; + + apiResponse.welcome = result.response.welcome; + apiResponse.logoutUrl = processLogoutUrl(result.response); + apiResponse.logoutTimer = result.response.logoutTimer; + apiResponse.defaultLayout = result.response.defaultLayout; + apiResponse.avatarURL = result.response.avatarURL; + + apiResponse.customdata = new Object(); + + if (result.response.customdata) { + var cdata:Array = result.response.customdata as Array; + for each (var item:Object in cdata) { + for (var id:String in item) { + var value:String = item[id] as String; + apiResponse.customdata[id] = value; + } + } + } + + apiResponse.metadata = extractMetadata(result.response.metadata); + + if (result.response.hasOwnProperty("modOnlyMessage")) { + apiResponse.modOnlyMessage = result.response.modOnlyMessage; + } + + apiResponse.customLogo = result.response.customLogoURL; + apiResponse.customCopyright = result.response.customCopyright; + apiResponse.muteOnStart = result.response.muteOnStart as Boolean; + + if (_resultListener != null) _resultListener(true, apiResponse); + } + + } + + public function get loader():URLLoader{ + return this.urlLoader; + } + } } \ No newline at end of file diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as index 2a5ce9b26831bb016cb789bb1119efbd0725a771..6b5b4e4e622178cc58cfad7f049d69b9297af593 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as +++ b/bigbluebutton-client/src/org/bigbluebutton/main/model/users/UserService.as @@ -1,341 +1,344 @@ -/** -* BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ -* -* Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below). -* -* This program is free software; you can redistribute it and/or modify it under the -* terms of the GNU Lesser General Public License as published by the Free Software -* Foundation; either version 3.0 of the License, or (at your option) any later -* version. -* -* BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY -* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A -* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. -* -* You should have received a copy of the GNU Lesser General Public License along -* with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. -* -*/ -package org.bigbluebutton.main.model.users -{ - import com.asfusion.mate.events.Dispatcher; - - import flash.external.ExternalInterface; - import flash.net.NetConnection; - - import org.as3commons.logging.api.ILogger; - import org.as3commons.logging.api.getClassLogger; - import org.bigbluebutton.core.BBB; - import org.bigbluebutton.core.Options; - import org.bigbluebutton.core.UsersUtil; - import org.bigbluebutton.core.events.LockControlEvent; - import org.bigbluebutton.core.events.TokenValidEvent; - import org.bigbluebutton.core.events.TokenValidReconnectEvent; - import org.bigbluebutton.core.events.VoiceConfEvent; - import org.bigbluebutton.core.managers.ConnectionManager; - import org.bigbluebutton.core.model.LiveMeeting; - import org.bigbluebutton.main.events.BBBEvent; - import org.bigbluebutton.main.events.BreakoutRoomEvent; - import org.bigbluebutton.main.events.LogoutEvent; - import org.bigbluebutton.main.events.ResponseModeratorEvent; - import org.bigbluebutton.main.events.SuccessfulLoginEvent; - import org.bigbluebutton.main.events.UserServicesEvent; - import org.bigbluebutton.main.model.options.ApplicationOptions; - import org.bigbluebutton.main.model.users.events.BroadcastStartedEvent; - import org.bigbluebutton.main.model.users.events.BroadcastStoppedEvent; - import org.bigbluebutton.main.model.users.events.ChangeRoleEvent; - import org.bigbluebutton.main.model.users.events.ConferenceCreatedEvent; - import org.bigbluebutton.main.model.users.events.EmojiStatusEvent; - import org.bigbluebutton.main.model.users.events.KickUserEvent; - import org.bigbluebutton.main.model.users.events.RoleChangeEvent; - import org.bigbluebutton.main.model.users.events.UsersConnectionEvent; - import org.bigbluebutton.modules.users.events.MeetingMutedEvent; - import org.bigbluebutton.modules.users.services.MessageReceiver; +/** +* BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ +* +* Copyright (c) 2012 BigBlueButton Inc. and by respective authors (see below). +* +* This program is free software; you can redistribute it and/or modify it under the +* terms of the GNU Lesser General Public License as published by the Free Software +* Foundation; either version 3.0 of the License, or (at your option) any later +* version. +* +* BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY +* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A +* PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. +* +* You should have received a copy of the GNU Lesser General Public License along +* with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. +* +*/ +package org.bigbluebutton.main.model.users +{ + import com.asfusion.mate.events.Dispatcher; + + import flash.external.ExternalInterface; + import flash.net.NetConnection; + + import org.as3commons.logging.api.ILogger; + import org.as3commons.logging.api.getClassLogger; + import org.bigbluebutton.core.BBB; + import org.bigbluebutton.core.Options; + import org.bigbluebutton.core.UsersUtil; + import org.bigbluebutton.core.events.LockControlEvent; + import org.bigbluebutton.core.events.SetWebcamsOnlyForModeratorEvent; + import org.bigbluebutton.core.events.TokenValidEvent; + import org.bigbluebutton.core.events.TokenValidReconnectEvent; + import org.bigbluebutton.core.events.VoiceConfEvent; + import org.bigbluebutton.core.managers.ConnectionManager; + import org.bigbluebutton.core.model.LiveMeeting; + import org.bigbluebutton.main.events.BBBEvent; + import org.bigbluebutton.main.events.BreakoutRoomEvent; + import org.bigbluebutton.main.events.LogoutEvent; + import org.bigbluebutton.main.events.ResponseModeratorEvent; + import org.bigbluebutton.main.events.SuccessfulLoginEvent; + import org.bigbluebutton.main.events.UserServicesEvent; + import org.bigbluebutton.main.model.options.ApplicationOptions; + import org.bigbluebutton.main.model.users.events.BroadcastStartedEvent; + import org.bigbluebutton.main.model.users.events.BroadcastStoppedEvent; + import org.bigbluebutton.main.model.users.events.ChangeRoleEvent; + import org.bigbluebutton.main.model.users.events.ConferenceCreatedEvent; + import org.bigbluebutton.main.model.users.events.EmojiStatusEvent; + import org.bigbluebutton.main.model.users.events.KickUserEvent; + import org.bigbluebutton.main.model.users.events.RoleChangeEvent; + import org.bigbluebutton.main.model.users.events.UsersConnectionEvent; + import org.bigbluebutton.modules.users.events.MeetingMutedEvent; + import org.bigbluebutton.modules.users.services.MessageReceiver; import org.bigbluebutton.modules.users.services.MessageSender; - - public class UserService { - private static const LOGGER:ILogger = getClassLogger(UserService); - - private var joinService:JoinService; - private var applicationURI:String; - private var hostURI:String; - private var connection:NetConnection; - private var dispatcher:Dispatcher; - private var reconnecting:Boolean = false; - - private var _connectionManager:ConnectionManager; - private var msgReceiver:MessageReceiver = new MessageReceiver(); - private var sender:MessageSender = new MessageSender(); - - public function UserService() { - dispatcher = new Dispatcher(); - msgReceiver.onAllowedToJoin = function():void { - onAllowedToJoin(); - } - } - - private function onAllowedToJoin():void { - sender.queryForParticipants(); - sender.queryForRecordingStatus(); - sender.queryForGuestPolicy(); - sender.queryForGuestsWaiting(); - sender.getLockSettings(); - sender.getRoomMuteState(); - - if (!LiveMeeting.inst().meeting.isBreakout) { - sender.queryForBreakoutRooms(LiveMeeting.inst().meeting.internalId); - } - - var loadCommand:SuccessfulLoginEvent = new SuccessfulLoginEvent(SuccessfulLoginEvent.USER_LOGGED_IN); - dispatcher.dispatchEvent(loadCommand); - } - - public function startService(e:UserServicesEvent):void { - joinService = new JoinService(); - joinService.addJoinResultListener(joinListener); - var applicationOptions : ApplicationOptions = Options.getOptions(ApplicationOptions) as ApplicationOptions; - joinService.load(applicationOptions.host); - } - - private function joinListener(success:Boolean, result: EnterApiResponse):void { - if (success) { - - LiveMeeting.inst().me.id = result.intUserId - LiveMeeting.inst().me.name = result.username; - LiveMeeting.inst().me.externalId = result.extUserId; - LiveMeeting.inst().me.authToken = result.authToken; - LiveMeeting.inst().me.layout = result.defaultLayout; - LiveMeeting.inst().me.logoutURL = result.logoutUrl; - LiveMeeting.inst().me.role = result.role; - LiveMeeting.inst().me.welcome = result.welcome; - LiveMeeting.inst().me.avatarURL = result.avatarURL; - LiveMeeting.inst().me.dialNumber = result.dialnumber; - - LiveMeeting.inst().me.guest = result.guest; - LiveMeeting.inst().me.authed = result.authed; - LiveMeeting.inst().me.customData = result.customdata; - - LiveMeeting.inst().meeting.name = result.meetingName; - LiveMeeting.inst().meeting.internalId = result.intMeetingId; - LiveMeeting.inst().meeting.externalId = result.extMeetingId; - LiveMeeting.inst().meeting.isBreakout = result.isBreakout; - LiveMeeting.inst().meeting.defaultAvatarUrl = result.avatarURL; - LiveMeeting.inst().meeting.voiceConf = result.voiceConf; - LiveMeeting.inst().meeting.dialNumber = result.dialnumber; - LiveMeeting.inst().meeting.recorded = result.record; - LiveMeeting.inst().meeting.defaultLayout = result.defaultLayout; - LiveMeeting.inst().meeting.welcomeMessage = result.welcome; - LiveMeeting.inst().meeting.modOnlyMessage = result.modOnlyMessage; - LiveMeeting.inst().meeting.allowStartStopRecording = result.allowStartStopRecording; - LiveMeeting.inst().meeting.webcamsOnlyForModerator = result.webcamsOnlyForModerator; - LiveMeeting.inst().meeting.metadata = result.metadata; - - LiveMeeting.inst().meeting.logoutTimer = result.logoutTimer; - - LiveMeeting.inst().meeting.bannerColor = result.bannerColor; - LiveMeeting.inst().meeting.bannerText = result.bannerText; - - LiveMeeting.inst().meeting.muteOnStart = result.muteOnStart; - LiveMeeting.inst().meetingStatus.isMeetingMuted = result.muteOnStart; - LiveMeeting.inst().meeting.customLogo = result.customLogo; - LiveMeeting.inst().meeting.customCopyright = result.customCopyright; - - // assign the meeting name to the document title - ExternalInterface.call("setTitle", result.meetingName); - - var e:ConferenceCreatedEvent = new ConferenceCreatedEvent(ConferenceCreatedEvent.CONFERENCE_CREATED_EVENT); - dispatcher.dispatchEvent(e); - - // Send event to trigger meeting muted initialization of meeting (ralam dec 21, 2017) - dispatcher.dispatchEvent(new MeetingMutedEvent()); - connect(); - } - } - - - - private function connect():void{ - _connectionManager = BBB.initConnectionManager(); - _connectionManager.connect(); - } - - public function tokenValidEventHandler(event: TokenValidEvent): void { - sender.joinMeeting(); - } - - public function tokenValidReconnectEventHandler(event: TokenValidReconnectEvent): void { - sender.joinMeetingAfterReconnect(); - } - - public function logoutEndMeeting():void{ - if (this.isModerator()) { - var myUserId: String = UsersUtil.getMyUserID(); - sender.logoutEndMeeting(myUserId); - } - } - - public function logoutUser():void { - disconnect(true); - } - - public function disconnect(onUserAction:Boolean):void { - if (_connectionManager) { - _connectionManager.disconnect(onUserAction); - } - } - - public function activityResponse():void { - sender.activityResponse(); - } - - private function queryForRecordingStatus():void { - sender.queryForRecordingStatus(); - } - - public function changeRecordingStatus(e:BBBEvent):void { - if (this.isModerator() && !e.payload.remote) { - var myUserId:String = UsersUtil.getMyUserID(); - sender.changeRecordingStatus(myUserId, e.payload.recording); - } - } - - public function userLoggedIn(e:UsersConnectionEvent):void { - LOGGER.debug("In userLoggedIn - reconnecting and allowed to join"); - if (reconnecting && ! LiveMeeting.inst().me.waitingForApproval) { - LOGGER.debug("userLoggedIn - reconnecting and allowed to join"); - onAllowedToJoin(); - reconnecting = false; - } else { - onAllowedToJoin(); - - } - } - - public function denyGuest():void { - dispatcher.dispatchEvent(new LogoutEvent(LogoutEvent.MODERATOR_DENIED_ME)); - } - - public function setGuestPolicy(event:BBBEvent):void { - sender.setGuestPolicy(event.payload['guestPolicy']); - } - - public function guestDisconnect():void { - _connectionManager.guestDisconnect(); - } - - public function isModerator():Boolean { - return UsersUtil.amIModerator(); - } - - public function addStream(e:BroadcastStartedEvent):void { - sender.addStream(e.userid, e.stream); - } - - public function removeStream(e:BroadcastStoppedEvent):void { - sender.removeStream(e.userid, e.stream); - } - - public function emojiStatus(e:EmojiStatusEvent):void { - // If the userId is not set in the event then the event has been dispatched for the current user - sender.emojiStatus(e.userId != "" ? e.userId : UsersUtil.getMyUserID(), e.status); - } - - public function createBreakoutRooms(e:BreakoutRoomEvent):void{ - sender.createBreakoutRooms(LiveMeeting.inst().meeting.internalId, e.rooms, e.durationInMinutes, e.record); - } - - public function handleApproveGuestAccess(e: ResponseModeratorEvent):void { - sender.approveGuestAccess(e.userIds, e.allow); - } - - public function requestBreakoutJoinUrl(e:BreakoutRoomEvent):void{ - sender.requestBreakoutJoinUrl(LiveMeeting.inst().meeting.internalId, e.breakoutMeetingId, e.userId); - } - - public function listenInOnBreakout(e:BreakoutRoomEvent):void { - if (e.listen) { - sender.listenInOnBreakout(LiveMeeting.inst().meeting.internalId, - e.breakoutMeetingId, LiveMeeting.inst().me.id); - } else { - sender.listenInOnBreakout(e.breakoutMeetingId, LiveMeeting.inst().meeting.internalId, LiveMeeting.inst().me.id); - } - LiveMeeting.inst().breakoutRooms.setBreakoutRoomInListen(e.listen, e.breakoutMeetingId); - } - - public function endAllBreakoutRooms(e:BreakoutRoomEvent):void { - sender.endAllBreakoutRooms(LiveMeeting.inst().meeting.internalId); - } - - public function kickUser(e:KickUserEvent):void{ - if (this.isModerator()) sender.kickUser(e.userid); - } - - public function changeRole(e:ChangeRoleEvent):void { - if (this.isModerator()) sender.changeRole(e.userid, e.role); - } - - public function onReconnecting(e:BBBEvent):void { - if (e.payload.type == "BIGBLUEBUTTON_CONNECTION") { - LOGGER.debug("onReconnecting"); - reconnecting = true; - } - } - - /** - * Assign a new presenter - * @param e - * - */ - public function assignPresenter(e:RoleChangeEvent):void{ - var assignTo:String = e.userid; - var name:String = e.username; - sender.assignPresenter(assignTo, name, UsersUtil.getMyUserID()); - } - - public function muteUnmuteUser(command:VoiceConfEvent):void { - sender.muteUnmuteUser(command.userid, command.mute); - } - - public function muteAllUsers(command:VoiceConfEvent):void { - sender.muteAllUsers(true); - } - - public function unmuteAllUsers(command:VoiceConfEvent):void{ - sender.muteAllUsers(false); - } - - public function muteAllUsersExceptPresenter(command:VoiceConfEvent):void { - sender.muteAllUsersExceptPresenter(true); - } - - public function ejectUser(command:VoiceConfEvent):void { - if (this.isModerator()) sender.ejectUserFromVoice(command.userid); - } - - //Lock events - public function lockAllUsers(command:LockControlEvent):void { - sender.setAllUsersLock(true); - } - - public function unlockAllUsers(command:LockControlEvent):void { - sender.setAllUsersLock(false); - } - - public function lockAlmostAllUsers(command:LockControlEvent):void { - var pres:Array = LiveMeeting.inst().users.getPresenters(); - sender.setAllUsersLock(true, pres); - } - - public function lockUser(command:LockControlEvent):void { - sender.setUserLock(command.internalUserID, true); - } - - public function unlockUser(command:LockControlEvent):void { - sender.setUserLock(command.internalUserID, false); - } - - public function saveLockSettings(command:LockControlEvent):void { - sender.saveLockSettings(command.payload); - } - } -} + + public class UserService { + private static const LOGGER:ILogger = getClassLogger(UserService); + + private var joinService:JoinService; + private var applicationURI:String; + private var hostURI:String; + private var connection:NetConnection; + private var dispatcher:Dispatcher; + private var reconnecting:Boolean = false; + + private var _connectionManager:ConnectionManager; + private var msgReceiver:MessageReceiver = new MessageReceiver(); + private var sender:MessageSender = new MessageSender(); + + public function UserService() { + dispatcher = new Dispatcher(); + msgReceiver.onAllowedToJoin = function():void { + onAllowedToJoin(); + } + } + + private function onAllowedToJoin():void { + sender.queryForWebcamsOnlyForModerator(); + sender.queryForParticipants(); + sender.queryForRecordingStatus(); + sender.queryForGuestPolicy(); + sender.queryForGuestsWaiting(); + sender.getLockSettings(); + sender.getRoomMuteState(); + + if (!LiveMeeting.inst().meeting.isBreakout) { + sender.queryForBreakoutRooms(LiveMeeting.inst().meeting.internalId); + } + + var loadCommand:SuccessfulLoginEvent = new SuccessfulLoginEvent(SuccessfulLoginEvent.USER_LOGGED_IN); + dispatcher.dispatchEvent(loadCommand); + } + + public function startService(e:UserServicesEvent):void { + joinService = new JoinService(); + joinService.addJoinResultListener(joinListener); + var applicationOptions : ApplicationOptions = Options.getOptions(ApplicationOptions) as ApplicationOptions; + joinService.load(applicationOptions.host); + } + + private function joinListener(success:Boolean, result: EnterApiResponse):void { + if (success) { + + LiveMeeting.inst().me.id = result.intUserId + LiveMeeting.inst().me.name = result.username; + LiveMeeting.inst().me.externalId = result.extUserId; + LiveMeeting.inst().me.authToken = result.authToken; + LiveMeeting.inst().me.layout = result.defaultLayout; + LiveMeeting.inst().me.logoutURL = result.logoutUrl; + LiveMeeting.inst().me.role = result.role; + LiveMeeting.inst().me.welcome = result.welcome; + LiveMeeting.inst().me.avatarURL = result.avatarURL; + LiveMeeting.inst().me.dialNumber = result.dialnumber; + + LiveMeeting.inst().me.guest = result.guest; + LiveMeeting.inst().me.authed = result.authed; + LiveMeeting.inst().me.customData = result.customdata; + + LiveMeeting.inst().meeting.name = result.meetingName; + LiveMeeting.inst().meeting.internalId = result.intMeetingId; + LiveMeeting.inst().meeting.externalId = result.extMeetingId; + LiveMeeting.inst().meeting.isBreakout = result.isBreakout; + LiveMeeting.inst().meeting.defaultAvatarUrl = result.avatarURL; + LiveMeeting.inst().meeting.voiceConf = result.voiceConf; + LiveMeeting.inst().meeting.dialNumber = result.dialnumber; + LiveMeeting.inst().meeting.recorded = result.record; + LiveMeeting.inst().meeting.defaultLayout = result.defaultLayout; + LiveMeeting.inst().meeting.welcomeMessage = result.welcome; + LiveMeeting.inst().meeting.modOnlyMessage = result.modOnlyMessage; + LiveMeeting.inst().meeting.allowStartStopRecording = result.allowStartStopRecording; + LiveMeeting.inst().meeting.metadata = result.metadata; + LiveMeeting.inst().meeting.logoutTimer = result.logoutTimer; + + LiveMeeting.inst().meeting.bannerColor = result.bannerColor; + LiveMeeting.inst().meeting.bannerText = result.bannerText; + + LiveMeeting.inst().meeting.muteOnStart = result.muteOnStart; + LiveMeeting.inst().meetingStatus.isMeetingMuted = result.muteOnStart; + LiveMeeting.inst().meeting.customLogo = result.customLogo; + LiveMeeting.inst().meeting.customCopyright = result.customCopyright; + + // assign the meeting name to the document title + ExternalInterface.call("setTitle", result.meetingName); + + var e:ConferenceCreatedEvent = new ConferenceCreatedEvent(ConferenceCreatedEvent.CONFERENCE_CREATED_EVENT); + dispatcher.dispatchEvent(e); + + // Send event to trigger meeting muted initialization of meeting (ralam dec 21, 2017) + dispatcher.dispatchEvent(new MeetingMutedEvent()); + connect(); + } + } + + + + private function connect():void{ + _connectionManager = BBB.initConnectionManager(); + _connectionManager.connect(); + } + + public function tokenValidEventHandler(event: TokenValidEvent): void { + sender.joinMeeting(); + } + + public function tokenValidReconnectEventHandler(event: TokenValidReconnectEvent): void { + sender.joinMeetingAfterReconnect(); + } + + public function logoutEndMeeting():void{ + if (this.isModerator()) { + var myUserId: String = UsersUtil.getMyUserID(); + sender.logoutEndMeeting(myUserId); + } + } + + public function logoutUser():void { + disconnect(true); + } + + public function disconnect(onUserAction:Boolean):void { + if (_connectionManager) { + _connectionManager.disconnect(onUserAction); + } + } + + public function activityResponse():void { + sender.activityResponse(); + } + + private function queryForRecordingStatus():void { + sender.queryForRecordingStatus(); + } + + public function changeRecordingStatus(e:BBBEvent):void { + if (this.isModerator() && !e.payload.remote) { + sender.changeRecordingStatus(UsersUtil.getMyUserID(), e.payload.recording); + } + } + + public function userLoggedIn(e:UsersConnectionEvent):void { + LOGGER.debug("In userLoggedIn - reconnecting and allowed to join"); + if (reconnecting && ! LiveMeeting.inst().me.waitingForApproval) { + LOGGER.debug("userLoggedIn - reconnecting and allowed to join"); + onAllowedToJoin(); + reconnecting = false; + } else { + onAllowedToJoin(); + + } + } + + public function denyGuest():void { + dispatcher.dispatchEvent(new LogoutEvent(LogoutEvent.MODERATOR_DENIED_ME)); + } + + public function setGuestPolicy(event:BBBEvent):void { + sender.setGuestPolicy(event.payload['guestPolicy']); + } + + public function guestDisconnect():void { + _connectionManager.guestDisconnect(); + } + + public function isModerator():Boolean { + return UsersUtil.amIModerator(); + } + + public function addStream(e:BroadcastStartedEvent):void { + sender.addStream(e.userid, e.stream); + } + + public function removeStream(e:BroadcastStoppedEvent):void { + sender.removeStream(e.userid, e.stream); + } + + public function emojiStatus(e:EmojiStatusEvent):void { + // If the userId is not set in the event then the event has been dispatched for the current user + sender.emojiStatus(e.userId != "" ? e.userId : UsersUtil.getMyUserID(), e.status); + } + + public function createBreakoutRooms(e:BreakoutRoomEvent):void{ + sender.createBreakoutRooms(LiveMeeting.inst().meeting.internalId, e.rooms, e.durationInMinutes, e.record); + } + + public function handleApproveGuestAccess(e: ResponseModeratorEvent):void { + sender.approveGuestAccess(e.userIds, e.allow); + } + + public function requestBreakoutJoinUrl(e:BreakoutRoomEvent):void{ + sender.requestBreakoutJoinUrl(LiveMeeting.inst().meeting.internalId, e.breakoutMeetingId, e.userId); + } + + public function listenInOnBreakout(e:BreakoutRoomEvent):void { + if (e.listen) { + sender.listenInOnBreakout(LiveMeeting.inst().meeting.internalId, + e.breakoutMeetingId, LiveMeeting.inst().me.id); + } else { + sender.listenInOnBreakout(e.breakoutMeetingId, LiveMeeting.inst().meeting.internalId, LiveMeeting.inst().me.id); + } + LiveMeeting.inst().breakoutRooms.setBreakoutRoomInListen(e.listen, e.breakoutMeetingId); + } + + public function endAllBreakoutRooms(e:BreakoutRoomEvent):void { + sender.endAllBreakoutRooms(LiveMeeting.inst().meeting.internalId); + } + + public function kickUser(e:KickUserEvent):void{ + if (this.isModerator()) sender.kickUser(e.userid); + } + + public function changeRole(e:ChangeRoleEvent):void { + if (this.isModerator()) sender.changeRole(e.userid, e.role); + } + + public function onReconnecting(e:BBBEvent):void { + if (e.payload.type == "BIGBLUEBUTTON_CONNECTION") { + LOGGER.debug("onReconnecting"); + reconnecting = true; + } + } + + /** + * Assign a new presenter + * @param e + * + */ + public function assignPresenter(e:RoleChangeEvent):void{ + var assignTo:String = e.userid; + var name:String = e.username; + sender.assignPresenter(assignTo, name, UsersUtil.getMyUserID()); + } + + public function muteUnmuteUser(command:VoiceConfEvent):void { + sender.muteUnmuteUser(command.userid, command.mute); + } + + public function muteAllUsers(command:VoiceConfEvent):void { + sender.muteAllUsers(true); + } + + public function unmuteAllUsers(command:VoiceConfEvent):void{ + sender.muteAllUsers(false); + } + + public function muteAllUsersExceptPresenter(command:VoiceConfEvent):void { + sender.muteAllUsersExceptPresenter(true); + } + + public function ejectUser(command:VoiceConfEvent):void { + if (this.isModerator()) sender.ejectUserFromVoice(command.userid); + } + + //Lock events + public function lockAllUsers(command:LockControlEvent):void { + sender.setAllUsersLock(true); + } + + public function unlockAllUsers(command:LockControlEvent):void { + sender.setAllUsersLock(false); + } + + public function lockAlmostAllUsers(command:LockControlEvent):void { + var pres:Array = LiveMeeting.inst().users.getPresenters(); + sender.setAllUsersLock(true, pres); + } + + public function lockUser(command:LockControlEvent):void { + sender.setUserLock(command.internalUserID, true); + } + + public function unlockUser(command:LockControlEvent):void { + sender.setUserLock(command.internalUserID, false); + } + + public function saveLockSettings(command:LockControlEvent):void { + sender.saveLockSettings(command.payload); + } + + public function updateWebcamsOnlyForModerator(command:SetWebcamsOnlyForModeratorEvent):void { + sender.updateWebcamsOnlyForModerator(command.webcamsOnlyForModerator, UsersUtil.getMyUserID()); + } + } +} diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/AudioSelectionWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/AudioSelectionWindow.mxml index ff59f04db347a9ea6e248fa283c9ef997bf4b10e..10dd3b7e7d4b7168e0c7f4c70fc0ba308d7d29a9 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/AudioSelectionWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/AudioSelectionWindow.mxml @@ -132,7 +132,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. styleName="titleWindowStyle" maxWidth="{this.width - 40}" /> <mx:Box width="100%" height="56" - verticalAlign="middle" horizontalAlign="center" verticalScrollPolicy="off" horizontalScrollPolicy="off" visible="false" includeInLayout="false" id="audioBrowserHint" styleName="audioBroswerHintBoxStyle"> diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/LockSettings.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/LockSettings.mxml index e143e6ca3c68d165386c014d291dcc5639a7951c..8e1f4b55258c8d325f0cfa257918016f34a724e0 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/LockSettings.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/LockSettings.mxml @@ -24,17 +24,20 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. implements="org.bigbluebutton.common.IKeyboardClose" show="this.setFocus()" xmlns:common="org.bigbluebutton.common.*" - minWidth="340" showCloseButton="false" + minWidth="400" showCloseButton="false" keyDown="handleKeyDown(event)"> <fx:Script> <![CDATA[ import org.bigbluebutton.core.PopUpUtil; import org.bigbluebutton.core.events.LockControlEvent; + import org.bigbluebutton.core.events.SetWebcamsOnlyForModeratorEvent; + import org.bigbluebutton.core.model.LiveMeeting; import org.bigbluebutton.core.vo.LockSettingsVO; import org.bigbluebutton.util.i18n.ResourceUtil; [Bindable] public var disableCam:Boolean = false; + [Bindable] public var webcamsOnlyForModerator:Boolean = false; [Bindable] public var disableMic:Boolean = false; [Bindable] public var disablePubChat:Boolean = false; [Bindable] public var disablePrivChat:Boolean = false; @@ -53,13 +56,34 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. var lockSettings:LockSettingsVO = new LockSettingsVO(chkDisableWebcam.selected, chkDisableMicrophone.selected, chkDisablePrivateChat.selected, chkDisablePublicChat.selected, chkDisableLayout.selected, chkLockOnJoin.selected, lockOnJoinConfigurable); event.payload = lockSettings.toMap(); dispatchEvent(event); - + + if (LiveMeeting.inst().meeting.webcamsOnlyForModerator != chkwebcamsOnlyForModerator.selected) { + var wEvent:SetWebcamsOnlyForModeratorEvent = new SetWebcamsOnlyForModeratorEvent(SetWebcamsOnlyForModeratorEvent.UPDATE_WEBCAMS_ONLY_FOR_MODERATOR); + wEvent.webcamsOnlyForModerator = chkwebcamsOnlyForModerator.selected; + dispatchEvent(wEvent); + } + PopUpUtil.removePopUp(this); } private function onCancelClicked():void { PopUpUtil.removePopUp(this); } + + protected function chkDisableWebcam_changeHandler(event:Event):void + { + if (chkDisableWebcam.selected) { + chkwebcamsOnlyForModerator.selected = false; + } + } + + protected function chkwebcamsOnlyForModerator_changeHandler(event:Event):void + { + if (chkwebcamsOnlyForModerator.selected) { + chkDisableWebcam.selected = false; + } + } + ]]> </fx:Script> @@ -71,76 +95,81 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <common:AdvancedLabel text="{ResourceUtil.getInstance().getString('bbb.lockSettings.title')}" styleName="titleWindowStyle" id="titleText" - maxWidth="250" /> + minWidth="300" /> + + <mx:Box width="100%" styleName="lockSettingsHintBoxStyle"> + <mx:Text width="100%" id="fileFormatHintLbl" textAlign="center" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.hint')}" styleName="lockSettingHintTextStyle"/> + </mx:Box> + <mx:HBox verticalAlign="top" width="100%" paddingTop="20"> - <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.feature')}" fontWeight="bold" /> - <mx:Label styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.locked')}" fontWeight="bold" /> + <mx:Label width="70%" styleName="lockSettingsColumnTitleStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.feature')}"/> + <mx:Label width="30%" styleName="lockSettingsColumnTitleStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.locked')}" textAlign="center"/> </mx:HBox> + <mx:HBox verticalAlign="top" width="100%"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.webcam')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> - <mx:CheckBox id="chkDisableWebcam" selected="{disableCam}" /> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> + <mx:CheckBox id="chkDisableWebcam" selected="{disableCam}" change="chkDisableWebcam_changeHandler(event)"/> </mx:HBox> </mx:HBox> + + <mx:HBox verticalAlign="top" width="100%"> + <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" + text="{ResourceUtil.getInstance().getString('bbb.lockSettings.webcamsOnlyForModerator')}" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> + <mx:CheckBox id="chkwebcamsOnlyForModerator" selected="{webcamsOnlyForModerator}" change="chkwebcamsOnlyForModerator_changeHandler(event)"/> + </mx:HBox> + </mx:HBox> + <mx:HBox verticalAlign="top" width="100%"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.microphone')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> <mx:CheckBox id="chkDisableMicrophone" selected="{disableMic}"/> - <mx:Spacer width="50%" /> </mx:HBox> </mx:HBox> + <mx:HBox verticalAlign="top" width="100%"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.publicChat')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> <mx:CheckBox id="chkDisablePublicChat" selected="{disablePubChat}"/> - <mx:Spacer width="50%" /> </mx:HBox> </mx:HBox> + <mx:HBox verticalAlign="top" width="100%"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.privateChat')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> <mx:CheckBox id="chkDisablePrivateChat" selected="{disablePrivChat}"/> - <mx:Spacer width="50%" /> </mx:HBox> </mx:HBox> - + <mx:HBox verticalAlign="top" width="100%"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.layout')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> <mx:CheckBox id="chkDisableLayout" selected="{lockedLayout}"/> - <mx:Spacer width="50%" /> </mx:HBox> </mx:HBox> - + <mx:HRule width="100%" visible="{lockOnJoinConfigurable}" includeInLayout="{lockOnJoinConfigurable}"/> - + <mx:HBox verticalAlign="top" width="100%" visible="{lockOnJoinConfigurable}" includeInLayout="{lockOnJoinConfigurable}"> <mx:Label width="70%" styleName="lockSettingsDefaultLabelStyle" text="{ResourceUtil.getInstance().getString('bbb.lockSettings.lockOnJoin')}" /> - <mx:HBox width="30%"> - <mx:Spacer width="50%" /> + <mx:HBox width="30%" styleName="lockSettingsCheckboxColumn"> <mx:CheckBox id="chkLockOnJoin" selected="{lockOnJoin}" /> - <mx:Spacer width="50%" /> </mx:HBox> </mx:HBox> - + <mx:HBox width="100%" horizontalAlign="right" horizontalGap="18" paddingTop="20"> <mx:Button id="saveBtn" label="{ResourceUtil.getInstance().getString('bbb.lockSettings.save')}" styleName="mainActionButton" click="onSaveClicked()" toolTip="{ResourceUtil.getInstance().getString('bbb.lockSettings.save.tooltip')}"/> - + <mx:Button id="cancelBtn" label="{ResourceUtil.getInstance().getString('bbb.lockSettings.cancel')}" click="onCancelClicked()" toolTip="{ResourceUtil.getInstance().getString('bbb.lockSettings.cancel.toolTip')}"/> diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/LoggedOutWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/LoggedOutWindow.mxml index 87fd94f40be9bc36e8910189f72fb4a9723117a2..ebd84a45ffc812658273ef4f0fed76c3400a99b9 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/LoggedOutWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/LoggedOutWindow.mxml @@ -20,24 +20,40 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. --> -<mx:TitleWindow xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:fx="http://ns.adobe.com/mxml/2009" - title="{ResourceUtil.getInstance().getString('bbb.logout.title')}" showCloseButton="false" creationComplete="init()" - verticalScrollPolicy="off" horizontalScrollPolicy="off" - x="168" y="86" layout="vertical" width="400" horizontalAlign="center"> +<mx:TitleWindow xmlns:mx="library://ns.adobe.com/flex/mx" + xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:views="org.bigbluebutton.main.views.*" + showCloseButton="false" + creationComplete="init()" + resize="resizeHandler(event)" + verticalScrollPolicy="off" + horizontalScrollPolicy="off" + layout="vertical" + y="86" + width.logout="400" + width.feedback="600"> <fx:Script> <![CDATA[ import com.asfusion.mate.events.Dispatcher; + import mx.events.ResizeEvent; + import mx.managers.PopUpManager; + import org.as3commons.logging.api.ILogger; import org.as3commons.logging.api.getClassLogger; + import org.bigbluebutton.core.Options; import org.bigbluebutton.core.PopUpUtil; import org.bigbluebutton.core.UsersUtil; import org.bigbluebutton.main.events.InvalidAuthTokenEvent; import org.bigbluebutton.main.events.LogoutEvent; import org.bigbluebutton.main.events.MeetingNotFoundEvent; + import org.bigbluebutton.main.model.options.LayoutOptions; import org.bigbluebutton.main.model.users.events.ConnectionFailedEvent; import org.bigbluebutton.util.i18n.ResourceUtil; - + + + + private static const LOGGER:ILogger = getClassLogger(LoggedOutWindow); [Bindable] @@ -48,6 +64,15 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. } private function callSignOut():void { + if (currentState == "feedback" && starRating.rating > 0) { + var logData:Object = new Object(); + logData.username = UsersUtil.getMyUsername(); + logData.userId = UsersUtil.getMyUserID(); + logData.meetingId = UsersUtil.getInternalMeetingID(); + logData.rating = starRating.rating; + logData.comment = feedbackMsg.text; + LOGGER.info(JSON.stringify(logData)); + } var d:Dispatcher = new Dispatcher(); d.dispatchEvent(new LogoutEvent(LogoutEvent.SIGN_OUT)); } @@ -64,6 +89,11 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. logData.reason = reason; LOGGER.info(JSON.stringify(logData)); + var layoutOptions:LayoutOptions = Options.getOptions(LayoutOptions) as LayoutOptions; + if (layoutOptions.askForFeedbackOnLogout) { + currentState = "feedback"; + } + switch (reason) { case ConnectionFailedEvent.APP_SHUTDOWN: message = ResourceUtil.getInstance().getString('bbb.logout.appshutdown'); @@ -112,10 +142,56 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. message += "\n" + ResourceUtil.getInstance().getString('bbb.logout.breakoutRoomClose'); } } + + protected function resizeHandler(event:ResizeEvent):void { + PopUpManager.centerPopUp(this); + } ]]> </fx:Script> - <mx:VBox width="100%" height="100%" horizontalAlign="center"> - <mx:Text text="{message}" textAlign="center"/> - <mx:Button id="okBtn" styleName="mainActionButton" label="{ResourceUtil.getInstance().getString('bbb.logout.button.label')}" click="callSignOut()"/> + + <mx:states> + <mx:State name="logout" /> + <mx:State name="feedback" /> + </mx:states> + <mx:VBox width="100%" + height="100%" + styleName="loggedOutContainer" + horizontalAlign="center"> + <mx:Text text="{message}" + styleName.logout="logoutTitleWindowStyle" + styleName.feedback="logoutTitle" /> + <mx:VBox id="titleBox" + includeIn="feedback" + styleName="logoutRatingBox"> + <mx:HRule width="550" + height="30" + styleName="logoutRule" /> + <mx:Label text="{ResourceUtil.getInstance().getString('bbb.logout.feedback.label')}" + styleName="logoutSubTitle" /> + <views:StarRating id="starRating" /> + <mx:VBox width="350" + verticalAlign="middle" + horizontalAlign="center" + visible="{starRating.rating > 0}" + includeInLayout="{starRating.rating > 0}" + styleName="logoutFeedbackHintBoxStyle"> + <mx:Text width="100%" + textAlign="center" + selectable="false" + text="{ResourceUtil.getInstance().getString('bbb.logout.feedback.hint')}" + styleName="logoutFeedbackHint" /> + <mx:TextArea id="feedbackMsg" + maxChars="512" + width="100%" + height="90" /> + </mx:VBox> + <mx:HRule width="550" + height="30" + styleName="logoutRule" /> + </mx:VBox> + <mx:Button id="okBtn" + styleName="mainActionButton" + label="{ResourceUtil.getInstance().getString('bbb.logout.button.label')}" + click="callSignOut()" /> </mx:VBox> -</mx:TitleWindow> +</mx:TitleWindow> diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/LogoutWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/LogoutWindow.mxml index 8a86e4a2de30ed45db304fab9e4bd9968d1acaf5..e0086ceef3bed9b7a295bcc11c4b6ffa33e215c0 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/LogoutWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/LogoutWindow.mxml @@ -25,7 +25,6 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. implements="org.bigbluebutton.common.IKeyboardClose" verticalScrollPolicy="off" horizontalScrollPolicy="off" - horizontalAlign="center" showCloseButton="false" creationComplete="onCreationComplete()" minWidth="350" diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml index 9744dbd0a7d4b9e1eab2dc3384b634f5ebe5cafd..76c88b08d44b20ac42ea19d6015ead0e35429744 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainApplicationShell.mxml @@ -114,6 +114,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. import org.bigbluebutton.core.events.RoundTripLatencyReceivedEvent; import org.bigbluebutton.core.events.SwitchedLayoutEvent; import org.bigbluebutton.core.model.LiveMeeting; + import org.bigbluebutton.core.model.Meeting; + import org.bigbluebutton.core.model.MeetingBuilder; + import org.bigbluebutton.core.model.MeetingBuilder2x; import org.bigbluebutton.core.vo.LockSettingsVO; import org.bigbluebutton.main.events.AppVersionEvent; import org.bigbluebutton.main.events.BBBEvent; @@ -171,7 +174,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. [Bindable] private var showToolbarOpt:Boolean = true; [Bindable] private var _showToolbar:Boolean = true; - private const DEFAULT_TOOLBAR_HEIGHT:Number = 50; + public static const DEFAULT_TOOLBAR_HEIGHT:Number = 50; [Bindable] private var toolbarHeight:Number = DEFAULT_TOOLBAR_HEIGHT; [Bindable] private var showFooterOpt:Boolean = true; [Bindable] private var _showFooter:Boolean = true; @@ -623,7 +626,10 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. private function updateToolbarHeight():void { if (toolbarHeight != 0) { - toolbarHeight = Math.max(DEFAULT_TOOLBAR_HEIGHT, toolbar.logo.height + toolbar.quickLinks.includeInLayout ? toolbar.quickLinks.height : 0); + toolbarHeight = DEFAULT_TOOLBAR_HEIGHT; + if (toolbar.quickLinks.includeInLayout) { + toolbarHeight += toolbar.quickLinks.height; + } if (UsersUtil.isBreakout()) { toolbarHeight += toolbar.breakoutRibbon.height; } @@ -677,6 +683,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. var ls:LockSettings = LockSettings(popUp); ls.disableCam = lsv.getDisableCam(); ls.disableMic = lsv.getDisableMic(); + ls.webcamsOnlyForModerator = LiveMeeting.inst().meeting.webcamsOnlyForModerator; ls.disablePrivChat = lsv.getDisablePrivateChat(); ls.disablePubChat = lsv.getDisablePublicChat(); ls.lockedLayout = lsv.getLockedLayout(); diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml index 7a9a5a56da733aa77e28d24f81216e938e773bf3..5ba8cf37f70aa384c08d6e13a97596e81712bd32 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/MainToolbar.mxml @@ -145,7 +145,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. if (!Accessibility.active) { quickLinks.removeAllChildren(); } else { - quickLinks.includeInLayout = true; + quickLinks.visible = quickLinks.includeInLayout = true; } } @@ -172,14 +172,14 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. break; } } - + public function displayToolbar():void{ if (toolbarOptions.showToolbar) { showToolbar = true; } else { showToolbar = false; } - + if (toolbarOptions.showHelpButton) { showHelpBtn = true; } else { @@ -212,24 +212,19 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. logo.source = LiveMeeting.inst().meeting.customLogo; } - if (UsersUtil.isBreakout()) { - breakoutRibbon.visible = breakoutRibbon.includeInLayout = true; - var sequence:String = StringUtils.substringAfterLast(UsersUtil.getMeetingName(), " "); - sequence = StringUtils.substringBefore(sequence, ")"); - breakoutLabel.text = ResourceUtil.getInstance().getString("bbb.users.breakout.youareinroom", [sequence]); - } + initBreakoutRibbon(); if (LiveMeeting.inst().meeting.logoutTimer > 0 ) { idleLogoutButton.startTimer(LiveMeeting.inst().meeting.logoutTimer); } else { rightBox.removeChild(idleLogoutButton); } - + initBanner(); logFlashPlayerCapabilities(); } - + private function initBanner() : void { if (!StringUtils.isEmpty(LiveMeeting.inst().meeting.bannerText)) { banner.visible = banner.includeInLayout = true; @@ -237,6 +232,15 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. bannerLabel.text = LiveMeeting.inst().meeting.bannerText; } } + + private function initBreakoutRibbon() : void { + if (UsersUtil.isBreakout()) { + breakoutRibbon.visible = breakoutRibbon.includeInLayout = true; + var sequence:String = StringUtils.substringAfterLast(UsersUtil.getMeetingName(), " "); + sequence = StringUtils.substringBefore(sequence, ")"); + breakoutLabel.text = ResourceUtil.getInstance().getString("bbb.users.breakout.youareinroom", [sequence]); + } + } private function refreshModeratorButtonsVisibility(e:*):void { showRecordButton = LiveMeeting.inst().meeting.recorded && UsersUtil.amIModerator(); @@ -376,9 +380,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. else if (event.module == "Microphone"){ addedPhoneMicrophone.addChild(event.button as UIComponent); } - else if (event.module == "MuteMicrophone"){ - addedMuteMicrophone.addChild(event.button as UIComponent); - } + else if (event.module == "MuteMicrophone"){ + addedMuteMicrophone.addChild(event.button as UIComponent); + } else if (event.module == "Webcam"){ addedBtnsWebcam.addChild(event.button as UIComponent); } @@ -436,6 +440,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. } btnLogout.styleName = "logoutButtonStyle" + styleNameExt; + + initBreakoutRibbon(); } private function openSettings(e:Event = null):void{ @@ -531,13 +537,13 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. tabIndices="{[recordBtn, webRTCAudioStatus, shortcutKeysBtn, helpBtn, btnLogout]}"/> </fx:Declarations> - <mx:VBox id="mainBox" styleName="toolbarMainBox" width="100%" horizontalScrollPolicy="off" verticalAlign="top" verticalGap="0"> + <mx:VBox id="mainBox" styleName="toolbarMainBox" width="100%" height="100%" horizontalScrollPolicy="off"> <!-- Breakout room Ribbon--> <mx:HBox id="banner" visible="false" includeInLayout="false" styleName="bannerStyle" width="100%" height="30"> <mx:Label id="bannerLabel" width="100%" textAlign="center"/> </mx:HBox> <mx:HBox id="breakoutRibbon" width="100%" height="30" - styleName="breakoutRoomRibbon" + styleName="breakoutRoomRibbon" visible="false" includeInLayout="false" > <mx:Label id="breakoutLabel" /> <mx:Label text="|" visible="{timeRemaining.visible}" includeInLayout="{timeRemaining.visible}"/> @@ -554,11 +560,11 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. </mx:HBox> <mx:HBox id="actionBox" width="30%" horizontalAlign="center" verticalAlign="middle" horizontalScrollPolicy="off"> <mx:HBox id="addedMuteMicrophone" /> - <mx:HBox id="addedPhoneMicrophone" /> + <mx:HBox id="addedPhoneMicrophone" /> <mx:HBox id="addedBtnsWebcam" /> <mx:HBox id="addedBtnsDeskShare" /> </mx:HBox> - <mx:HBox id="rightBox" width="40%" horizontalAlign="right" verticalAlign="middle" horizontalScrollPolicy="off"> + <mx:HBox id="rightBox" width="40%" height="100%" horizontalAlign="right" verticalAlign="middle" horizontalScrollPolicy="off"> <views:RecordButton id="recordBtn" visible="{showRecordButton}" includeInLayout="{showRecordButton}"/> <views:WebRTCAudioStatus id="webRTCAudioStatus" height="30"/> @@ -587,7 +593,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. </mx:HBox> <!-- Accessibilty Quick Links --> - <mx:HBox id="quickLinks" includeInLayout="false" width="100%" horizontalAlign="center"> + <mx:HBox id="quickLinks" visible="false" includeInLayout="false" width="100%" height="30" horizontalAlign="center" verticalAlign="middle"> <mx:LinkButton id="usersLinkBtn" click="onQuickLinkClicked('users')" label="{ResourceUtil.getInstance().getString('bbb.users.quickLink.label')}" accessibilityDescription="{usersLinkBtn.label}" toolTip="{usersLinkBtn.label}" height="30" styleName="quickWindowLinkStyle" /> diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/StarRating.as b/bigbluebutton-client/src/org/bigbluebutton/main/views/StarRating.as new file mode 100644 index 0000000000000000000000000000000000000000..eb55174fb4f517dce47de84f85f8fc0f1455513a --- /dev/null +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/StarRating.as @@ -0,0 +1,85 @@ +/** + * BigBlueButton open source conferencing system - http://www.bigbluebutton.org/ + * + * Copyright (c) 2018 BigBlueButton Inc. and by respective authors (see below). + * + * This program is free software; you can redistribute it and/or modify it under the + * terms of the GNU Lesser General Public License as published by the Free Software + * Foundation; either version 3.0 of the License, or (at your option) any later + * version. + * + * BigBlueButton is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A + * PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License along + * with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. + * + */ +package org.bigbluebutton.main.views { + import flash.events.MouseEvent; + + import mx.containers.HBox; + import mx.containers.VBox; + import mx.controls.Image; + import mx.core.UIComponent; + + import org.as3commons.lang.StringUtils; + + public class StarRating extends HBox { + + [Bindable] + public var rating:int = 0; + + private function setRating(value:int):void { + rating = value; + } + + override protected function createChildren():void { + super.createChildren(); + + for (var i:int = 1; i <= 5; i++) { + addStar(i); + } + } + + private function addStar(index:int):void { + var starBox:VBox = new VBox(); + starBox.id = "starBox" + index; + starBox.styleName = "starBoxStyle"; + starBox.width = 50; + starBox.addEventListener(MouseEvent.MOUSE_OVER, starBoxMouseOverHandler); + starBox.addEventListener(MouseEvent.MOUSE_OUT, starBoxMouseOutHandler); + starBox.addEventListener(MouseEvent.CLICK, starBoxClickHandler); + var starImage:Image = new Image(); + starImage.source = getStyle('emptyStar'); + starBox.addChild(starImage); + this.addChild(starBox); + } + + private function starBoxMouseOverHandler(event:MouseEvent):void { + fillStars(getCurrentBoxIndex(event.currentTarget as UIComponent)); + } + + private function starBoxMouseOutHandler(event:MouseEvent):void { + fillStars(rating); + } + + private function fillStars(max:int):void { + for (var i:int = 1; i <= max; i++) { + Image(VBox(getChildAt(i - 1)).getChildAt(0)).source = getStyle('filledStar'); + } + for (var j:int = max + 1; j <= numChildren; j++) { + Image(VBox(getChildAt(j - 1)).getChildAt(0)).source = getStyle('emptyStar'); + } + } + + private function starBoxClickHandler(event:MouseEvent):void { + setRating(getCurrentBoxIndex(event.currentTarget as UIComponent)); + } + + private function getCurrentBoxIndex(component:UIComponent):int { + return parseInt(StringUtils.remove(component.id, "starBox")); + } + } +} diff --git a/bigbluebutton-client/src/org/bigbluebutton/main/views/WebRTCEchoTest.mxml b/bigbluebutton-client/src/org/bigbluebutton/main/views/WebRTCEchoTest.mxml index e0d4a88492213a237d49f7e0473a69a3f1648e37..982e0d5ed37572c9bce5b94031ff4608c5736ac9 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/main/views/WebRTCEchoTest.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/main/views/WebRTCEchoTest.mxml @@ -41,7 +41,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <fx:Script> <![CDATA[ import com.asfusion.mate.events.Dispatcher; - + + import flash.utils.setTimeout; + import org.as3commons.logging.api.ILogger; import org.as3commons.logging.api.getClassLogger; import org.bigbluebutton.core.Options; @@ -54,6 +56,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. import org.bigbluebutton.modules.phone.events.WebRTCJoinedVoiceConferenceEvent; import org.bigbluebutton.modules.phone.models.Constants; import org.bigbluebutton.modules.phone.models.PhoneModel; + import org.bigbluebutton.util.browser.BrowserCheck; import org.bigbluebutton.util.i18n.ResourceUtil; private static const LOGGER:ILogger = getClassLogger(WebRTCEchoTest); @@ -169,9 +172,17 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. } private function webRTCEchoTestStarted():void { - setCurrentState("started"); - stopTimers(); + var timeOut : Number = 50; + if ( BrowserCheck.isFirefox() ) { + timeOut = 1000; + } + setTimeout(setStartedState, timeOut); } + + private function setStartedState():void { + setCurrentState("started"); + stopTimers(); + } private function handleWebRTCEchoTestEndedEvent(e:WebRTCEchoTestEvent):void { webRTCEchoTestEnded(); diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatMessageRenderer.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatMessageRenderer.mxml index 67b8def7b04870aee8cced4231a9afe624452978..4bd8a6d6bc7e80e4b6c846eb30cda640d98790a4 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatMessageRenderer.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatMessageRenderer.mxml @@ -33,6 +33,8 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. import org.as3commons.logging.api.ILogger; import org.as3commons.logging.api.getClassLogger; + import org.bigbluebutton.common.Role; + import org.bigbluebutton.core.UsersUtil; private static const LOGGER:ILogger = getClassLogger(ChatMessageRenderer); @@ -40,9 +42,9 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. LOGGER.debug("Clicked on link[{0}] from chat", [e.text]); if (ExternalInterface.available) { ExternalInterface.call("chatLinkClicked", e.text); - } + } } - + //private function dataChangeHandler(e:Event = null):void{ override public function set data(value:Object):void { //if (data == null) { @@ -63,6 +65,13 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. //remove the header if not needed to save space hbHeader.includeInLayout = hbHeader.visible = lblName.visible || lblTime.visible; + if (data.hasOwnProperty("senderId") && UsersUtil.getUser(data.senderId) && UsersUtil.getUser(data.senderId).role == Role.MODERATOR) { + hbHeader.styleName = "chatMessageHeaderModerator"; + if (lblName.visible) { + moderatorIcon.visible = true; + } + } + // If you remove this some of the chat messages will fail to render validateNow(); } @@ -76,10 +85,13 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. ]]> </fx:Script> - <mx:Canvas width="100%" id="hbHeader" verticalScrollPolicy="off" horizontalScrollPolicy="off"> - <mx:Label id="lblName" styleName="chatMessageName" text="{data.name}" visible="true" left="0" width="{this.width - lblTime.width - 22}"/> - <mx:Text id="lblTime" styleName="chatMessageTime" htmlText="{data.time}" - visible="true" right="4" /> + <mx:Canvas width="100%" id="hbHeader" styleName="chatMessageHeader" verticalScrollPolicy="off" horizontalScrollPolicy="off"> + <mx:Label id="lblName" styleName="chatMessageName" text="{data.name}" visible="true" + left="0" maxWidth="{this.width - lblTime.width - moderatorIcon.width - 22}"/> + <mx:Image id="moderatorIcon" visible="false" source="{getStyle('moderatorIcon')}" x="{lblName.width + 4}" verticalCenter="0"/> + <mx:Text id="lblTime" htmlText="{data.time}" styleName="chatMessageTime" + visible="true" + right="4" /> </mx:Canvas> <mx:Text id="txtMessage" htmlText="{data.text}" link="onLinkClick(event)" color="{data.senderColor}" keyDown="onKeyDown(event)" paddingLeft="5" width="100%" selectable="true"/> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatOptionsTab.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatOptionsTab.mxml index 0bf9546d39dfbba22ca8fe4755283f2eabb911ef..bc78dfbaa514dd08ae6dbb3eabd871a8642df5d9 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatOptionsTab.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatOptionsTab.mxml @@ -21,246 +21,251 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. --> <mx:VBox xmlns:mx="library://ns.adobe.com/flex/mx" - xmlns:fx="http://ns.adobe.com/mxml/2009" - xmlns:mate="http://mate.asfusion.com/" - xmlns:common="org.bigbluebutton.common.*" - implements="org.bigbluebutton.modules.chat.views.IChatTab" - creationComplete="onCreationComplete()"> - - <fx:Declarations> - <mate:Listener type="{LockControlEvent.CHANGED_LOCK_SETTINGS}" method="lockSettingsChanged" /> - <mate:Listener type="{ChangeMyRole.CHANGE_MY_ROLE_EVENT}" method="refreshRole" /> - <mate:Listener type="{UserJoinedEvent.JOINED}" method="handleUserJoinedEvent" /> - <mate:Listener type="{UserLeftEvent.LEFT}" method="handleUserLeftEvent" /> - <mate:Listener type="{EventConstants.NEW_GROUP_CHAT}" method="handleNewGroupChatEvent" /> - </fx:Declarations> - - <fx:Script> - <![CDATA[ - import com.asfusion.mate.events.Dispatcher; - - import mx.collections.ArrayCollection; - import mx.controls.Alert; - import mx.events.CloseEvent; - - import org.as3commons.lang.StringUtils; - import org.as3commons.logging.api.ILogger; - import org.as3commons.logging.api.getClassLogger; - import org.bigbluebutton.core.EventConstants; - import org.bigbluebutton.core.Options; - import org.bigbluebutton.core.UsersUtil; - import org.bigbluebutton.core.events.CoreEvent; - import org.bigbluebutton.core.events.LockControlEvent; - import org.bigbluebutton.core.model.LiveMeeting; - import org.bigbluebutton.main.events.UserJoinedEvent; - import org.bigbluebutton.main.events.UserLeftEvent; - import org.bigbluebutton.main.model.users.events.ChangeMyRole; - import org.bigbluebutton.modules.chat.events.ChatNoiseEnabledEvent; - import org.bigbluebutton.modules.chat.events.ChatOptionsEvent; - import org.bigbluebutton.modules.chat.events.ChatToolbarButtonEvent; - import org.bigbluebutton.modules.chat.events.CreateGroupChatReqEvent; - import org.bigbluebutton.modules.chat.events.OpenChatBoxEvent; - import org.bigbluebutton.modules.chat.model.ChatOptions; - import org.bigbluebutton.modules.chat.model.GroupChat; - import org.bigbluebutton.modules.chat.views.model.ChatUser; - import org.bigbluebutton.modules.chat.views.model.GroupChatData; - import org.bigbluebutton.util.i18n.ResourceUtil; - - private static const LOGGER:ILogger = getClassLogger(ChatOptionsTab); - - [Bindable] public var users:ArrayCollection; - [Bindable] public var groupChats:ArrayCollection; - [Bindable] public var chatView:ChatView; - [Bindable] private var fontSizes:Array = ['8', '10', '12', '14', '16', '18']; - - [Bindable] public var chatOptions:ChatOptions; - [Bindable] private var amIModerator:Boolean = false; - - private var globalDispatcher:Dispatcher = new Dispatcher(); - - private var handler: ChatWindowEventHandler = new ChatWindowEventHandler(); - - private function handleUserLeftEvent(event: UserLeftEvent): void { - handler.handleUserLeftEvent(event.userID); - handler.populateAllUsers(); - users = removeMe(handler.users); - } - - private function handleNewGroupChatEvent(event:CoreEvent):void { - handler.populateAllGroupChats(); - } - - private function handleUserJoinedEvent(event: UserJoinedEvent):void { - handler.handleUserJoinedEvent(event); - handler.populateAllUsers(); - users = removeMe(handler.users); - } - - private function removeMe(users:ArrayCollection):ArrayCollection { - var myUserId:String = UsersUtil.getMyUserID(); - var filteredUsers:Array = new Array(); - - for (var i:int = 0; i < users.length; i++) { - var user:ChatUser = users[i] as ChatUser; - if (user.userId != myUserId) { - filteredUsers.push(user); - } - } - - return new ArrayCollection(filteredUsers); - } - - private function onCreationComplete():void{ - amIModerator = UsersUtil.amIModerator(); - - handler.populateAllUsers(); - handler.populateAllGroupChats() - users = removeMe(handler.users); - groupChats = handler.groupChats; - chatOptions = Options.getOptions(ChatOptions) as ChatOptions; - - if (!chatOptions.privateEnabled) { - usersList.includeInLayout = usersList.visible = false; - } - - if (fontSizes.indexOf(chatOptions.fontSize) != -1) { - cmbFontSize.selectedItem = chatOptions.fontSize; - changeFontSize(); // have to manually call it because the change event doesn't fire - } else { - LOGGER.debug("fontSize in config.xml not found: {0}", [chatOptions.fontSize]); - } - chatNoiseCheckBox.selected = Accessibility.active; - changeChatNoise(); - - lockSettingsChanged(); - } - - public function onUserListKeyDown(event:KeyboardEvent):void{ - if (event.keyCode == 32){ - openPrivateChat(event); - } - } - - private function changeFontSize():void { - LOGGER.debug("sending change font size") - var e:ChatOptionsEvent = new ChatOptionsEvent(ChatOptionsEvent.CHANGE_FONT_SIZE); - e.fontSize = int(cmbFontSize.selectedItem); - dispatchEvent(e); - } - - private function changeChatNoise():void { - LOGGER.debug("changing chat noise, active=" + chatNoiseCheckBox.selected); - dispatchEvent(new ChatNoiseEnabledEvent(chatNoiseCheckBox.selected)); - } - - protected function openPrivateChat(event:Event):void { - if (usersList.selectedIndex == -1) - return; - - if (!usersList.visible || !usersList.enabled) - return; - - var chatWithIntId:String = usersList.selectedItem.userId; - var chatName:String = usersList.selectedItem.name; - - // Don't want to be chatting with ourself. - if (UsersUtil.isMe(chatWithIntId)) - return; - - var access:String = GroupChat.PRIVATE; - var users:Array = new Array(); - users.push(chatWithIntId); - - usersList.selectedIndex = -1; - - var createEvent:CreateGroupChatReqEvent = new CreateGroupChatReqEvent(chatName, access, users); - globalDispatcher.dispatchEvent(createEvent); - } - - protected function openGroupChat():void { - if (groupChatList.selectedItem) { - globalDispatcher.dispatchEvent(new OpenChatBoxEvent(GroupChatData(groupChatList.selectedItem).chatId)); + xmlns:fx="http://ns.adobe.com/mxml/2009" + xmlns:mate="http://mate.asfusion.com/" + xmlns:common="org.bigbluebutton.common.*" + implements="org.bigbluebutton.modules.chat.views.IChatTab" + creationComplete="onCreationComplete()"> + + <fx:Declarations> + <mate:Listener type="{LockControlEvent.CHANGED_LOCK_SETTINGS}" method="lockSettingsChanged" /> + <mate:Listener type="{ChangeMyRole.CHANGE_MY_ROLE_EVENT}" method="refreshRole" /> + <mate:Listener type="{UserJoinedEvent.JOINED}" method="handleUserJoinedEvent" /> + <mate:Listener type="{UserLeftEvent.LEFT}" method="handleUserLeftEvent" /> + <mate:Listener type="{EventConstants.NEW_GROUP_CHAT}" method="handleNewGroupChatEvent" /> + </fx:Declarations> + + <fx:Script> + <![CDATA[ + import com.asfusion.mate.events.Dispatcher; + + import mx.collections.ArrayCollection; + import mx.controls.Alert; + import mx.events.CloseEvent; + + import org.as3commons.lang.StringUtils; + import org.as3commons.logging.api.ILogger; + import org.as3commons.logging.api.getClassLogger; + import org.bigbluebutton.core.EventConstants; + import org.bigbluebutton.core.Options; + import org.bigbluebutton.core.UsersUtil; + import org.bigbluebutton.core.events.CoreEvent; + import org.bigbluebutton.core.events.LockControlEvent; + import org.bigbluebutton.core.model.LiveMeeting; + import org.bigbluebutton.main.events.UserJoinedEvent; + import org.bigbluebutton.main.events.UserLeftEvent; + import org.bigbluebutton.main.model.users.events.ChangeMyRole; + import org.bigbluebutton.modules.chat.events.ChatNoiseEnabledEvent; + import org.bigbluebutton.modules.chat.events.ChatOptionsEvent; + import org.bigbluebutton.modules.chat.events.ChatToolbarButtonEvent; + import org.bigbluebutton.modules.chat.events.CreateGroupChatReqEvent; + import org.bigbluebutton.modules.chat.events.OpenChatBoxEvent; + import org.bigbluebutton.modules.chat.model.ChatOptions; + import org.bigbluebutton.modules.chat.model.GroupChat; + import org.bigbluebutton.modules.chat.views.model.ChatUser; + import org.bigbluebutton.modules.chat.views.model.GroupChatData; + import org.bigbluebutton.modules.users.model.BreakoutRoomsOptions; + import org.bigbluebutton.util.i18n.ResourceUtil; + + private static const LOGGER:ILogger = getClassLogger(ChatOptionsTab); + + [Bindable] public var users:ArrayCollection; + [Bindable] public var groupChats:ArrayCollection; + [Bindable] public var chatView:ChatView; + [Bindable] private var fontSizes:Array = ['8', '10', '12', '14', '16', '18']; + + [Bindable] public var chatOptions:ChatOptions; + [Bindable] public var breakoutOptions:BreakoutRoomsOptions; + [Bindable] private var amIModerator:Boolean = false; + + private var globalDispatcher:Dispatcher = new Dispatcher(); + + private var handler: ChatWindowEventHandler = new ChatWindowEventHandler(); + + private function handleUserLeftEvent(event: UserLeftEvent): void { + handler.handleUserLeftEvent(event.userID); + handler.populateAllUsers(); + users = removeMe(handler.users); } - } - - public function onGroupChatListKeyDown(event:KeyboardEvent):void{ - if (event.keyCode == 32){ - openGroupChat(); + + private function handleNewGroupChatEvent(event:CoreEvent):void { + handler.populateAllGroupChats(); } - } - - /** - * For the Options tab focus the users list instead of the text area. - **/ - public function focusToTextMessageArea():void { - if (usersList.visible) { - usersList.setFocus(); - usersList.drawFocus(true); - } else { - cmbFontSize.setFocus(); - cmbFontSize.drawFocus(true); - } - } - - private function lockSettingsChanged(e:Event = null):void { - refreshListStatus(); - } - - private function refreshRole(e:ChangeMyRole):void { - amIModerator = UsersUtil.amIModerator(); - refreshListStatus(); - } - - private function refreshListStatus():void { - - if (UsersUtil.amIModerator() || UsersUtil.amIPresenter()) return; // Settings only affect viewers. - - usersList.enabled = ! LiveMeeting.inst().me.disableMyPrivateChat; - } - - public function sendSaveEvent():void{ - var saveEvent:ChatToolbarButtonEvent = - new ChatToolbarButtonEvent(ChatToolbarButtonEvent.SAVE_CHAT_TOOLBAR_EVENT); - globalDispatcher.dispatchEvent(saveEvent); - } - - public function sendCopyEvent():void{ - var copyEvent:ChatToolbarButtonEvent = - new ChatToolbarButtonEvent(ChatToolbarButtonEvent.COPY_CHAT_TOOLBAR_EVENT); - globalDispatcher.dispatchEvent(copyEvent); - } - - public function sendClearEvent():void{ - var clearChatHistoryAlert:Alert = Alert.show(ResourceUtil.getInstance().getString('bbb.chat.clearBtn.alert.text'), - ResourceUtil.getInstance().getString('bbb.chat.clearBtn.alert.title'), - Alert.YES | Alert.NO, null, handleClearChatHistoryAlert, null, Alert.YES); - } - - private function handleClearChatHistoryAlert(e:CloseEvent):void { - if (e.detail == Alert.YES) { - var clearEvent:ChatToolbarButtonEvent = - new ChatToolbarButtonEvent(ChatToolbarButtonEvent.CLEAR_PUBLIC_CHAT_TOOLBAR_EVENT); - globalDispatcher.dispatchEvent(clearEvent); - } - } - + + private function handleUserJoinedEvent(event: UserJoinedEvent):void { + handler.handleUserJoinedEvent(event); + handler.populateAllUsers(); + users = removeMe(handler.users); + } + + private function removeMe(users:ArrayCollection):ArrayCollection { + var myUserId:String = UsersUtil.getMyUserID(); + var filteredUsers:Array = new Array(); + + for (var i:int = 0; i < users.length; i++) { + var user:ChatUser = users[i] as ChatUser; + if (user.userId != myUserId) { + filteredUsers.push(user); + } + } + + return new ArrayCollection(filteredUsers); + } + + private function onCreationComplete():void{ + amIModerator = UsersUtil.amIModerator(); + + handler.populateAllUsers(); + handler.populateAllGroupChats() + users = removeMe(handler.users); + groupChats = handler.groupChats; + chatOptions = Options.getOptions(ChatOptions) as ChatOptions; + breakoutOptions = Options.getOptions(BreakoutRoomsOptions) as BreakoutRoomsOptions; + + if ((!UsersUtil.isBreakout() && !chatOptions.privateEnabled) || + (UsersUtil.isBreakout() && !breakoutOptions.privateChateEnabled ) + ) { + usersList.includeInLayout = usersList.visible = false; + } + + if (fontSizes.indexOf(chatOptions.fontSize) != -1) { + cmbFontSize.selectedItem = chatOptions.fontSize; + changeFontSize(); // have to manually call it because the change event doesn't fire + } else { + LOGGER.debug("fontSize in config.xml not found: {0}", [chatOptions.fontSize]); + } + chatNoiseCheckBox.selected = Accessibility.active; + changeChatNoise(); + + lockSettingsChanged(); + } + + public function onUserListKeyDown(event:KeyboardEvent):void{ + if (event.keyCode == 32){ + openPrivateChat(event); + } + } + + private function changeFontSize():void { + LOGGER.debug("sending change font size") + var e:ChatOptionsEvent = new ChatOptionsEvent(ChatOptionsEvent.CHANGE_FONT_SIZE); + e.fontSize = int(cmbFontSize.selectedItem); + dispatchEvent(e); + } + + private function changeChatNoise():void { + LOGGER.debug("changing chat noise, active=" + chatNoiseCheckBox.selected); + dispatchEvent(new ChatNoiseEnabledEvent(chatNoiseCheckBox.selected)); + } + + protected function openPrivateChat(event:Event):void { + if (usersList.selectedIndex == -1) + return; + + if (!usersList.visible || !usersList.enabled) + return; + + var chatWithIntId:String = usersList.selectedItem.userId; + var chatName:String = usersList.selectedItem.name; + + // Don't want to be chatting with ourself. + if (UsersUtil.isMe(chatWithIntId)) + return; + + var access:String = GroupChat.PRIVATE; + var users:Array = new Array(); + users.push(chatWithIntId); + + usersList.selectedIndex = -1; + + var createEvent:CreateGroupChatReqEvent = new CreateGroupChatReqEvent(chatName, access, users); + globalDispatcher.dispatchEvent(createEvent); + } + + protected function openGroupChat():void { + if (groupChatList.selectedItem) { + globalDispatcher.dispatchEvent(new OpenChatBoxEvent(GroupChatData(groupChatList.selectedItem).chatId)); + } + } + + public function onGroupChatListKeyDown(event:KeyboardEvent):void{ + if (event.keyCode == 32){ + openGroupChat(); + } + } + + /** + * For the Options tab focus the users list instead of the text area. + **/ + public function focusToTextMessageArea():void { + if (usersList.visible) { + usersList.setFocus(); + usersList.drawFocus(true); + } else { + cmbFontSize.setFocus(); + cmbFontSize.drawFocus(true); + } + } + + private function lockSettingsChanged(e:Event = null):void { + refreshListStatus(); + } + + private function refreshRole(e:ChangeMyRole):void { + amIModerator = UsersUtil.amIModerator(); + refreshListStatus(); + } + + private function refreshListStatus():void { + + if (UsersUtil.amIModerator() || UsersUtil.amIPresenter()) return; // Settings only affect viewers. + + usersList.enabled = ! LiveMeeting.inst().me.disableMyPrivateChat; + } + + public function sendSaveEvent():void{ + var saveEvent:ChatToolbarButtonEvent = + new ChatToolbarButtonEvent(ChatToolbarButtonEvent.SAVE_CHAT_TOOLBAR_EVENT); + globalDispatcher.dispatchEvent(saveEvent); + } + + public function sendCopyEvent():void{ + var copyEvent:ChatToolbarButtonEvent = + new ChatToolbarButtonEvent(ChatToolbarButtonEvent.COPY_CHAT_TOOLBAR_EVENT); + globalDispatcher.dispatchEvent(copyEvent); + } + + public function sendClearEvent():void{ + var clearChatHistoryAlert:Alert = Alert.show(ResourceUtil.getInstance().getString('bbb.chat.clearBtn.alert.text'), + ResourceUtil.getInstance().getString('bbb.chat.clearBtn.alert.title'), + Alert.YES | Alert.NO, null, handleClearChatHistoryAlert, null, Alert.YES); + } + + private function handleClearChatHistoryAlert(e:CloseEvent):void { + if (e.detail == Alert.YES) { + var clearEvent:ChatToolbarButtonEvent = + new ChatToolbarButtonEvent(ChatToolbarButtonEvent.CLEAR_PUBLIC_CHAT_TOOLBAR_EVENT); + globalDispatcher.dispatchEvent(clearEvent); + } + } + public function onCreateChatBtnClick():void { var newChatName:String = newChatNameInput.text; var access:String = GroupChat.PUBLIC; var users:Array = new Array(); - + var createEvent:CreateGroupChatReqEvent = new CreateGroupChatReqEvent(newChatName, access, users); globalDispatcher.dispatchEvent(createEvent); newChatNameInput.text = ""; } - ]]> - </fx:Script> - - <fx:Declarations> - <common:TabIndexer id="tabIndexer" startIndex="1" tabIndices="{[usersList, cmbFontSize, chatNoiseCheckBox, saveBtn, copyBtn, clearBtn]}"/> - </fx:Declarations> - + ]]> + </fx:Script> + + <fx:Declarations> + <common:TabIndexer id="tabIndexer" startIndex="1" tabIndices="{[usersList, cmbFontSize, chatNoiseCheckBox, saveBtn, copyBtn, clearBtn]}"/> + </fx:Declarations> + <mx:HBox id="newGroupChatBox" width="100%" verticalAlign="middle" visible="{chatOptions.groupEnabled && groupChats.length < chatOptions.maxNumWindows && amIModerator}" includeInLayout="{chatOptions.groupEnabled && groupChats.length < chatOptions.maxNumWindows && amIModerator}"> @@ -270,7 +275,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. styleName="mainActionButton" height="30" enabled="{!StringUtils.isEmpty(newChatNameInput.text)}" click="onCreateChatBtnClick()" /> </mx:HBox> - + <!-- Group chats --> <mx:Label id="lblSelectGroupChat" styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.groupChatSelect')}" @@ -282,7 +287,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. keyDown="onGroupChatListKeyDown(event)" toolTip="{ResourceUtil.getInstance().getString('bbb.chat.groupChatList.toolTip')}" accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.groupChatList.accessibilityName')}"/> - + <!-- Private chats --> <mx:Label id="lblSelectPrivateChat" styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.privateChatSelect')}" @@ -294,50 +299,50 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. keyDown="onUserListKeyDown(event)" toolTip="{ResourceUtil.getInstance().getString('bbb.chat.usersList.toolTip')}" accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.usersList.accessibilityName')}"/> - - <mx:Label styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.chatOptions')}" /> - - <mx:HBox width="100%"> - <mx:Label styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.fontSize')}" width="100%"/> - <common:ComboBox2 width="60" id="cmbFontSize" dataProvider="{fontSizes}" change="changeFontSize()" - selectedIndex="1" toolTip="{ResourceUtil.getInstance().getString('bbb.chat.cmbFontSize.toolTip')}" /> - </mx:HBox> - <mx:HBox width="100%"> - <mx:Label styleName="chatOptionsLabel" - text="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.audibleChatNotification')}" - width="100%"/> - <mx:CheckBox id="chatNoiseCheckBox" change="changeChatNoise()" accessibilityName="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.audibleChatNotification')}" /> - </mx:HBox> - <mx:HBox width="100%"> - <mx:Label styleName="chatOptionsLabel" - text="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.publicChatOptions')}" - width="100%"/> - <mx:Button id="saveBtn" - styleName="chatSaveButtonStyle" - width="22" - height="22" - toolTip="{ResourceUtil.getInstance().getString('bbb.chat.saveBtn.toolTip')}" - click="sendSaveEvent()" - accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.saveBtn.accessibilityName')}"/> - - <mx:Button id="copyBtn" - styleName="chatCopyButtonStyle" - width="22" - height="22" - toolTip="{ResourceUtil.getInstance().getString('bbb.chat.copyBtn.toolTip')}" - click="sendCopyEvent()" - accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.copyBtn.accessibilityName')}"/> - - <mx:Button id="clearBtn" - styleName="chatClearButtonStyle" - width="22" - height="22" - visible = "{amIModerator}" - enabled = "{amIModerator}" - includeInLayout = "{amIModerator}" - toolTip="{ResourceUtil.getInstance().getString('bbb.chat.clearBtn.toolTip')}" - click="sendClearEvent()" - accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.clearBtn.accessibilityName')}"/> - </mx:HBox> - + + <mx:Label styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.chatOptions')}" /> + + <mx:HBox width="100%"> + <mx:Label styleName="chatOptionsLabel" text="{ResourceUtil.getInstance().getString('bbb.chat.fontSize')}" width="100%"/> + <common:ComboBox2 width="60" id="cmbFontSize" dataProvider="{fontSizes}" change="changeFontSize()" + selectedIndex="1" toolTip="{ResourceUtil.getInstance().getString('bbb.chat.cmbFontSize.toolTip')}" /> + </mx:HBox> + <mx:HBox width="100%"> + <mx:Label styleName="chatOptionsLabel" + text="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.audibleChatNotification')}" + width="100%"/> + <mx:CheckBox id="chatNoiseCheckBox" change="changeChatNoise()" accessibilityName="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.audibleChatNotification')}" /> + </mx:HBox> + <mx:HBox width="100%"> + <mx:Label styleName="chatOptionsLabel" + text="{ResourceUtil.getInstance().getString('bbb.accessibility.chat.chatwindow.publicChatOptions')}" + width="100%"/> + <mx:Button id="saveBtn" + styleName="chatSaveButtonStyle" + width="22" + height="22" + toolTip="{ResourceUtil.getInstance().getString('bbb.chat.saveBtn.toolTip')}" + click="sendSaveEvent()" + accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.saveBtn.accessibilityName')}"/> + + <mx:Button id="copyBtn" + styleName="chatCopyButtonStyle" + width="22" + height="22" + toolTip="{ResourceUtil.getInstance().getString('bbb.chat.copyBtn.toolTip')}" + click="sendCopyEvent()" + accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.copyBtn.accessibilityName')}"/> + + <mx:Button id="clearBtn" + styleName="chatClearButtonStyle" + width="22" + height="22" + visible = "{amIModerator}" + enabled = "{amIModerator}" + includeInLayout = "{amIModerator}" + toolTip="{ResourceUtil.getInstance().getString('bbb.chat.clearBtn.toolTip')}" + click="sendClearEvent()" + accessibilityName="{ResourceUtil.getInstance().getString('bbb.chat.clearBtn.accessibilityName')}"/> + </mx:HBox> + </mx:VBox> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatWindowEventHandler.as b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatWindowEventHandler.as old mode 100755 new mode 100644 index 5f42ed5b7d5d37bcef59b00041694cde98c71f2c..18c2cef7ec335d493085a69179d72a275944bf3a --- a/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatWindowEventHandler.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/chat/views/ChatWindowEventHandler.as @@ -1,6 +1,7 @@ package org.bigbluebutton.modules.chat.views { import mx.collections.ArrayCollection; - + import mx.collections.Sort; + import org.bigbluebutton.core.UsersUtil; import org.bigbluebutton.core.model.LiveMeeting; import org.bigbluebutton.core.model.users.User2x; @@ -18,7 +19,12 @@ package org.bigbluebutton.modules.chat.views { [Bindable] public var groupChats:ArrayCollection = new ArrayCollection(); + private var sort:Sort; + public function ChatWindowEventHandler() { + sort = new Sort(); + sort.compareFunction = sortFunction; + users.sort = sort; users.refresh(); groupChats.refresh(); } @@ -113,5 +119,23 @@ package org.bigbluebutton.modules.chat.views { groupChats.refresh(); } + private function sortFunction(a:Object, b:Object, array:Array = null):int { + /* + * Check name (case-insensitive) in the event of a tie up above. If the name + * is the same then use userID which should be unique making the order the same + * across all clients. + */ + if (a.name.toLowerCase() < b.name.toLowerCase()) + return -1; + else if (a.name.toLowerCase() > b.name.toLowerCase()) + return 1; + else if (a.userId.toLowerCase() > b.userId.toLowerCase()) + return -1; + else if (a.userId.toLowerCase() < b.userId.toLowerCase()) + return 1; + return 0; + } + } } + diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/FileUploadWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/FileUploadWindow.mxml index 6e69ac5bf703272911dee5fb1a7a1db23e107b47..ff34ac09f61a1bef45744b038517c5bf28a8f2a7 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/FileUploadWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/present/ui/views/FileUploadWindow.mxml @@ -404,7 +404,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. maxWidth="550" /> <mx:Box width="100%" height="100%" paddingLeft="5" paddingRight="5" includeIn="normal"> - <mx:Box width="100%" height="100%" verticalAlign="middle" horizontalAlign="center" styleName="presentationUploadFileFormatHintBoxStyle"> + <mx:Box width="100%" height="100%" styleName="presentationUploadFileFormatHintBoxStyle"> <mx:Text width="100%" id="fileFormatHintLbl" textAlign="center" text="{ResourceUtil.getInstance().getString('bbb.fileupload.fileFormatHint')}" styleName="presentationUploadFileFormatHintTextStyle"/> </mx:Box> </mx:Box> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml index 80a3215057fa3dfe8dda822393038feb7b9adf6c..0bc489cd7abf5ce1e8103d70e8e1ec4d4e68bacc 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/screenshare/view/components/ScreenshareViewWindow.mxml @@ -29,6 +29,8 @@ initialize="init()" layout="absolute" creationComplete="onCreationComplete()" + verticalScrollPolicy="off" + horizontalScrollPolicy="off" implements="org.bigbluebutton.common.IBbbModuleWindow" xmlns:mate="http://mate.asfusion.com/" title="{ ResourceUtil.getInstance().getString('bbb.screenshareView.title') }" @@ -125,7 +127,7 @@ } private function videoHolder_mouseOverHanlder(event:MouseEvent) : void { - btnActualSize.alpha = 100; + btnActualSize.alpha = 1; } private function videoHolder_mouseOutHanlder(event:MouseEvent) : void { @@ -260,8 +262,8 @@ videoHolder.width = video.width; videoHolder.height = video.height; - this.verticalScrollPolicy = videoCanvas.verticalScrollPolicy = ScrollPolicy.OFF; - this.horizontalScrollPolicy = videoCanvas.horizontalScrollPolicy = ScrollPolicy.OFF; + videoCanvas.verticalScrollPolicy = ScrollPolicy.OFF; + videoCanvas.horizontalScrollPolicy = ScrollPolicy.OFF; } private function fitWindowToVideo():void { @@ -288,8 +290,8 @@ videoHolder.height = videoHeight; } - this.verticalScrollPolicy = videoCanvas.verticalScrollPolicy = ScrollPolicy.AUTO; - this.horizontalScrollPolicy = videoCanvas.horizontalScrollPolicy = ScrollPolicy.AUTO; + videoCanvas.verticalScrollPolicy = ScrollPolicy.AUTO; + videoCanvas.horizontalScrollPolicy = ScrollPolicy.AUTO; } private function determineHowToDisplayVideo():void { @@ -350,7 +352,7 @@ top="{VIDEO_HEIGHT_PADDING}" click="determineHowToDisplayVideo()" selected="false" - mouseOver="btnActualSize.alpha = 100" + mouseOver="btnActualSize.alpha = 1" label="{ btnActualSize.selected ? ResourceUtil.getInstance().getString('bbb.screenshareView.fitToWindow') : ResourceUtil.getInstance().getString('bbb.screenshareView.actualSize') }" toolTip="{ btnActualSize.selected ? ResourceUtil.getInstance().getString('bbb.screenshareView.fitToWindow') : ResourceUtil.getInstance().getString('bbb.screenshareView.actualSize') }"/> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml index 164b72b3f458999d222df9255f751be084da7779..b7a4122612374e81793f1d5c5eef35676b29228c 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/maps/UsersMainEventMap.mxml @@ -26,6 +26,7 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. import mx.events.FlexEvent; import org.bigbluebutton.core.events.LockControlEvent; + import org.bigbluebutton.core.events.SetWebcamsOnlyForModeratorEvent; import org.bigbluebutton.core.events.TokenValidEvent; import org.bigbluebutton.core.events.TokenValidReconnectEvent; import org.bigbluebutton.core.events.VoiceConfEvent; @@ -169,6 +170,10 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. <EventHandlers type="{LockControlEvent.SAVE_LOCK_SETTINGS}" > <MethodInvoker generator="{UserService}" method="saveLockSettings" arguments="{event}" /> </EventHandlers> + + <EventHandlers type="{SetWebcamsOnlyForModeratorEvent.UPDATE_WEBCAMS_ONLY_FOR_MODERATOR}" > + <MethodInvoker generator="{UserService}" method="updateWebcamsOnlyForModerator" arguments="{event}" /> + </EventHandlers> <EventHandlers type="{RoleChangeEvent.ASSIGN_PRESENTER}"> <MethodInvoker generator="{UserService}" method="assignPresenter" arguments="{event}" /> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/model/BreakoutRoomsOptions.as b/bigbluebutton-client/src/org/bigbluebutton/modules/users/model/BreakoutRoomsOptions.as index 9bf93d783993d4182fb0a0c20cda97dd5ceabc93..74589a46aad10e7bf977dfdd8aa3cd8dca98b33a 100644 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/model/BreakoutRoomsOptions.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/model/BreakoutRoomsOptions.as @@ -27,6 +27,9 @@ package org.bigbluebutton.modules.users.model { [Bindable] public var record:Boolean = true; + [Bindable] + public var privateChateEnabled:Boolean = true; + public function BreakoutRoomsOptions() { name = "breakoutRooms"; } diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as index c79eee6db5f4985014c7b7d7305ce4fd3b847303..3a9ef1465cc7402fae11d0843bbec8abd72acdf5 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageReceiver.as @@ -63,6 +63,8 @@ package org.bigbluebutton.modules.users.services public var onAllowedToJoin:Function = null; private static var globalDispatcher:Dispatcher = new Dispatcher(); + + private static var flashWebcamPattern:RegExp = /^([A-z0-9]+)-([A-z0-9]+)-([A-z0-9]+)(-recorded)?$/; public function MessageReceiver() { BBB.initConnectionManager().addMessageListener(this); @@ -136,9 +138,15 @@ package org.bigbluebutton.modules.users.services case "GetRecordingStatusRespMsg": handleGetRecordingStatusReply(message); break; + case "GetWebcamsOnlyForModeratorRespMsg": + handleGetWebcamsOnlyForModeratorRespMsg(message); + break; case "RecordingStatusChangedEvtMsg": handleRecordingStatusChanged(message); break; + case "WebcamsOnlyForModeratorChangedEvtMsg": + handleWebcamsOnlyForModeratorChanged(message); + break; case "LockSettingsInMeetingChangedEvtMsg": handlePermissionsSettingsChanged(message); break; @@ -478,15 +486,18 @@ package org.bigbluebutton.modules.users.services var userId: String = media.userId as String; var attributes: Object = media.attributes as Object; var viewers: Array = media.viewers as Array; - - var webcamStream: MediaStream = new MediaStream(streamId, userId); - webcamStream.streamId = streamId; - webcamStream.userId = userId; - webcamStream.attributes = attributes; - webcamStream.viewers = viewers; - - LOGGER.debug("STREAM = " + JSON.stringify(webcamStream)); - LiveMeeting.inst().webcams.add(webcamStream); + + + if (isValidFlashWebcamStream(streamId)) { + var webcamStream: MediaStream = new MediaStream(streamId, userId); + webcamStream.streamId = streamId; + webcamStream.userId = userId; + webcamStream.attributes = attributes; + webcamStream.viewers = viewers; + + LOGGER.debug("STREAM = " + JSON.stringify(webcamStream)); + LiveMeeting.inst().webcams.add(webcamStream); + } } } @@ -532,7 +543,7 @@ package org.bigbluebutton.modules.users.services logData.tags = ["users"]; logData.status = "user_ejected"; logData.message = "User ejected from meeting."; - LOGGER.info(JSON.stringify(logData)); + LOGGER.debug(JSON.stringify(logData)); } private function handleUserLocked(msg:Object):void { @@ -557,7 +568,7 @@ package org.bigbluebutton.modules.users.services } private function handlePermissionsSettingsChanged(msg:Object):void { - LOGGER.debug("handlePermissionsSettingsChanged {0} \n", [msg.body]); + LOGGER.debug("handlePermissionsSettingsChanged {0} \n", [JSON.stringify(msg.body)]); var body:Object = msg.body as Object; var lockSettings:LockSettingsVO = new LockSettingsVO( @@ -601,7 +612,15 @@ package org.bigbluebutton.modules.users.services dispatcher.dispatchEvent(e); } - + + private function sendWebcamsOnlyForModeratorChanged(webcamsOnlyForModerator:Boolean):void { + LiveMeeting.inst().meeting.webcamsOnlyForModerator = webcamsOnlyForModerator; + + var e:BBBEvent = new BBBEvent(BBBEvent.CHANGE_WEBCAMS_ONLY_FOR_MODERATOR); + e.payload.webcamsOnlyForModerator = webcamsOnlyForModerator; + + dispatcher.dispatchEvent(e); + } private function handleMeetingMuted(msg:Object):void { var body:Object = msg.body as Object; @@ -638,12 +657,26 @@ package org.bigbluebutton.modules.users.services sendRecordingStatusUpdate(recording); } + + private function handleGetWebcamsOnlyForModeratorRespMsg(msg:Object):void { + var body:Object = msg.body as Object; + var webcamsOnlyForModerator: Boolean = body.webcamsOnlyForModerator as Boolean; + + LiveMeeting.inst().meeting.webcamsOnlyForModerator = webcamsOnlyForModerator; + } private function handleRecordingStatusChanged(msg: Object):void { var body:Object = msg.body as Object; var recording: Boolean = body.recording as Boolean; sendRecordingStatusUpdate(recording); } + + private function handleWebcamsOnlyForModeratorChanged(msg: Object):void { + LOGGER.debug("handleWebcamsOnlyForModeratorChanged {0} \n", [JSON.stringify(msg.body)]); + var body:Object = msg.body as Object; + var webcamsOnlyForModerator: Boolean = body.webcamsOnlyForModerator as Boolean; + sendWebcamsOnlyForModeratorChanged(webcamsOnlyForModerator); + } /** * This meeting is in the process of ending by the server @@ -730,21 +763,23 @@ package org.bigbluebutton.modules.users.services private function handleUserBroadcastCamStartedEvtMsg(msg:Object):void { var userId: String = msg.body.userId as String; var streamId: String = msg.body.stream as String; - var logData:Object = UsersUtil.initLogData(); logData.tags = ["webcam"]; logData.message = "UserBroadcastCamStartedEvtMsg server message"; logData.user.webcamStream = streamId; - LOGGER.info(JSON.stringify(logData)); - - var mediaStream: MediaStream = new MediaStream(streamId, userId) - LiveMeeting.inst().webcams.add(mediaStream); - - var webUser: User2x = UsersUtil.getUser(userId); - if (webUser != null) { - sendStreamStartedEvent(userId, webUser.name, streamId); + + if (isValidFlashWebcamStream(streamId)) { + + LOGGER.info(JSON.stringify(logData)); + + var mediaStream: MediaStream = new MediaStream(streamId, userId) + LiveMeeting.inst().webcams.add(mediaStream); + + var webUser: User2x = UsersUtil.getUser(userId); + if (webUser != null) { + sendStreamStartedEvent(userId, webUser.name, streamId); + } } - } private function sendStreamStartedEvent(userId: String, name: String, stream: String):void{ @@ -870,6 +905,10 @@ package org.bigbluebutton.modules.users.services dispatcher.dispatchEvent(e); } } + + private function isValidFlashWebcamStream(streamId: String):Boolean{ + return flashWebcamPattern.test(streamId); + } public function handleGuestPolicyChanged(msg:Object):void { diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as index fc73be3f2d71f81365a1b3a00dd30eb7eff83654..4e5d030a454b57070659dbce154232df6ed5ec53 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/services/MessageSender.as @@ -32,8 +32,8 @@ package org.bigbluebutton.modules.users.services import org.bigbluebutton.core.connection.messages.breakoutrooms.CreateBreakoutRoomsMsgBody; import org.bigbluebutton.core.connection.messages.breakoutrooms.EndAllBreakoutRoomsMsg; import org.bigbluebutton.core.connection.messages.breakoutrooms.EndAllBreakoutRoomsMsgBody; - import org.bigbluebutton.core.connection.messages.breakoutrooms.RequestBreakoutJoinURLReqMsg; import org.bigbluebutton.core.connection.messages.breakoutrooms.RequestBreakoutJoinURLReqBody; + import org.bigbluebutton.core.connection.messages.breakoutrooms.RequestBreakoutJoinURLReqMsg; import org.bigbluebutton.core.managers.ConnectionManager; import org.bigbluebutton.core.model.LiveMeeting; import org.bigbluebutton.core.model.users.GuestWaiting; @@ -609,6 +609,28 @@ package org.bigbluebutton.modules.users.services JSON.stringify(message) ); } + + public function updateWebcamsOnlyForModerator(webcamsOnlyForModerator:Boolean, userID : String):void { + var message:Object = { + header: {name: "UpdateWebcamsOnlyForModeratorCmdMsg", meetingId: UsersUtil.getInternalMeetingID(), + userId: UsersUtil.getMyUserID()}, + body: {webcamsOnlyForModerator: webcamsOnlyForModerator, setBy: userID} + }; + + var _nc:ConnectionManager = BBB.initConnectionManager(); + _nc.sendMessage2x( + function(result:String):void { // On successful result + LOGGER.debug(result); + }, + function(status:String):void { // status - On error occurred + var logData:Object = UsersUtil.initLogData(); + logData.tags = ["apps"]; + logData.message = "Error occured setting webcamsOnlyForModerator."; + LOGGER.info(JSON.stringify(logData)); + }, + JSON.stringify(message) + ); + } public function changeRole(userID:String, role:String):void { var message:Object = { @@ -631,6 +653,28 @@ package org.bigbluebutton.modules.users.services JSON.stringify(message) ); } + + public function queryForWebcamsOnlyForModerator():void { + var message:Object = { + header: {name: "GetWebcamsOnlyForModeratorReqMsg", meetingId: UsersUtil.getInternalMeetingID(), + userId: UsersUtil.getMyUserID()}, + body: {requestedBy: UsersUtil.getMyUserID()} + }; + + var _nc:ConnectionManager = BBB.initConnectionManager(); + _nc.sendMessage2x( + function(result:String):void { // On successful result + LOGGER.debug(result); + }, + function(status:String):void { // status - On error occurred + var logData:Object = UsersUtil.initLogData(); + logData.tags = ["apps"]; + logData.message = "Error occured query webcamsOnlyForModerator."; + LOGGER.info(JSON.stringify(logData)); + }, + JSON.stringify(message) + ); + } public function queryForGuestPolicy():void { LOGGER.debug("queryForGuestPolicy"); diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/users/views/MediaItemRenderer.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/users/views/MediaItemRenderer.mxml index 6f3b2d6f12ccd4e806faeb10c318f11e7173d4f3..92664324aa98eea894656d865162170d598cae8b 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/users/views/MediaItemRenderer.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/users/views/MediaItemRenderer.mxml @@ -30,6 +30,7 @@ <mate:Listener type="{UsersRollEvent.USER_ROLL_OVER}" method="onRollOver" /> <mate:Listener type="{UsersRollEvent.USER_ROLL_OUT}" method="onRollOut" /> <mate:Listener type="{ChangeMyRole.CHANGE_MY_ROLE_EVENT}" method="onChangeMyRole"/> + <mate:Listener type="{BBBEvent.CHANGE_WEBCAMS_ONLY_FOR_MODERATOR}" method="onChangeWebcamsOnlyForModerator"/> </fx:Declarations> <fx:Script> @@ -47,7 +48,9 @@ import org.bigbluebutton.core.UsersUtil; import org.bigbluebutton.core.events.LockControlEvent; import org.bigbluebutton.core.events.VoiceConfEvent; + import org.bigbluebutton.core.model.LiveMeeting; import org.bigbluebutton.core.vo.LockSettingsVO; + import org.bigbluebutton.main.events.BBBEvent; import org.bigbluebutton.main.model.users.events.ChangeMyRole; import org.bigbluebutton.main.model.users.events.ChangeRoleEvent; import org.bigbluebutton.main.model.users.events.KickUserEvent; @@ -67,7 +70,7 @@ private var lockRolled:Boolean = false; private var options:UsersOptions; - private var myMenu:Menu = null; + private var actionsMenu:Menu = null; private function onCreationComplete():void { options = Options.getOptions(UsersOptions) as UsersOptions; @@ -109,10 +112,16 @@ rolledOver = false; updateButtons(); // close the menu if it was opened - if (myMenu) myMenu.hide(); + closeActionsMenu(); refreshRole(e.role == Role.MODERATOR); } + + private function onChangeWebcamsOnlyForModerator(e:BBBEvent):void { + if (data != null) { + updateButtons(); + } + } private function refreshRole(amIModerator:Boolean):void { lockBtn.enabled = settingsBtn.enabled = moderator = amIModerator; @@ -177,6 +186,8 @@ muteImg.filters = null; var ls:LockSettingsVO = UsersUtil.getLockSettings(); + + var webcamsOnlyForModerator:Boolean = LiveMeeting.inst().meeting.webcamsOnlyForModerator; if (data != null) { var allowModeratorToSeeOwnSettings: Boolean = !data.me || (data.me && UsersUtil.amIModerator()); @@ -235,23 +246,34 @@ } if (data.hasStream) { - // if it's myself or if I'm watching all the streams from the given user, then don't activate the button - if (data.me || data.isViewingAllStreams()) { - webcamImg.visible = true; - webcamImg.includeInLayout = true; - webcamBtn.visible = false; - webcamBtn.includeInLayout = false; - } else { - webcamImg.visible = false; - webcamImg.includeInLayout = false; - webcamBtn.visible = true; - webcamBtn.includeInLayout = true; + if (!webcamsOnlyForModerator || UsersUtil.amIModerator()) { + // if it's myself or if I'm watching all the streams from the given user, then don't activate the button + if (data.me || data.isViewingAllStreams()) { + webcamImg.visible = webcamImg.includeInLayout = true; + webcamBtn.visible = webcamBtn.includeInLayout= false; + } else { + webcamImg.visible = webcamImg.includeInLayout = false; + webcamBtn.visible = webcamBtn.includeInLayout = true; + } + } + else { + if (data.me || data.isViewingAllStreams() && data.role == Role.MODERATOR) { + webcamImg.visible = webcamImg.includeInLayout = true; + webcamBtn.visible = webcamBtn.includeInLayout= false; + } else if (data.role != Role.MODERATOR) { + webcamImg.visible = false; + webcamImg.includeInLayout = true; + webcamBtn.visible = webcamBtn.includeInLayout = false; + } + else { + webcamImg.visible = webcamImg.includeInLayout = false; + webcamBtn.visible = webcamBtn.includeInLayout = true; + } } } else { webcamImg.visible = false; webcamImg.includeInLayout = true; - webcamBtn.visible = false; - webcamBtn.includeInLayout = false; + webcamBtn.visible = webcamBtn.includeInLayout = false; } if (muteImg.visible) { @@ -301,54 +323,56 @@ private function openSettings():void { if (data != null) { - var myMenuData:Array = []; - - if (!data.me) { - if (data.role != Role.VOICE_ONLY) { - if (data.role == Role.MODERATOR) { - myMenuData.push({ - label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.demoteUser',[data.name]), - icon: getStyle('iconDemote'), - callback: demoteUser - }); - } else if (data.authed) { - myMenuData.push({ - label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.promoteUser',[data.name]), - icon: getStyle('iconPromote'), - callback: promoteUser - }); - } - } - - if (options.allowKickUser) { - myMenuData.push({ - label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.kickUser',[data.name]), - icon: getStyle('iconEject'), - callback: kickUser + var actionsMenuData:Array = []; + + if (data.role != Role.VOICE_ONLY) { + if (data.role == Role.MODERATOR) { + actionsMenuData.push({ + label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.demoteUser',[data.name]), + icon: getStyle('iconDemote'), + callback: demoteUser + }); + } else if (data.authed){ + actionsMenuData.push({ + label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.promoteUser',[data.name]), + icon: getStyle('iconPromote'), + callback: promoteUser }); } } + if (options.allowKickUser) { + actionsMenuData.push({ + label: ResourceUtil.getInstance().getString('bbb.users.usersGrid.mediaItemRenderer.kickUser',[data.name]), + icon: getStyle('iconEject'), + callback: kickUser + }); + } + // make sure the previous menu is closed before opening a new one // This could be improved to include a flag that tells if the menu is open, // but it would require an extra listener for the MenuCloseEvent. - if (myMenu) myMenu.hide(); + closeActionsMenu(); - myMenu = Menu.createMenu(null, myMenuData, true); - myMenu.variableRowHeight = true; + actionsMenu = Menu.createMenu(null, actionsMenuData, true); + actionsMenu.variableRowHeight = true; var settingsBtnPos:Point = settingsBtn.localToGlobal(new Point(0,0)); - var myMenuPos:Point = new Point(); - myMenuPos.x = settingsBtnPos.x + settingsBtn.width; - myMenuPos.y = settingsBtnPos.y; + var actionsMenuPos:Point = new Point(); + actionsMenuPos.x = settingsBtnPos.x + settingsBtn.width; + actionsMenuPos.y = settingsBtnPos.y; - myMenu.addEventListener(MenuEvent.ITEM_CLICK, menuClickHandler); - myMenu.show(myMenuPos.x, myMenuPos.y); - myMenu.setFocus(); + actionsMenu.addEventListener(MenuEvent.ITEM_CLICK, menuClickHandler); + actionsMenu.show(actionsMenuPos.x, actionsMenuPos.y); + actionsMenu.setFocus(); } } + private function closeActionsMenu():void{ + if (actionsMenu) actionsMenu.hide(); + } + private function menuClickHandler(e:MenuEvent):void { e.item.callback(); } diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml index c681c1888a7734fd227045afd4242b194cf666c1..64205624f0667ad277d02cf89f3db4c3f58adca9 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMap.mxml @@ -40,108 +40,113 @@ with BigBlueButton; if not, see <http://www.gnu.org/licenses/>. import org.bigbluebutton.modules.videoconf.events.StopBroadcastEvent; import org.bigbluebutton.modules.videoconf.events.StopShareCameraRequestEvent; import org.bigbluebutton.modules.videoconf.events.VideoModuleStartEvent; - import org.bigbluebutton.modules.videoconf.events.VideoModuleStopEvent; + import org.bigbluebutton.modules.videoconf.events.VideoModuleStopEvent; ]]> </fx:Script> <fx:Declarations> - <EventHandlers type="{VideoModuleStartEvent.START}"> - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="start"/> - <EventAnnouncer generator="{ConnectAppEvent}" type="{ConnectAppEvent.CONNECT_VIDEO_APP}" /> - </EventHandlers> - - <EventHandlers type="{VideoModuleStopEvent.STOP}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="stopModule"/> - </EventHandlers> - - <EventHandlers type="{BBBEvent.CAMERA_SETTING}" > - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleCameraSetting" arguments="{event}"/> - </EventHandlers> - + <EventHandlers type="{VideoModuleStartEvent.START}"> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="start" arguments="{event.uri}"/> + <EventAnnouncer generator="{ConnectAppEvent}" type="{ConnectAppEvent.CONNECT_VIDEO_APP}" /> + </EventHandlers> + + <EventHandlers type="{VideoModuleStopEvent.STOP}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="stopModule"/> + </EventHandlers> + + <EventHandlers type="{BBBEvent.CAMERA_SETTING}" > + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleCameraSetting" arguments="{event}"/> + </EventHandlers> + <EventHandlers type="{BBBEvent.ERASE_CAMERA_SETTING}" > <MethodInvoker generator="{VideoEventMapDelegate}" method="handleEraseCameraSetting" arguments="{event}"/> </EventHandlers> - - <EventHandlers type="{ConnectAppEvent.CONNECT_VIDEO_APP}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="connectToVideoApp"/> - </EventHandlers> - + + <EventHandlers type="{ConnectAppEvent.CONNECT_VIDEO_APP}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="connectToVideoApp"/> + </EventHandlers> + <EventHandlers type="{ShareCameraRequestEvent.SHARE_CAMERA_REQUEST}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleShareCameraRequestEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{StopShareCameraRequestEvent.STOP_SHARE_CAMERA_REQUEST}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStopShareCameraRequestEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{StopShareCameraRequestEvent.STOP_SHARE_ALL_CAMERA_REQUEST}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStopAllShareCameraRequestEvent" arguments="{event}"/> - </EventHandlers> - + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleShareCameraRequestEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{StopShareCameraRequestEvent.STOP_SHARE_CAMERA_REQUEST}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStopShareCameraRequestEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{StopShareCameraRequestEvent.STOP_SHARE_ALL_CAMERA_REQUEST}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStopAllShareCameraRequestEvent" arguments="{event}"/> + </EventHandlers> + <EventHandlers type="{StartBroadcastEvent.START_BROADCAST}" > - <MethodInvoker generator="{VideoEventMapDelegate}" method="startPublishing" arguments="{event}" /> + <MethodInvoker generator="{VideoEventMapDelegate}" method="startPublishing" arguments="{event}" /> </EventHandlers> - + <EventHandlers type="{StopBroadcastEvent.STOP_BROADCASTING}" > - <MethodInvoker generator="{VideoEventMapDelegate}" method="stopPublishing" arguments="{event}" /> + <MethodInvoker generator="{VideoEventMapDelegate}" method="stopPublishing" arguments="{event}" /> </EventHandlers> - + <EventHandlers type="{StreamStartedEvent.STREAM_STARTED}"> - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="viewCamera" arguments="{[event.userID]}" /> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="viewCamera" arguments="{[event.userID]}" /> </EventHandlers> + <EventHandlers type="{BBBEvent.CHANGE_WEBCAMS_ONLY_FOR_MODERATOR}"> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="webcamsOnlyForModeratorChanged"/> + </EventHandlers> + <EventHandlers type="{StreamStoppedEvent.STREAM_STOPPED}"> <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStreamStoppedEvent" arguments="{event}" /> </EventHandlers> - + <EventHandlers type="{ViewCameraEvent.VIEW_CAMERA_EVENT}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="viewCamera" arguments="{[event.userID]}" /> - </EventHandlers> - - <EventHandlers type="{UserJoinedEvent.JOINED}"> - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleUserJoinedEvent" arguments="{event}" /> - </EventHandlers> - - <EventHandlers type="{UserLeftEvent.LEFT}"> - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleUserLeftEvent" arguments="{event}" /> - </EventHandlers> - + <MethodInvoker generator="{VideoEventMapDelegate}" method="viewCamera" arguments="{[event.userID]}" /> + </EventHandlers> + + <EventHandlers type="{UserJoinedEvent.JOINED}"> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleUserJoinedEvent" arguments="{event}" /> + </EventHandlers> + + <EventHandlers type="{UserLeftEvent.LEFT}"> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleUserLeftEvent" arguments="{event}" /> + </EventHandlers> + <EventHandlers type="{MadePresenterEvent.SWITCH_TO_PRESENTER_MODE}" > - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="switchToPresenter" arguments="{event}"/> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="switchToPresenter" arguments="{event}"/> </EventHandlers> - + <EventHandlers type="{MadePresenterEvent.SWITCH_TO_VIEWER_MODE}"> - <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> - <MethodInvoker generator="{VideoEventMapDelegate}" method="switchToViewer" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{ConnectedEvent.VIDEO_CONNECTED}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="connectedToVideoApp" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{ClosePublishWindowEvent.CLOSE_PUBLISH_WINDOW}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleClosePublishWindowEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{StoppedViewingWebcamEvent.STOPPED_VIEWING_WEBCAM}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStoppedViewingWebcamEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{BBBEvent.CAM_SETTINGS_CLOSED}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleCamSettingsClosedEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{BBBEvent.RECONNECT_DISCONNECTED_EVENT}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="handleReconnectDisconnectedEvent" arguments="{event}"/> - </EventHandlers> - - <EventHandlers type="{AddStaticComponent.ADD_STATIC_COMPONENT}"> - <MethodInvoker generator="{VideoEventMapDelegate}" method="addStaticComponent" arguments="{[event.component]}" /> - </EventHandlers> - <!-- ~~~~~~~~~~~~~~~~~~ INJECTORS ~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> + <ObjectBuilder generator="{VideoEventMapDelegate}" cache="global" constructorArguments="{scope.dispatcher}"/> + <MethodInvoker generator="{VideoEventMapDelegate}" method="switchToViewer" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{ConnectedEvent.VIDEO_CONNECTED}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="connectedToVideoApp" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{ClosePublishWindowEvent.CLOSE_PUBLISH_WINDOW}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleClosePublishWindowEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{StoppedViewingWebcamEvent.STOPPED_VIEWING_WEBCAM}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleStoppedViewingWebcamEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{BBBEvent.CAM_SETTINGS_CLOSED}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleCamSettingsClosedEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{BBBEvent.RECONNECT_DISCONNECTED_EVENT}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="handleReconnectDisconnectedEvent" arguments="{event}"/> + </EventHandlers> + + <EventHandlers type="{AddStaticComponent.ADD_STATIC_COMPONENT}"> + <MethodInvoker generator="{VideoEventMapDelegate}" method="addStaticComponent" arguments="{[event.component]}" /> + </EventHandlers> + <!-- ~~~~~~~~~~~~~~~~~~ INJECTORS ~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> </fx:Declarations> </EventMap> diff --git a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMapDelegate.as b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMapDelegate.as index 80e50ca148f7b95bf330d61bb12d6bcc95035fc5..f7e9c2b090031b5bbfb0783ab6f7f9bfd32b0b34 100755 --- a/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMapDelegate.as +++ b/bigbluebutton-client/src/org/bigbluebutton/modules/videoconf/maps/VideoEventMapDelegate.as @@ -30,6 +30,7 @@ package org.bigbluebutton.modules.videoconf.maps import org.as3commons.logging.api.ILogger; import org.as3commons.logging.api.getClassLogger; import org.bigbluebutton.common.Media; + import org.bigbluebutton.common.Role; import org.bigbluebutton.common.events.CloseWindowEvent; import org.bigbluebutton.common.events.OpenWindowEvent; import org.bigbluebutton.common.events.ToolbarButtonEvent; @@ -47,6 +48,7 @@ package org.bigbluebutton.modules.videoconf.maps import org.bigbluebutton.main.events.UserLeftEvent; import org.bigbluebutton.main.model.users.events.BroadcastStartedEvent; import org.bigbluebutton.main.model.users.events.BroadcastStoppedEvent; + import org.bigbluebutton.main.model.users.events.StreamStartedEvent; import org.bigbluebutton.main.model.users.events.StreamStoppedEvent; import org.bigbluebutton.modules.videoconf.business.VideoProxy; import org.bigbluebutton.modules.videoconf.events.ClosePublishWindowEvent; @@ -58,7 +60,7 @@ package org.bigbluebutton.modules.videoconf.maps import org.bigbluebutton.modules.videoconf.model.VideoConfOptions; import org.bigbluebutton.modules.videoconf.views.GraphicsWrapper; import org.bigbluebutton.modules.videoconf.views.ToolbarPopupButton; - import org.bigbluebutton.modules.videoconf.views.VideoDock; + import org.bigbluebutton.modules.videoconf.views.VideoDock; public class VideoEventMapDelegate { @@ -111,12 +113,35 @@ package org.bigbluebutton.modules.videoconf.maps public function addStaticComponent(component:IUIComponent):void { _graphics.addStaticComponent(component); } + + public function webcamsOnlyForModeratorChanged():void { + if (!UsersUtil.amIModerator()) { + var webcamsOnlyForModerator:Boolean = LiveMeeting.inst().meeting.webcamsOnlyForModerator; + for (var i:int = 0; i < UsersUtil.getUsers().length; i++) { + var user : User2x = User2x(UsersUtil.getUsers()[i]); + if (user.role != Role.MODERATOR) { + var streamNames:Array = LiveMeeting.inst().webcams.getStreamIdsForUser(user.intId); + if (webcamsOnlyForModerator && !UsersUtil.isMe(user.intId)) { + for (var j:int = 0; j < streamNames.length; j++) { + _dispatcher.dispatchEvent(new StreamStoppedEvent(user.intId, streamNames[j])); + } + } else { + _dispatcher.dispatchEvent(new StreamStartedEvent(user.intId, user.name, streamNames[j])); + } + } + } + } + } public function viewCamera(userID:String):void { LOGGER.debug("VideoEventMapDelegate:: [{0}] viewCamera. ready = [{1}]", [me, _ready]); if (!_ready) return; - if (! UsersUtil.isMe(userID)) { + var webcamsOnlyForModerator:Boolean = LiveMeeting.inst().meeting.webcamsOnlyForModerator; + var user : User2x = LiveMeeting.inst().users.getUser(userID); + if (! UsersUtil.isMe(userID) && + (!webcamsOnlyForModerator || (webcamsOnlyForModerator && (UsersUtil.amIModerator() || (user != null && user.role == Role.MODERATOR)))) + ) { openViewWindowFor(userID); } } diff --git a/bigbluebutton-html5/.meteor/packages b/bigbluebutton-html5/.meteor/packages index 4e0798450fd859f0aa48f292616b23ca22add1ba..ba2f9a3eaf3e33ce6b109584f62126ae2ddc181e 100644 --- a/bigbluebutton-html5/.meteor/packages +++ b/bigbluebutton-html5/.meteor/packages @@ -3,7 +3,6 @@ # 'meteor add' and 'meteor remove' will edit this file for you, # but you can also edit it by hand. -4commerce:env-settings standard-app-packages@1.0.9 arunoda:npm@0.2.6 amplify @@ -15,11 +14,11 @@ cfs:power-queue cfs:reactive-list cfs:micro-queue reactive-var@1.0.11 -ecmascript@0.8.1 +ecmascript@0.9.0 react-meteor-data -standard-minifier-css@1.3.4 -standard-minifier-js@2.1.1 +standard-minifier-css@1.3.5 +standard-minifier-js@2.2.0 nathantreid:css-modules -shell-server@0.2.4 -http@1.2.12 -dynamic-import@0.1.1 +shell-server@0.3.0 +http@1.3.0 +dynamic-import@0.2.0 diff --git a/bigbluebutton-html5/.meteor/release b/bigbluebutton-html5/.meteor/release index 1e7fc5b564ccbd425b5a7ee92916415e2d81e0e3..56a7a07fee76d4cf2cf564cfb7a2c134ea8f74cc 100644 --- a/bigbluebutton-html5/.meteor/release +++ b/bigbluebutton-html5/.meteor/release @@ -1 +1 @@ -METEOR@1.5.1 +METEOR@1.6.0.1 diff --git a/bigbluebutton-html5/.meteor/versions b/bigbluebutton-html5/.meteor/versions index bb0f238f9d25923dc74d55b2eb7b905bbb144f4e..67cecfd531c4b5594f28711bd8c8a3ca5378ec2f 100644 --- a/bigbluebutton-html5/.meteor/versions +++ b/bigbluebutton-html5/.meteor/versions @@ -1,16 +1,15 @@ -4commerce:env-settings@1.2.0 aldeed:simple-schema@1.5.3 -allow-deny@1.0.6 +allow-deny@1.1.0 amplify@1.0.0 arunoda:npm@0.2.6 autoupdate@1.3.12 -babel-compiler@6.19.4 -babel-runtime@1.0.1 +babel-compiler@6.24.7 +babel-runtime@1.1.1 base64@1.0.10 binary-heap@1.0.10 blaze@2.3.2 blaze-tools@1.0.10 -boilerplate-generator@1.1.1 +boilerplate-generator@1.3.1 caching-compiler@1.1.9 caching-html-compiler@1.1.2 callback-hook@1.0.10 @@ -21,74 +20,74 @@ cfs:reactive-list@0.0.9 cfs:reactive-property@0.0.4 check@1.2.5 clinical:nightwatch@2.0.1 -coffeescript@1.12.6_1 -ddp@1.3.0 -ddp-client@2.0.0 -ddp-common@1.2.9 -ddp-server@2.0.0 +coffeescript@1.12.7_3 +coffeescript-compiler@1.12.7_3 +ddp@1.4.0 +ddp-client@2.2.0 +ddp-common@1.3.0 +ddp-server@2.1.1 deps@1.0.12 diff-sequence@1.0.7 -dynamic-import@0.1.1 -ecmascript@0.8.2 -ecmascript-runtime@0.4.1 -ecmascript-runtime-client@0.4.3 -ecmascript-runtime-server@0.4.1 -ejson@1.0.13 +dynamic-import@0.2.1 +ecmascript@0.9.0 +ecmascript-runtime@0.5.0 +ecmascript-runtime-client@0.5.0 +ecmascript-runtime-server@0.5.0 +ejson@1.1.0 fastclick@1.0.13 francocatena:status@1.5.3 geojson-utils@1.0.10 html-tools@1.0.11 htmljs@1.0.11 -http@1.2.12 +http@1.3.0 id-map@1.0.9 jquery@1.11.10 launch-screen@1.1.1 livedata@1.0.18 -logging@1.1.17 +logging@1.1.19 mdg:validation-error@0.5.1 -meteor@1.7.0 +meteor@1.8.2 meteor-platform@1.2.6 -meteorblackbelt:underscore-deep@0.0.4 meteorspark:util@0.2.0 minifier-css@1.2.16 -minifier-js@2.1.1 -minimongo@1.2.1 +minifier-js@2.2.2 +minimongo@1.4.3 mizzao:timesync@0.5.0 mobile-status-bar@1.0.14 -modules@0.9.2 -modules-runtime@0.8.0 -mongo@1.1.22 +modules@0.11.2 +modules-runtime@0.9.1 +mongo@1.3.1 +mongo-dev-server@1.1.0 mongo-id@1.0.6 -nathantreid:css-modules@2.7.3 -npm-mongo@2.2.30 +nathantreid:css-modules@2.8.0 +npm-mongo@2.2.33 observe-sequence@1.0.16 ordered-dict@1.0.9 -promise@0.8.9 +promise@0.10.0 raix:eventemitter@0.1.3 random@1.0.10 react-meteor-data@0.2.15 -reactive-dict@1.1.9 +reactive-dict@1.2.0 reactive-var@1.0.11 reload@1.1.11 retry@1.0.9 routepolicy@1.0.12 session@1.1.7 -shell-server@0.2.4 +shell-server@0.3.1 spacebars@1.0.15 -spacebars-compiler@1.1.2 +spacebars-compiler@1.1.3 standard-app-packages@1.0.9 -standard-minifier-css@1.3.4 -standard-minifier-js@2.1.1 +standard-minifier-css@1.3.5 +standard-minifier-js@2.2.3 tap:i18n@1.8.2 templating@1.3.2 -templating-compiler@1.3.2 +templating-compiler@1.3.3 templating-runtime@1.3.2 templating-tools@1.1.2 tmeasday:check-npm-versions@0.3.1 tracker@1.1.3 -udondan:yml@3.2.2_1 ui@1.0.13 underscore@1.0.10 url@1.1.0 -webapp@1.3.17 +webapp@1.4.0 webapp-hashing@1.0.9 diff --git a/bigbluebutton-html5/client/compatibility/adapter.js b/bigbluebutton-html5/client/compatibility/adapter.js new file mode 100644 index 0000000000000000000000000000000000000000..fc1d8c8ad9bf5df2141e314a6fcc09f01b627db4 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/adapter.js @@ -0,0 +1,4450 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.adapter = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ +/* + * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var SDPUtils = require('sdp'); + +function writeMediaSection(transceiver, caps, type, stream, dtlsRole) { + var sdp = SDPUtils.writeRtpDescription(transceiver.kind, caps); + + // Map ICE parameters (ufrag, pwd) to SDP. + sdp += SDPUtils.writeIceParameters( + transceiver.iceGatherer.getLocalParameters()); + + // Map DTLS parameters to SDP. + sdp += SDPUtils.writeDtlsParameters( + transceiver.dtlsTransport.getLocalParameters(), + type === 'offer' ? 'actpass' : dtlsRole || 'active'); + + sdp += 'a=mid:' + transceiver.mid + '\r\n'; + + if (transceiver.direction) { + sdp += 'a=' + transceiver.direction + '\r\n'; + } else if (transceiver.rtpSender && transceiver.rtpReceiver) { + sdp += 'a=sendrecv\r\n'; + } else if (transceiver.rtpSender) { + sdp += 'a=sendonly\r\n'; + } else if (transceiver.rtpReceiver) { + sdp += 'a=recvonly\r\n'; + } else { + sdp += 'a=inactive\r\n'; + } + + if (transceiver.rtpSender) { + // spec. + var msid = 'msid:' + stream.id + ' ' + + transceiver.rtpSender.track.id + '\r\n'; + sdp += 'a=' + msid; + + // for Chrome. + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc + + ' ' + msid; + if (transceiver.sendEncodingParameters[0].rtx) { + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc + + ' ' + msid; + sdp += 'a=ssrc-group:FID ' + + transceiver.sendEncodingParameters[0].ssrc + ' ' + + transceiver.sendEncodingParameters[0].rtx.ssrc + + '\r\n'; + } + } + // FIXME: this should be written by writeRtpDescription. + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc + + ' cname:' + SDPUtils.localCName + '\r\n'; + if (transceiver.rtpSender && transceiver.sendEncodingParameters[0].rtx) { + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc + + ' cname:' + SDPUtils.localCName + '\r\n'; + } + return sdp; +} + +// Edge does not like +// 1) stun: filtered after 14393 unless ?transport=udp is present +// 2) turn: that does not have all of turn:host:port?transport=udp +// 3) turn: with ipv6 addresses +// 4) turn: occurring muliple times +function filterIceServers(iceServers, edgeVersion) { + var hasTurn = false; + iceServers = JSON.parse(JSON.stringify(iceServers)); + return iceServers.filter(function(server) { + if (server && (server.urls || server.url)) { + var urls = server.urls || server.url; + if (server.url && !server.urls) { + console.warn('RTCIceServer.url is deprecated! Use urls instead.'); + } + var isString = typeof urls === 'string'; + if (isString) { + urls = [urls]; + } + urls = urls.filter(function(url) { + var validTurn = url.indexOf('turn:') === 0 && + url.indexOf('transport=udp') !== -1 && + url.indexOf('turn:[') === -1 && + !hasTurn; + + if (validTurn) { + hasTurn = true; + return true; + } + return url.indexOf('stun:') === 0 && edgeVersion >= 14393 && + url.indexOf('?transport=udp') === -1; + }); + + delete server.url; + server.urls = isString ? urls[0] : urls; + return !!urls.length; + } + return false; + }); +} + +// Determines the intersection of local and remote capabilities. +function getCommonCapabilities(localCapabilities, remoteCapabilities) { + var commonCapabilities = { + codecs: [], + headerExtensions: [], + fecMechanisms: [] + }; + + var findCodecByPayloadType = function(pt, codecs) { + pt = parseInt(pt, 10); + for (var i = 0; i < codecs.length; i++) { + if (codecs[i].payloadType === pt || + codecs[i].preferredPayloadType === pt) { + return codecs[i]; + } + } + }; + + var rtxCapabilityMatches = function(lRtx, rRtx, lCodecs, rCodecs) { + var lCodec = findCodecByPayloadType(lRtx.parameters.apt, lCodecs); + var rCodec = findCodecByPayloadType(rRtx.parameters.apt, rCodecs); + return lCodec && rCodec && + lCodec.name.toLowerCase() === rCodec.name.toLowerCase(); + }; + + localCapabilities.codecs.forEach(function(lCodec) { + for (var i = 0; i < remoteCapabilities.codecs.length; i++) { + var rCodec = remoteCapabilities.codecs[i]; + if (lCodec.name.toLowerCase() === rCodec.name.toLowerCase() && + lCodec.clockRate === rCodec.clockRate) { + if (lCodec.name.toLowerCase() === 'rtx' && + lCodec.parameters && rCodec.parameters.apt) { + // for RTX we need to find the local rtx that has a apt + // which points to the same local codec as the remote one. + if (!rtxCapabilityMatches(lCodec, rCodec, + localCapabilities.codecs, remoteCapabilities.codecs)) { + continue; + } + } + rCodec = JSON.parse(JSON.stringify(rCodec)); // deepcopy + // number of channels is the highest common number of channels + rCodec.numChannels = Math.min(lCodec.numChannels, + rCodec.numChannels); + // push rCodec so we reply with offerer payload type + commonCapabilities.codecs.push(rCodec); + + // determine common feedback mechanisms + rCodec.rtcpFeedback = rCodec.rtcpFeedback.filter(function(fb) { + for (var j = 0; j < lCodec.rtcpFeedback.length; j++) { + if (lCodec.rtcpFeedback[j].type === fb.type && + lCodec.rtcpFeedback[j].parameter === fb.parameter) { + return true; + } + } + return false; + }); + // FIXME: also need to determine .parameters + // see https://github.com/openpeer/ortc/issues/569 + break; + } + } + }); + + localCapabilities.headerExtensions.forEach(function(lHeaderExtension) { + for (var i = 0; i < remoteCapabilities.headerExtensions.length; + i++) { + var rHeaderExtension = remoteCapabilities.headerExtensions[i]; + if (lHeaderExtension.uri === rHeaderExtension.uri) { + commonCapabilities.headerExtensions.push(rHeaderExtension); + break; + } + } + }); + + // FIXME: fecMechanisms + return commonCapabilities; +} + +// is action=setLocalDescription with type allowed in signalingState +function isActionAllowedInSignalingState(action, type, signalingState) { + return { + offer: { + setLocalDescription: ['stable', 'have-local-offer'], + setRemoteDescription: ['stable', 'have-remote-offer'] + }, + answer: { + setLocalDescription: ['have-remote-offer', 'have-local-pranswer'], + setRemoteDescription: ['have-local-offer', 'have-remote-pranswer'] + } + }[type][action].indexOf(signalingState) !== -1; +} + +function maybeAddCandidate(iceTransport, candidate) { + // Edge's internal representation adds some fields therefore + // not all fieldÑ• are taken into account. + var alreadyAdded = iceTransport.getRemoteCandidates() + .find(function(remoteCandidate) { + return candidate.foundation === remoteCandidate.foundation && + candidate.ip === remoteCandidate.ip && + candidate.port === remoteCandidate.port && + candidate.priority === remoteCandidate.priority && + candidate.protocol === remoteCandidate.protocol && + candidate.type === remoteCandidate.type; + }); + if (!alreadyAdded) { + iceTransport.addRemoteCandidate(candidate); + } + return !alreadyAdded; +} + +module.exports = function(window, edgeVersion) { + var RTCPeerConnection = function(config) { + var self = this; + + var _eventTarget = document.createDocumentFragment(); + ['addEventListener', 'removeEventListener', 'dispatchEvent'] + .forEach(function(method) { + self[method] = _eventTarget[method].bind(_eventTarget); + }); + + this.onicecandidate = null; + this.onaddstream = null; + this.ontrack = null; + this.onremovestream = null; + this.onsignalingstatechange = null; + this.oniceconnectionstatechange = null; + this.onicegatheringstatechange = null; + this.onnegotiationneeded = null; + this.ondatachannel = null; + this.canTrickleIceCandidates = null; + + this.needNegotiation = false; + + this.localStreams = []; + this.remoteStreams = []; + + this.localDescription = null; + this.remoteDescription = null; + + this.signalingState = 'stable'; + this.iceConnectionState = 'new'; + this.iceGatheringState = 'new'; + + config = JSON.parse(JSON.stringify(config || {})); + + this.usingBundle = config.bundlePolicy === 'max-bundle'; + if (config.rtcpMuxPolicy === 'negotiate') { + var e = new Error('rtcpMuxPolicy \'negotiate\' is not supported'); + e.name = 'NotSupportedError'; + throw(e); + } else if (!config.rtcpMuxPolicy) { + config.rtcpMuxPolicy = 'require'; + } + + switch (config.iceTransportPolicy) { + case 'all': + case 'relay': + break; + default: + config.iceTransportPolicy = 'all'; + break; + } + + switch (config.bundlePolicy) { + case 'balanced': + case 'max-compat': + case 'max-bundle': + break; + default: + config.bundlePolicy = 'balanced'; + break; + } + + config.iceServers = filterIceServers(config.iceServers || [], edgeVersion); + + this._iceGatherers = []; + if (config.iceCandidatePoolSize) { + for (var i = config.iceCandidatePoolSize; i > 0; i--) { + this._iceGatherers = new window.RTCIceGatherer({ + iceServers: config.iceServers, + gatherPolicy: config.iceTransportPolicy + }); + } + } else { + config.iceCandidatePoolSize = 0; + } + + this._config = config; + + // per-track iceGathers, iceTransports, dtlsTransports, rtpSenders, ... + // everything that is needed to describe a SDP m-line. + this.transceivers = []; + + this._sdpSessionId = SDPUtils.generateSessionId(); + this._sdpSessionVersion = 0; + + this._dtlsRole = undefined; // role for a=setup to use in answers. + }; + + RTCPeerConnection.prototype._emitGatheringStateChange = function() { + var event = new Event('icegatheringstatechange'); + this.dispatchEvent(event); + if (typeof this.onicegatheringstatechange === 'function') { + this.onicegatheringstatechange(event); + } + }; + + RTCPeerConnection.prototype.getConfiguration = function() { + return this._config; + }; + + RTCPeerConnection.prototype.getLocalStreams = function() { + return this.localStreams; + }; + + RTCPeerConnection.prototype.getRemoteStreams = function() { + return this.remoteStreams; + }; + + // internal helper to create a transceiver object. + // (whih is not yet the same as the WebRTC 1.0 transceiver) + RTCPeerConnection.prototype._createTransceiver = function(kind) { + var hasBundleTransport = this.transceivers.length > 0; + var transceiver = { + track: null, + iceGatherer: null, + iceTransport: null, + dtlsTransport: null, + localCapabilities: null, + remoteCapabilities: null, + rtpSender: null, + rtpReceiver: null, + kind: kind, + mid: null, + sendEncodingParameters: null, + recvEncodingParameters: null, + stream: null, + wantReceive: true + }; + if (this.usingBundle && hasBundleTransport) { + transceiver.iceTransport = this.transceivers[0].iceTransport; + transceiver.dtlsTransport = this.transceivers[0].dtlsTransport; + } else { + var transports = this._createIceAndDtlsTransports(); + transceiver.iceTransport = transports.iceTransport; + transceiver.dtlsTransport = transports.dtlsTransport; + } + this.transceivers.push(transceiver); + return transceiver; + }; + + RTCPeerConnection.prototype.addTrack = function(track, stream) { + var transceiver; + for (var i = 0; i < this.transceivers.length; i++) { + if (!this.transceivers[i].track && + this.transceivers[i].kind === track.kind) { + transceiver = this.transceivers[i]; + } + } + if (!transceiver) { + transceiver = this._createTransceiver(track.kind); + } + + this._maybeFireNegotiationNeeded(); + + if (this.localStreams.indexOf(stream) === -1) { + this.localStreams.push(stream); + } + + transceiver.track = track; + transceiver.stream = stream; + transceiver.rtpSender = new window.RTCRtpSender(track, + transceiver.dtlsTransport); + return transceiver.rtpSender; + }; + + RTCPeerConnection.prototype.addStream = function(stream) { + var self = this; + if (edgeVersion >= 15025) { + stream.getTracks().forEach(function(track) { + self.addTrack(track, stream); + }); + } else { + // Clone is necessary for local demos mostly, attaching directly + // to two different senders does not work (build 10547). + // Fixed in 15025 (or earlier) + var clonedStream = stream.clone(); + stream.getTracks().forEach(function(track, idx) { + var clonedTrack = clonedStream.getTracks()[idx]; + track.addEventListener('enabled', function(event) { + clonedTrack.enabled = event.enabled; + }); + }); + clonedStream.getTracks().forEach(function(track) { + self.addTrack(track, clonedStream); + }); + } + }; + + RTCPeerConnection.prototype.removeStream = function(stream) { + var idx = this.localStreams.indexOf(stream); + if (idx > -1) { + this.localStreams.splice(idx, 1); + this._maybeFireNegotiationNeeded(); + } + }; + + RTCPeerConnection.prototype.getSenders = function() { + return this.transceivers.filter(function(transceiver) { + return !!transceiver.rtpSender; + }) + .map(function(transceiver) { + return transceiver.rtpSender; + }); + }; + + RTCPeerConnection.prototype.getReceivers = function() { + return this.transceivers.filter(function(transceiver) { + return !!transceiver.rtpReceiver; + }) + .map(function(transceiver) { + return transceiver.rtpReceiver; + }); + }; + + + RTCPeerConnection.prototype._createIceGatherer = function(sdpMLineIndex, + usingBundle) { + var self = this; + if (usingBundle && sdpMLineIndex > 0) { + return this.transceivers[0].iceGatherer; + } else if (this._iceGatherers.length) { + return this._iceGatherers.shift(); + } + var iceGatherer = new window.RTCIceGatherer({ + iceServers: this._config.iceServers, + gatherPolicy: this._config.iceTransportPolicy + }); + Object.defineProperty(iceGatherer, 'state', + {value: 'new', writable: true} + ); + + this.transceivers[sdpMLineIndex].candidates = []; + this.transceivers[sdpMLineIndex].bufferCandidates = function(event) { + var end = !event.candidate || Object.keys(event.candidate).length === 0; + // polyfill since RTCIceGatherer.state is not implemented in + // Edge 10547 yet. + iceGatherer.state = end ? 'completed' : 'gathering'; + if (self.transceivers[sdpMLineIndex].candidates !== null) { + self.transceivers[sdpMLineIndex].candidates.push(event.candidate); + } + }; + iceGatherer.addEventListener('localcandidate', + this.transceivers[sdpMLineIndex].bufferCandidates); + return iceGatherer; + }; + + // start gathering from an RTCIceGatherer. + RTCPeerConnection.prototype._gather = function(mid, sdpMLineIndex) { + var self = this; + var iceGatherer = this.transceivers[sdpMLineIndex].iceGatherer; + if (iceGatherer.onlocalcandidate) { + return; + } + var candidates = this.transceivers[sdpMLineIndex].candidates; + this.transceivers[sdpMLineIndex].candidates = null; + iceGatherer.removeEventListener('localcandidate', + this.transceivers[sdpMLineIndex].bufferCandidates); + iceGatherer.onlocalcandidate = function(evt) { + if (self.usingBundle && sdpMLineIndex > 0) { + // if we know that we use bundle we can drop candidates with + // Ñ•dpMLineIndex > 0. If we don't do this then our state gets + // confused since we dispose the extra ice gatherer. + return; + } + var event = new Event('icecandidate'); + event.candidate = {sdpMid: mid, sdpMLineIndex: sdpMLineIndex}; + + var cand = evt.candidate; + // Edge emits an empty object for RTCIceCandidateComplete‥ + var end = !cand || Object.keys(cand).length === 0; + if (end) { + // polyfill since RTCIceGatherer.state is not implemented in + // Edge 10547 yet. + if (iceGatherer.state === 'new' || iceGatherer.state === 'gathering') { + iceGatherer.state = 'completed'; + } + } else { + if (iceGatherer.state === 'new') { + iceGatherer.state = 'gathering'; + } + // RTCIceCandidate doesn't have a component, needs to be added + cand.component = 1; + event.candidate.candidate = SDPUtils.writeCandidate(cand); + } + + // update local description. + var sections = SDPUtils.splitSections(self.localDescription.sdp); + if (!end) { + sections[event.candidate.sdpMLineIndex + 1] += + 'a=' + event.candidate.candidate + '\r\n'; + } else { + sections[event.candidate.sdpMLineIndex + 1] += + 'a=end-of-candidates\r\n'; + } + self.localDescription.sdp = sections.join(''); + var complete = self.transceivers.every(function(transceiver) { + return transceiver.iceGatherer && + transceiver.iceGatherer.state === 'completed'; + }); + + if (self.iceGatheringState !== 'gathering') { + self.iceGatheringState = 'gathering'; + self._emitGatheringStateChange(); + } + + // Emit candidate. Also emit null candidate when all gatherers are + // complete. + if (!end) { + self.dispatchEvent(event); + if (typeof self.onicecandidate === 'function') { + self.onicecandidate(event); + } + } + if (complete) { + self.dispatchEvent(new Event('icecandidate')); + if (typeof self.onicecandidate === 'function') { + self.onicecandidate(new Event('icecandidate')); + } + self.iceGatheringState = 'complete'; + self._emitGatheringStateChange(); + } + }; + + // emit already gathered candidates. + window.setTimeout(function() { + candidates.forEach(function(candidate) { + var e = new Event('RTCIceGatherEvent'); + e.candidate = candidate; + iceGatherer.onlocalcandidate(e); + }); + }, 0); + }; + + // Create ICE transport and DTLS transport. + RTCPeerConnection.prototype._createIceAndDtlsTransports = function() { + var self = this; + var iceTransport = new window.RTCIceTransport(null); + iceTransport.onicestatechange = function() { + self._updateConnectionState(); + }; + + var dtlsTransport = new window.RTCDtlsTransport(iceTransport); + dtlsTransport.ondtlsstatechange = function() { + self._updateConnectionState(); + }; + dtlsTransport.onerror = function() { + // onerror does not set state to failed by itself. + Object.defineProperty(dtlsTransport, 'state', + {value: 'failed', writable: true}); + self._updateConnectionState(); + }; + + return { + iceTransport: iceTransport, + dtlsTransport: dtlsTransport + }; + }; + + // Destroy ICE gatherer, ICE transport and DTLS transport. + // Without triggering the callbacks. + RTCPeerConnection.prototype._disposeIceAndDtlsTransports = function( + sdpMLineIndex) { + var iceGatherer = this.transceivers[sdpMLineIndex].iceGatherer; + if (iceGatherer) { + delete iceGatherer.onlocalcandidate; + delete this.transceivers[sdpMLineIndex].iceGatherer; + } + var iceTransport = this.transceivers[sdpMLineIndex].iceTransport; + if (iceTransport) { + delete iceTransport.onicestatechange; + delete this.transceivers[sdpMLineIndex].iceTransport; + } + var dtlsTransport = this.transceivers[sdpMLineIndex].dtlsTransport; + if (dtlsTransport) { + delete dtlsTransport.ondtlsstatechange; + delete dtlsTransport.onerror; + delete this.transceivers[sdpMLineIndex].dtlsTransport; + } + }; + + // Start the RTP Sender and Receiver for a transceiver. + RTCPeerConnection.prototype._transceive = function(transceiver, + send, recv) { + var params = getCommonCapabilities(transceiver.localCapabilities, + transceiver.remoteCapabilities); + if (send && transceiver.rtpSender) { + params.encodings = transceiver.sendEncodingParameters; + params.rtcp = { + cname: SDPUtils.localCName, + compound: transceiver.rtcpParameters.compound + }; + if (transceiver.recvEncodingParameters.length) { + params.rtcp.ssrc = transceiver.recvEncodingParameters[0].ssrc; + } + transceiver.rtpSender.send(params); + } + if (recv && transceiver.rtpReceiver && params.codecs.length > 0) { + // remove RTX field in Edge 14942 + if (transceiver.kind === 'video' + && transceiver.recvEncodingParameters + && edgeVersion < 15019) { + transceiver.recvEncodingParameters.forEach(function(p) { + delete p.rtx; + }); + } + params.encodings = transceiver.recvEncodingParameters; + params.rtcp = { + cname: transceiver.rtcpParameters.cname, + compound: transceiver.rtcpParameters.compound + }; + if (transceiver.sendEncodingParameters.length) { + params.rtcp.ssrc = transceiver.sendEncodingParameters[0].ssrc; + } + transceiver.rtpReceiver.receive(params); + } + }; + + RTCPeerConnection.prototype.setLocalDescription = function(description) { + var self = this; + var args = arguments; + + if (!isActionAllowedInSignalingState('setLocalDescription', + description.type, this.signalingState)) { + return new Promise(function(resolve, reject) { + var e = new Error('Can not set local ' + description.type + + ' in state ' + self.signalingState); + e.name = 'InvalidStateError'; + if (args.length > 2 && typeof args[2] === 'function') { + args[2].apply(null, [e]); + } + reject(e); + }); + } + + var sections; + var sessionpart; + if (description.type === 'offer') { + // VERY limited support for SDP munging. Limited to: + // * changing the order of codecs + sections = SDPUtils.splitSections(description.sdp); + sessionpart = sections.shift(); + sections.forEach(function(mediaSection, sdpMLineIndex) { + var caps = SDPUtils.parseRtpParameters(mediaSection); + self.transceivers[sdpMLineIndex].localCapabilities = caps; + }); + + this.transceivers.forEach(function(transceiver, sdpMLineIndex) { + self._gather(transceiver.mid, sdpMLineIndex); + }); + } else if (description.type === 'answer') { + sections = SDPUtils.splitSections(self.remoteDescription.sdp); + sessionpart = sections.shift(); + var isIceLite = SDPUtils.matchPrefix(sessionpart, + 'a=ice-lite').length > 0; + sections.forEach(function(mediaSection, sdpMLineIndex) { + var transceiver = self.transceivers[sdpMLineIndex]; + var iceGatherer = transceiver.iceGatherer; + var iceTransport = transceiver.iceTransport; + var dtlsTransport = transceiver.dtlsTransport; + var localCapabilities = transceiver.localCapabilities; + var remoteCapabilities = transceiver.remoteCapabilities; + + // treat bundle-only as not-rejected. + var rejected = SDPUtils.isRejected(mediaSection) && + !SDPUtils.matchPrefix(mediaSection, 'a=bundle-only').length === 1; + + if (!rejected && !transceiver.isDatachannel) { + var remoteIceParameters = SDPUtils.getIceParameters( + mediaSection, sessionpart); + var remoteDtlsParameters = SDPUtils.getDtlsParameters( + mediaSection, sessionpart); + if (isIceLite) { + remoteDtlsParameters.role = 'server'; + } + + if (!self.usingBundle || sdpMLineIndex === 0) { + self._gather(transceiver.mid, sdpMLineIndex); + if (iceTransport.state === 'new') { + iceTransport.start(iceGatherer, remoteIceParameters, + isIceLite ? 'controlling' : 'controlled'); + } + if (dtlsTransport.state === 'new') { + dtlsTransport.start(remoteDtlsParameters); + } + } + + // Calculate intersection of capabilities. + var params = getCommonCapabilities(localCapabilities, + remoteCapabilities); + + // Start the RTCRtpSender. The RTCRtpReceiver for this + // transceiver has already been started in setRemoteDescription. + self._transceive(transceiver, + params.codecs.length > 0, + false); + } + }); + } + + this.localDescription = { + type: description.type, + sdp: description.sdp + }; + switch (description.type) { + case 'offer': + this._updateSignalingState('have-local-offer'); + break; + case 'answer': + this._updateSignalingState('stable'); + break; + default: + throw new TypeError('unsupported type "' + description.type + + '"'); + } + + // If a success callback was provided, emit ICE candidates after it + // has been executed. Otherwise, emit callback after the Promise is + // resolved. + var cb = arguments.length > 1 && typeof arguments[1] === 'function' && + arguments[1]; + return new Promise(function(resolve) { + if (cb) { + cb.apply(null); + } + resolve(); + }); + }; + + RTCPeerConnection.prototype.setRemoteDescription = function(description) { + var self = this; + var args = arguments; + + if (!isActionAllowedInSignalingState('setRemoteDescription', + description.type, this.signalingState)) { + return new Promise(function(resolve, reject) { + var e = new Error('Can not set remote ' + description.type + + ' in state ' + self.signalingState); + e.name = 'InvalidStateError'; + if (args.length > 2 && typeof args[2] === 'function') { + args[2].apply(null, [e]); + } + reject(e); + }); + } + + var streams = {}; + this.remoteStreams.forEach(function(stream) { + streams[stream.id] = stream; + }); + var receiverList = []; + var sections = SDPUtils.splitSections(description.sdp); + var sessionpart = sections.shift(); + var isIceLite = SDPUtils.matchPrefix(sessionpart, + 'a=ice-lite').length > 0; + var usingBundle = SDPUtils.matchPrefix(sessionpart, + 'a=group:BUNDLE ').length > 0; + this.usingBundle = usingBundle; + var iceOptions = SDPUtils.matchPrefix(sessionpart, + 'a=ice-options:')[0]; + if (iceOptions) { + this.canTrickleIceCandidates = iceOptions.substr(14).split(' ') + .indexOf('trickle') >= 0; + } else { + this.canTrickleIceCandidates = false; + } + + sections.forEach(function(mediaSection, sdpMLineIndex) { + var lines = SDPUtils.splitLines(mediaSection); + var kind = SDPUtils.getKind(mediaSection); + // treat bundle-only as not-rejected. + var rejected = SDPUtils.isRejected(mediaSection) && + !SDPUtils.matchPrefix(mediaSection, 'a=bundle-only').length === 1; + var protocol = lines[0].substr(2).split(' ')[2]; + + var direction = SDPUtils.getDirection(mediaSection, sessionpart); + var remoteMsid = SDPUtils.parseMsid(mediaSection); + + var mid = SDPUtils.getMid(mediaSection) || SDPUtils.generateIdentifier(); + + // Reject datachannels which are not implemented yet. + if (kind === 'application' && protocol === 'DTLS/SCTP') { + self.transceivers[sdpMLineIndex] = { + mid: mid, + isDatachannel: true + }; + return; + } + + var transceiver; + var iceGatherer; + var iceTransport; + var dtlsTransport; + var rtpReceiver; + var sendEncodingParameters; + var recvEncodingParameters; + var localCapabilities; + + var track; + // FIXME: ensure the mediaSection has rtcp-mux set. + var remoteCapabilities = SDPUtils.parseRtpParameters(mediaSection); + var remoteIceParameters; + var remoteDtlsParameters; + if (!rejected) { + remoteIceParameters = SDPUtils.getIceParameters(mediaSection, + sessionpart); + remoteDtlsParameters = SDPUtils.getDtlsParameters(mediaSection, + sessionpart); + remoteDtlsParameters.role = 'client'; + } + recvEncodingParameters = + SDPUtils.parseRtpEncodingParameters(mediaSection); + + var rtcpParameters = SDPUtils.parseRtcpParameters(mediaSection); + + var isComplete = SDPUtils.matchPrefix(mediaSection, + 'a=end-of-candidates', sessionpart).length > 0; + var cands = SDPUtils.matchPrefix(mediaSection, 'a=candidate:') + .map(function(cand) { + return SDPUtils.parseCandidate(cand); + }) + .filter(function(cand) { + return cand.component === 1; + }); + + // Check if we can use BUNDLE and dispose transports. + if ((description.type === 'offer' || description.type === 'answer') && + !rejected && usingBundle && sdpMLineIndex > 0 && + self.transceivers[sdpMLineIndex]) { + self._disposeIceAndDtlsTransports(sdpMLineIndex); + self.transceivers[sdpMLineIndex].iceGatherer = + self.transceivers[0].iceGatherer; + self.transceivers[sdpMLineIndex].iceTransport = + self.transceivers[0].iceTransport; + self.transceivers[sdpMLineIndex].dtlsTransport = + self.transceivers[0].dtlsTransport; + if (self.transceivers[sdpMLineIndex].rtpSender) { + self.transceivers[sdpMLineIndex].rtpSender.setTransport( + self.transceivers[0].dtlsTransport); + } + if (self.transceivers[sdpMLineIndex].rtpReceiver) { + self.transceivers[sdpMLineIndex].rtpReceiver.setTransport( + self.transceivers[0].dtlsTransport); + } + } + if (description.type === 'offer' && !rejected) { + transceiver = self.transceivers[sdpMLineIndex] || + self._createTransceiver(kind); + transceiver.mid = mid; + + if (!transceiver.iceGatherer) { + transceiver.iceGatherer = self._createIceGatherer(sdpMLineIndex, + usingBundle); + } + + if (cands.length && transceiver.iceTransport.state === 'new') { + if (isComplete && (!usingBundle || sdpMLineIndex === 0)) { + transceiver.iceTransport.setRemoteCandidates(cands); + } else { + cands.forEach(function(candidate) { + maybeAddCandidate(transceiver.iceTransport, candidate); + }); + } + } + + localCapabilities = window.RTCRtpReceiver.getCapabilities(kind); + + // filter RTX until additional stuff needed for RTX is implemented + // in adapter.js + if (edgeVersion < 15019) { + localCapabilities.codecs = localCapabilities.codecs.filter( + function(codec) { + return codec.name !== 'rtx'; + }); + } + + sendEncodingParameters = transceiver.sendEncodingParameters || [{ + ssrc: (2 * sdpMLineIndex + 2) * 1001 + }]; + + var isNewTrack = false; + if (direction === 'sendrecv' || direction === 'sendonly') { + isNewTrack = !transceiver.rtpReceiver; + rtpReceiver = transceiver.rtpReceiver || + new window.RTCRtpReceiver(transceiver.dtlsTransport, kind); + + if (isNewTrack) { + var stream; + track = rtpReceiver.track; + // FIXME: does not work with Plan B. + if (remoteMsid) { + if (!streams[remoteMsid.stream]) { + streams[remoteMsid.stream] = new window.MediaStream(); + Object.defineProperty(streams[remoteMsid.stream], 'id', { + get: function() { + return remoteMsid.stream; + } + }); + } + Object.defineProperty(track, 'id', { + get: function() { + return remoteMsid.track; + } + }); + stream = streams[remoteMsid.stream]; + } else { + if (!streams.default) { + streams.default = new window.MediaStream(); + } + stream = streams.default; + } + stream.addTrack(track); + receiverList.push([track, rtpReceiver, stream]); + } + } + + transceiver.localCapabilities = localCapabilities; + transceiver.remoteCapabilities = remoteCapabilities; + transceiver.rtpReceiver = rtpReceiver; + transceiver.rtcpParameters = rtcpParameters; + transceiver.sendEncodingParameters = sendEncodingParameters; + transceiver.recvEncodingParameters = recvEncodingParameters; + + // Start the RTCRtpReceiver now. The RTPSender is started in + // setLocalDescription. + self._transceive(self.transceivers[sdpMLineIndex], + false, + isNewTrack); + } else if (description.type === 'answer' && !rejected) { + transceiver = self.transceivers[sdpMLineIndex]; + iceGatherer = transceiver.iceGatherer; + iceTransport = transceiver.iceTransport; + dtlsTransport = transceiver.dtlsTransport; + rtpReceiver = transceiver.rtpReceiver; + sendEncodingParameters = transceiver.sendEncodingParameters; + localCapabilities = transceiver.localCapabilities; + + self.transceivers[sdpMLineIndex].recvEncodingParameters = + recvEncodingParameters; + self.transceivers[sdpMLineIndex].remoteCapabilities = + remoteCapabilities; + self.transceivers[sdpMLineIndex].rtcpParameters = rtcpParameters; + + if (cands.length && iceTransport.state === 'new') { + if ((isIceLite || isComplete) && + (!usingBundle || sdpMLineIndex === 0)) { + iceTransport.setRemoteCandidates(cands); + } else { + cands.forEach(function(candidate) { + maybeAddCandidate(transceiver.iceTransport, candidate); + }); + } + } + + if (!usingBundle || sdpMLineIndex === 0) { + if (iceTransport.state === 'new') { + iceTransport.start(iceGatherer, remoteIceParameters, + 'controlling'); + } + if (dtlsTransport.state === 'new') { + dtlsTransport.start(remoteDtlsParameters); + } + } + + self._transceive(transceiver, + direction === 'sendrecv' || direction === 'recvonly', + direction === 'sendrecv' || direction === 'sendonly'); + + if (rtpReceiver && + (direction === 'sendrecv' || direction === 'sendonly')) { + track = rtpReceiver.track; + if (remoteMsid) { + if (!streams[remoteMsid.stream]) { + streams[remoteMsid.stream] = new window.MediaStream(); + } + streams[remoteMsid.stream].addTrack(track); + receiverList.push([track, rtpReceiver, streams[remoteMsid.stream]]); + } else { + if (!streams.default) { + streams.default = new window.MediaStream(); + } + streams.default.addTrack(track); + receiverList.push([track, rtpReceiver, streams.default]); + } + } else { + // FIXME: actually the receiver should be created later. + delete transceiver.rtpReceiver; + } + } + }); + + if (this._dtlsRole === undefined) { + this._dtlsRole = description.type === 'offer' ? 'active' : 'passive'; + } + + this.remoteDescription = { + type: description.type, + sdp: description.sdp + }; + switch (description.type) { + case 'offer': + this._updateSignalingState('have-remote-offer'); + break; + case 'answer': + this._updateSignalingState('stable'); + break; + default: + throw new TypeError('unsupported type "' + description.type + + '"'); + } + Object.keys(streams).forEach(function(sid) { + var stream = streams[sid]; + if (stream.getTracks().length) { + if (self.remoteStreams.indexOf(stream) === -1) { + self.remoteStreams.push(stream); + var event = new Event('addstream'); + event.stream = stream; + window.setTimeout(function() { + self.dispatchEvent(event); + if (typeof self.onaddstream === 'function') { + self.onaddstream(event); + } + }); + } + + receiverList.forEach(function(item) { + var track = item[0]; + var receiver = item[1]; + if (stream.id !== item[2].id) { + return; + } + var trackEvent = new Event('track'); + trackEvent.track = track; + trackEvent.receiver = receiver; + trackEvent.transceiver = {receiver: receiver}; + trackEvent.streams = [stream]; + window.setTimeout(function() { + self.dispatchEvent(trackEvent); + if (typeof self.ontrack === 'function') { + self.ontrack(trackEvent); + } + }); + }); + } + }); + + // check whether addIceCandidate({}) was called within four seconds after + // setRemoteDescription. + window.setTimeout(function() { + if (!(self && self.transceivers)) { + return; + } + self.transceivers.forEach(function(transceiver) { + if (transceiver.iceTransport && + transceiver.iceTransport.state === 'new' && + transceiver.iceTransport.getRemoteCandidates().length > 0) { + console.warn('Timeout for addRemoteCandidate. Consider sending ' + + 'an end-of-candidates notification'); + transceiver.iceTransport.addRemoteCandidate({}); + } + }); + }, 4000); + + return new Promise(function(resolve) { + if (args.length > 1 && typeof args[1] === 'function') { + args[1].apply(null); + } + resolve(); + }); + }; + + RTCPeerConnection.prototype.close = function() { + this.transceivers.forEach(function(transceiver) { + /* not yet + if (transceiver.iceGatherer) { + transceiver.iceGatherer.close(); + } + */ + if (transceiver.iceTransport) { + transceiver.iceTransport.stop(); + } + if (transceiver.dtlsTransport) { + transceiver.dtlsTransport.stop(); + } + if (transceiver.rtpSender) { + transceiver.rtpSender.stop(); + } + if (transceiver.rtpReceiver) { + transceiver.rtpReceiver.stop(); + } + }); + // FIXME: clean up tracks, local streams, remote streams, etc + this._updateSignalingState('closed'); + }; + + // Update the signaling state. + RTCPeerConnection.prototype._updateSignalingState = function(newState) { + this.signalingState = newState; + var event = new Event('signalingstatechange'); + this.dispatchEvent(event); + if (typeof this.onsignalingstatechange === 'function') { + this.onsignalingstatechange(event); + } + }; + + // Determine whether to fire the negotiationneeded event. + RTCPeerConnection.prototype._maybeFireNegotiationNeeded = function() { + var self = this; + if (this.signalingState !== 'stable' || this.needNegotiation === true) { + return; + } + this.needNegotiation = true; + window.setTimeout(function() { + if (self.needNegotiation === false) { + return; + } + self.needNegotiation = false; + var event = new Event('negotiationneeded'); + self.dispatchEvent(event); + if (typeof self.onnegotiationneeded === 'function') { + self.onnegotiationneeded(event); + } + }, 0); + }; + + // Update the connection state. + RTCPeerConnection.prototype._updateConnectionState = function() { + var newState; + var states = { + 'new': 0, + closed: 0, + connecting: 0, + checking: 0, + connected: 0, + completed: 0, + disconnected: 0, + failed: 0 + }; + this.transceivers.forEach(function(transceiver) { + states[transceiver.iceTransport.state]++; + states[transceiver.dtlsTransport.state]++; + }); + // ICETransport.completed and connected are the same for this purpose. + states.connected += states.completed; + + newState = 'new'; + if (states.failed > 0) { + newState = 'failed'; + } else if (states.connecting > 0 || states.checking > 0) { + newState = 'connecting'; + } else if (states.disconnected > 0) { + newState = 'disconnected'; + } else if (states.new > 0) { + newState = 'new'; + } else if (states.connected > 0 || states.completed > 0) { + newState = 'connected'; + } + + if (newState !== this.iceConnectionState) { + this.iceConnectionState = newState; + var event = new Event('iceconnectionstatechange'); + this.dispatchEvent(event); + if (typeof this.oniceconnectionstatechange === 'function') { + this.oniceconnectionstatechange(event); + } + } + }; + + RTCPeerConnection.prototype.createOffer = function() { + var self = this; + var args = arguments; + + var offerOptions; + if (arguments.length === 1 && typeof arguments[0] !== 'function') { + offerOptions = arguments[0]; + } else if (arguments.length === 3) { + offerOptions = arguments[2]; + } + + var numAudioTracks = this.transceivers.filter(function(t) { + return t.kind === 'audio'; + }).length; + var numVideoTracks = this.transceivers.filter(function(t) { + return t.kind === 'video'; + }).length; + + // Determine number of audio and video tracks we need to send/recv. + if (offerOptions) { + // Reject Chrome legacy constraints. + if (offerOptions.mandatory || offerOptions.optional) { + throw new TypeError( + 'Legacy mandatory/optional constraints not supported.'); + } + if (offerOptions.offerToReceiveAudio !== undefined) { + if (offerOptions.offerToReceiveAudio === true) { + numAudioTracks = 1; + } else if (offerOptions.offerToReceiveAudio === false) { + numAudioTracks = 0; + } else { + numAudioTracks = offerOptions.offerToReceiveAudio; + } + } + if (offerOptions.offerToReceiveVideo !== undefined) { + if (offerOptions.offerToReceiveVideo === true) { + numVideoTracks = 1; + } else if (offerOptions.offerToReceiveVideo === false) { + numVideoTracks = 0; + } else { + numVideoTracks = offerOptions.offerToReceiveVideo; + } + } + } + + this.transceivers.forEach(function(transceiver) { + if (transceiver.kind === 'audio') { + numAudioTracks--; + if (numAudioTracks < 0) { + transceiver.wantReceive = false; + } + } else if (transceiver.kind === 'video') { + numVideoTracks--; + if (numVideoTracks < 0) { + transceiver.wantReceive = false; + } + } + }); + + // Create M-lines for recvonly streams. + while (numAudioTracks > 0 || numVideoTracks > 0) { + if (numAudioTracks > 0) { + this._createTransceiver('audio'); + numAudioTracks--; + } + if (numVideoTracks > 0) { + this._createTransceiver('video'); + numVideoTracks--; + } + } + + var sdp = SDPUtils.writeSessionBoilerplate(this._sdpSessionId, + this._sdpSessionVersion++); + this.transceivers.forEach(function(transceiver, sdpMLineIndex) { + // For each track, create an ice gatherer, ice transport, + // dtls transport, potentially rtpsender and rtpreceiver. + var track = transceiver.track; + var kind = transceiver.kind; + var mid = SDPUtils.generateIdentifier(); + transceiver.mid = mid; + + if (!transceiver.iceGatherer) { + transceiver.iceGatherer = self._createIceGatherer(sdpMLineIndex, + self.usingBundle); + } + + var localCapabilities = window.RTCRtpSender.getCapabilities(kind); + // filter RTX until additional stuff needed for RTX is implemented + // in adapter.js + if (edgeVersion < 15019) { + localCapabilities.codecs = localCapabilities.codecs.filter( + function(codec) { + return codec.name !== 'rtx'; + }); + } + localCapabilities.codecs.forEach(function(codec) { + // work around https://bugs.chromium.org/p/webrtc/issues/detail?id=6552 + // by adding level-asymmetry-allowed=1 + if (codec.name === 'H264' && + codec.parameters['level-asymmetry-allowed'] === undefined) { + codec.parameters['level-asymmetry-allowed'] = '1'; + } + }); + + // generate an ssrc now, to be used later in rtpSender.send + var sendEncodingParameters = transceiver.sendEncodingParameters || [{ + ssrc: (2 * sdpMLineIndex + 1) * 1001 + }]; + if (track) { + // add RTX + if (edgeVersion >= 15019 && kind === 'video' && + !sendEncodingParameters[0].rtx) { + sendEncodingParameters[0].rtx = { + ssrc: sendEncodingParameters[0].ssrc + 1 + }; + } + } + + if (transceiver.wantReceive) { + transceiver.rtpReceiver = new window.RTCRtpReceiver( + transceiver.dtlsTransport, kind); + } + + transceiver.localCapabilities = localCapabilities; + transceiver.sendEncodingParameters = sendEncodingParameters; + }); + + // always offer BUNDLE and dispose on return if not supported. + if (this._config.bundlePolicy !== 'max-compat') { + sdp += 'a=group:BUNDLE ' + this.transceivers.map(function(t) { + return t.mid; + }).join(' ') + '\r\n'; + } + sdp += 'a=ice-options:trickle\r\n'; + + this.transceivers.forEach(function(transceiver, sdpMLineIndex) { + sdp += writeMediaSection(transceiver, transceiver.localCapabilities, + 'offer', transceiver.stream, self._dtlsRole); + sdp += 'a=rtcp-rsize\r\n'; + + if (transceiver.iceGatherer && self.iceGatheringState !== 'new' && + (sdpMLineIndex === 0 || !self.usingBundle)) { + transceiver.iceGatherer.getLocalCandidates().forEach(function(cand) { + cand.component = 1; + sdp += 'a=' + SDPUtils.writeCandidate(cand) + '\r\n'; + }); + + if (transceiver.iceGatherer.state === 'completed') { + sdp += 'a=end-of-candidates\r\n'; + } + } + }); + + var desc = new window.RTCSessionDescription({ + type: 'offer', + sdp: sdp + }); + return new Promise(function(resolve) { + if (args.length > 0 && typeof args[0] === 'function') { + args[0].apply(null, [desc]); + resolve(); + return; + } + resolve(desc); + }); + }; + + RTCPeerConnection.prototype.createAnswer = function() { + var self = this; + var args = arguments; + + var sdp = SDPUtils.writeSessionBoilerplate(this._sdpSessionId, + this._sdpSessionVersion++); + if (this.usingBundle) { + sdp += 'a=group:BUNDLE ' + this.transceivers.map(function(t) { + return t.mid; + }).join(' ') + '\r\n'; + } + var mediaSectionsInOffer = SDPUtils.splitSections( + this.remoteDescription.sdp).length - 1; + this.transceivers.forEach(function(transceiver, sdpMLineIndex) { + if (sdpMLineIndex + 1 > mediaSectionsInOffer) { + return; + } + if (transceiver.isDatachannel) { + sdp += 'm=application 0 DTLS/SCTP 5000\r\n' + + 'c=IN IP4 0.0.0.0\r\n' + + 'a=mid:' + transceiver.mid + '\r\n'; + return; + } + + // FIXME: look at direction. + if (transceiver.stream) { + var localTrack; + if (transceiver.kind === 'audio') { + localTrack = transceiver.stream.getAudioTracks()[0]; + } else if (transceiver.kind === 'video') { + localTrack = transceiver.stream.getVideoTracks()[0]; + } + if (localTrack) { + // add RTX + if (edgeVersion >= 15019 && transceiver.kind === 'video' && + !transceiver.sendEncodingParameters[0].rtx) { + transceiver.sendEncodingParameters[0].rtx = { + ssrc: transceiver.sendEncodingParameters[0].ssrc + 1 + }; + } + } + } + + // Calculate intersection of capabilities. + var commonCapabilities = getCommonCapabilities( + transceiver.localCapabilities, + transceiver.remoteCapabilities); + + var hasRtx = commonCapabilities.codecs.filter(function(c) { + return c.name.toLowerCase() === 'rtx'; + }).length; + if (!hasRtx && transceiver.sendEncodingParameters[0].rtx) { + delete transceiver.sendEncodingParameters[0].rtx; + } + + sdp += writeMediaSection(transceiver, commonCapabilities, + 'answer', transceiver.stream, self._dtlsRole); + if (transceiver.rtcpParameters && + transceiver.rtcpParameters.reducedSize) { + sdp += 'a=rtcp-rsize\r\n'; + } + }); + + var desc = new window.RTCSessionDescription({ + type: 'answer', + sdp: sdp + }); + return new Promise(function(resolve) { + if (args.length > 0 && typeof args[0] === 'function') { + args[0].apply(null, [desc]); + resolve(); + return; + } + resolve(desc); + }); + }; + + RTCPeerConnection.prototype.addIceCandidate = function(candidate) { + var err; + var sections; + if (!candidate || candidate.candidate === '') { + for (var j = 0; j < this.transceivers.length; j++) { + if (this.transceivers[j].isDatachannel) { + continue; + } + this.transceivers[j].iceTransport.addRemoteCandidate({}); + sections = SDPUtils.splitSections(this.remoteDescription.sdp); + sections[j + 1] += 'a=end-of-candidates\r\n'; + this.remoteDescription.sdp = sections.join(''); + if (this.usingBundle) { + break; + } + } + } else if (!(candidate.sdpMLineIndex !== undefined || candidate.sdpMid)) { + throw new TypeError('sdpMLineIndex or sdpMid required'); + } else if (!this.remoteDescription) { + err = new Error('Can not add ICE candidate without ' + + 'a remote description'); + err.name = 'InvalidStateError'; + } else { + var sdpMLineIndex = candidate.sdpMLineIndex; + if (candidate.sdpMid) { + for (var i = 0; i < this.transceivers.length; i++) { + if (this.transceivers[i].mid === candidate.sdpMid) { + sdpMLineIndex = i; + break; + } + } + } + var transceiver = this.transceivers[sdpMLineIndex]; + if (transceiver) { + if (transceiver.isDatachannel) { + return Promise.resolve(); + } + var cand = Object.keys(candidate.candidate).length > 0 ? + SDPUtils.parseCandidate(candidate.candidate) : {}; + // Ignore Chrome's invalid candidates since Edge does not like them. + if (cand.protocol === 'tcp' && (cand.port === 0 || cand.port === 9)) { + return Promise.resolve(); + } + // Ignore RTCP candidates, we assume RTCP-MUX. + if (cand.component && cand.component !== 1) { + return Promise.resolve(); + } + // when using bundle, avoid adding candidates to the wrong + // ice transport. And avoid adding candidates added in the SDP. + if (sdpMLineIndex === 0 || (sdpMLineIndex > 0 && + transceiver.iceTransport !== this.transceivers[0].iceTransport)) { + if (!maybeAddCandidate(transceiver.iceTransport, cand)) { + err = new Error('Can not add ICE candidate'); + err.name = 'OperationError'; + } + } + + if (!err) { + // update the remoteDescription. + var candidateString = candidate.candidate.trim(); + if (candidateString.indexOf('a=') === 0) { + candidateString = candidateString.substr(2); + } + sections = SDPUtils.splitSections(this.remoteDescription.sdp); + sections[sdpMLineIndex + 1] += 'a=' + + (cand.type ? candidateString : 'end-of-candidates') + + '\r\n'; + this.remoteDescription.sdp = sections.join(''); + } + } else { + err = new Error('Can not add ICE candidate'); + err.name = 'OperationError'; + } + } + var args = arguments; + return new Promise(function(resolve, reject) { + if (err) { + if (args.length > 2 && typeof args[2] === 'function') { + args[2].apply(null, [err]); + } + reject(err); + } else { + if (args.length > 1 && typeof args[1] === 'function') { + args[1].apply(null); + } + resolve(); + } + }); + }; + + RTCPeerConnection.prototype.getStats = function() { + var promises = []; + this.transceivers.forEach(function(transceiver) { + ['rtpSender', 'rtpReceiver', 'iceGatherer', 'iceTransport', + 'dtlsTransport'].forEach(function(method) { + if (transceiver[method]) { + promises.push(transceiver[method].getStats()); + } + }); + }); + var cb = arguments.length > 1 && typeof arguments[1] === 'function' && + arguments[1]; + var fixStatsType = function(stat) { + return { + inboundrtp: 'inbound-rtp', + outboundrtp: 'outbound-rtp', + candidatepair: 'candidate-pair', + localcandidate: 'local-candidate', + remotecandidate: 'remote-candidate' + }[stat.type] || stat.type; + }; + return new Promise(function(resolve) { + // shim getStats with maplike support + var results = new Map(); + Promise.all(promises).then(function(res) { + res.forEach(function(result) { + Object.keys(result).forEach(function(id) { + result[id].type = fixStatsType(result[id]); + results.set(id, result[id]); + }); + }); + if (cb) { + cb.apply(null, results); + } + resolve(results); + }); + }); + }; + return RTCPeerConnection; +}; + +},{"sdp":2}],2:[function(require,module,exports){ + /* eslint-env node */ +'use strict'; + +// SDP helpers. +var SDPUtils = {}; + +// Generate an alphanumeric identifier for cname or mids. +// TODO: use UUIDs instead? https://gist.github.com/jed/982883 +SDPUtils.generateIdentifier = function() { + return Math.random().toString(36).substr(2, 10); +}; + +// The RTCP CNAME used by all peerconnections from the same JS. +SDPUtils.localCName = SDPUtils.generateIdentifier(); + +// Splits SDP into lines, dealing with both CRLF and LF. +SDPUtils.splitLines = function(blob) { + return blob.trim().split('\n').map(function(line) { + return line.trim(); + }); +}; +// Splits SDP into sessionpart and mediasections. Ensures CRLF. +SDPUtils.splitSections = function(blob) { + var parts = blob.split('\nm='); + return parts.map(function(part, index) { + return (index > 0 ? 'm=' + part : part).trim() + '\r\n'; + }); +}; + +// Returns lines that start with a certain prefix. +SDPUtils.matchPrefix = function(blob, prefix) { + return SDPUtils.splitLines(blob).filter(function(line) { + return line.indexOf(prefix) === 0; + }); +}; + +// Parses an ICE candidate line. Sample input: +// candidate:702786350 2 udp 41819902 8.8.8.8 60769 typ relay raddr 8.8.8.8 +// rport 55996" +SDPUtils.parseCandidate = function(line) { + var parts; + // Parse both variants. + if (line.indexOf('a=candidate:') === 0) { + parts = line.substring(12).split(' '); + } else { + parts = line.substring(10).split(' '); + } + + var candidate = { + foundation: parts[0], + component: parseInt(parts[1], 10), + protocol: parts[2].toLowerCase(), + priority: parseInt(parts[3], 10), + ip: parts[4], + port: parseInt(parts[5], 10), + // skip parts[6] == 'typ' + type: parts[7] + }; + + for (var i = 8; i < parts.length; i += 2) { + switch (parts[i]) { + case 'raddr': + candidate.relatedAddress = parts[i + 1]; + break; + case 'rport': + candidate.relatedPort = parseInt(parts[i + 1], 10); + break; + case 'tcptype': + candidate.tcpType = parts[i + 1]; + break; + case 'ufrag': + candidate.ufrag = parts[i + 1]; // for backward compability. + candidate.usernameFragment = parts[i + 1]; + break; + default: // extension handling, in particular ufrag + candidate[parts[i]] = parts[i + 1]; + break; + } + } + return candidate; +}; + +// Translates a candidate object into SDP candidate attribute. +SDPUtils.writeCandidate = function(candidate) { + var sdp = []; + sdp.push(candidate.foundation); + sdp.push(candidate.component); + sdp.push(candidate.protocol.toUpperCase()); + sdp.push(candidate.priority); + sdp.push(candidate.ip); + sdp.push(candidate.port); + + var type = candidate.type; + sdp.push('typ'); + sdp.push(type); + if (type !== 'host' && candidate.relatedAddress && + candidate.relatedPort) { + sdp.push('raddr'); + sdp.push(candidate.relatedAddress); // was: relAddr + sdp.push('rport'); + sdp.push(candidate.relatedPort); // was: relPort + } + if (candidate.tcpType && candidate.protocol.toLowerCase() === 'tcp') { + sdp.push('tcptype'); + sdp.push(candidate.tcpType); + } + if (candidate.ufrag) { + sdp.push('ufrag'); + sdp.push(candidate.ufrag); + } + return 'candidate:' + sdp.join(' '); +}; + +// Parses an ice-options line, returns an array of option tags. +// a=ice-options:foo bar +SDPUtils.parseIceOptions = function(line) { + return line.substr(14).split(' '); +} + +// Parses an rtpmap line, returns RTCRtpCoddecParameters. Sample input: +// a=rtpmap:111 opus/48000/2 +SDPUtils.parseRtpMap = function(line) { + var parts = line.substr(9).split(' '); + var parsed = { + payloadType: parseInt(parts.shift(), 10) // was: id + }; + + parts = parts[0].split('/'); + + parsed.name = parts[0]; + parsed.clockRate = parseInt(parts[1], 10); // was: clockrate + // was: channels + parsed.numChannels = parts.length === 3 ? parseInt(parts[2], 10) : 1; + return parsed; +}; + +// Generate an a=rtpmap line from RTCRtpCodecCapability or +// RTCRtpCodecParameters. +SDPUtils.writeRtpMap = function(codec) { + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + return 'a=rtpmap:' + pt + ' ' + codec.name + '/' + codec.clockRate + + (codec.numChannels !== 1 ? '/' + codec.numChannels : '') + '\r\n'; +}; + +// Parses an a=extmap line (headerextension from RFC 5285). Sample input: +// a=extmap:2 urn:ietf:params:rtp-hdrext:toffset +// a=extmap:2/sendonly urn:ietf:params:rtp-hdrext:toffset +SDPUtils.parseExtmap = function(line) { + var parts = line.substr(9).split(' '); + return { + id: parseInt(parts[0], 10), + direction: parts[0].indexOf('/') > 0 ? parts[0].split('/')[1] : 'sendrecv', + uri: parts[1] + }; +}; + +// Generates a=extmap line from RTCRtpHeaderExtensionParameters or +// RTCRtpHeaderExtension. +SDPUtils.writeExtmap = function(headerExtension) { + return 'a=extmap:' + (headerExtension.id || headerExtension.preferredId) + + (headerExtension.direction && headerExtension.direction !== 'sendrecv' + ? '/' + headerExtension.direction + : '') + + ' ' + headerExtension.uri + '\r\n'; +}; + +// Parses an ftmp line, returns dictionary. Sample input: +// a=fmtp:96 vbr=on;cng=on +// Also deals with vbr=on; cng=on +SDPUtils.parseFmtp = function(line) { + var parsed = {}; + var kv; + var parts = line.substr(line.indexOf(' ') + 1).split(';'); + for (var j = 0; j < parts.length; j++) { + kv = parts[j].trim().split('='); + parsed[kv[0].trim()] = kv[1]; + } + return parsed; +}; + +// Generates an a=ftmp line from RTCRtpCodecCapability or RTCRtpCodecParameters. +SDPUtils.writeFmtp = function(codec) { + var line = ''; + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + if (codec.parameters && Object.keys(codec.parameters).length) { + var params = []; + Object.keys(codec.parameters).forEach(function(param) { + params.push(param + '=' + codec.parameters[param]); + }); + line += 'a=fmtp:' + pt + ' ' + params.join(';') + '\r\n'; + } + return line; +}; + +// Parses an rtcp-fb line, returns RTCPRtcpFeedback object. Sample input: +// a=rtcp-fb:98 nack rpsi +SDPUtils.parseRtcpFb = function(line) { + var parts = line.substr(line.indexOf(' ') + 1).split(' '); + return { + type: parts.shift(), + parameter: parts.join(' ') + }; +}; +// Generate a=rtcp-fb lines from RTCRtpCodecCapability or RTCRtpCodecParameters. +SDPUtils.writeRtcpFb = function(codec) { + var lines = ''; + var pt = codec.payloadType; + if (codec.preferredPayloadType !== undefined) { + pt = codec.preferredPayloadType; + } + if (codec.rtcpFeedback && codec.rtcpFeedback.length) { + // FIXME: special handling for trr-int? + codec.rtcpFeedback.forEach(function(fb) { + lines += 'a=rtcp-fb:' + pt + ' ' + fb.type + + (fb.parameter && fb.parameter.length ? ' ' + fb.parameter : '') + + '\r\n'; + }); + } + return lines; +}; + +// Parses an RFC 5576 ssrc media attribute. Sample input: +// a=ssrc:3735928559 cname:something +SDPUtils.parseSsrcMedia = function(line) { + var sp = line.indexOf(' '); + var parts = { + ssrc: parseInt(line.substr(7, sp - 7), 10) + }; + var colon = line.indexOf(':', sp); + if (colon > -1) { + parts.attribute = line.substr(sp + 1, colon - sp - 1); + parts.value = line.substr(colon + 1); + } else { + parts.attribute = line.substr(sp + 1); + } + return parts; +}; + +// Extracts the MID (RFC 5888) from a media section. +// returns the MID or undefined if no mid line was found. +SDPUtils.getMid = function(mediaSection) { + var mid = SDPUtils.matchPrefix(mediaSection, 'a=mid:')[0]; + if (mid) { + return mid.substr(6); + } +} + +SDPUtils.parseFingerprint = function(line) { + var parts = line.substr(14).split(' '); + return { + algorithm: parts[0].toLowerCase(), // algorithm is case-sensitive in Edge. + value: parts[1] + }; +}; + +// Extracts DTLS parameters from SDP media section or sessionpart. +// FIXME: for consistency with other functions this should only +// get the fingerprint line as input. See also getIceParameters. +SDPUtils.getDtlsParameters = function(mediaSection, sessionpart) { + var lines = SDPUtils.matchPrefix(mediaSection + sessionpart, + 'a=fingerprint:'); + // Note: a=setup line is ignored since we use the 'auto' role. + // Note2: 'algorithm' is not case sensitive except in Edge. + return { + role: 'auto', + fingerprints: lines.map(SDPUtils.parseFingerprint) + }; +}; + +// Serializes DTLS parameters to SDP. +SDPUtils.writeDtlsParameters = function(params, setupType) { + var sdp = 'a=setup:' + setupType + '\r\n'; + params.fingerprints.forEach(function(fp) { + sdp += 'a=fingerprint:' + fp.algorithm + ' ' + fp.value + '\r\n'; + }); + return sdp; +}; +// Parses ICE information from SDP media section or sessionpart. +// FIXME: for consistency with other functions this should only +// get the ice-ufrag and ice-pwd lines as input. +SDPUtils.getIceParameters = function(mediaSection, sessionpart) { + var lines = SDPUtils.splitLines(mediaSection); + // Search in session part, too. + lines = lines.concat(SDPUtils.splitLines(sessionpart)); + var iceParameters = { + usernameFragment: lines.filter(function(line) { + return line.indexOf('a=ice-ufrag:') === 0; + })[0].substr(12), + password: lines.filter(function(line) { + return line.indexOf('a=ice-pwd:') === 0; + })[0].substr(10) + }; + return iceParameters; +}; + +// Serializes ICE parameters to SDP. +SDPUtils.writeIceParameters = function(params) { + return 'a=ice-ufrag:' + params.usernameFragment + '\r\n' + + 'a=ice-pwd:' + params.password + '\r\n'; +}; + +// Parses the SDP media section and returns RTCRtpParameters. +SDPUtils.parseRtpParameters = function(mediaSection) { + var description = { + codecs: [], + headerExtensions: [], + fecMechanisms: [], + rtcp: [] + }; + var lines = SDPUtils.splitLines(mediaSection); + var mline = lines[0].split(' '); + for (var i = 3; i < mline.length; i++) { // find all codecs from mline[3..] + var pt = mline[i]; + var rtpmapline = SDPUtils.matchPrefix( + mediaSection, 'a=rtpmap:' + pt + ' ')[0]; + if (rtpmapline) { + var codec = SDPUtils.parseRtpMap(rtpmapline); + var fmtps = SDPUtils.matchPrefix( + mediaSection, 'a=fmtp:' + pt + ' '); + // Only the first a=fmtp:<pt> is considered. + codec.parameters = fmtps.length ? SDPUtils.parseFmtp(fmtps[0]) : {}; + codec.rtcpFeedback = SDPUtils.matchPrefix( + mediaSection, 'a=rtcp-fb:' + pt + ' ') + .map(SDPUtils.parseRtcpFb); + description.codecs.push(codec); + // parse FEC mechanisms from rtpmap lines. + switch (codec.name.toUpperCase()) { + case 'RED': + case 'ULPFEC': + description.fecMechanisms.push(codec.name.toUpperCase()); + break; + default: // only RED and ULPFEC are recognized as FEC mechanisms. + break; + } + } + } + SDPUtils.matchPrefix(mediaSection, 'a=extmap:').forEach(function(line) { + description.headerExtensions.push(SDPUtils.parseExtmap(line)); + }); + // FIXME: parse rtcp. + return description; +}; + +// Generates parts of the SDP media section describing the capabilities / +// parameters. +SDPUtils.writeRtpDescription = function(kind, caps) { + var sdp = ''; + + // Build the mline. + sdp += 'm=' + kind + ' '; + sdp += caps.codecs.length > 0 ? '9' : '0'; // reject if no codecs. + sdp += ' UDP/TLS/RTP/SAVPF '; + sdp += caps.codecs.map(function(codec) { + if (codec.preferredPayloadType !== undefined) { + return codec.preferredPayloadType; + } + return codec.payloadType; + }).join(' ') + '\r\n'; + + sdp += 'c=IN IP4 0.0.0.0\r\n'; + sdp += 'a=rtcp:9 IN IP4 0.0.0.0\r\n'; + + // Add a=rtpmap lines for each codec. Also fmtp and rtcp-fb. + caps.codecs.forEach(function(codec) { + sdp += SDPUtils.writeRtpMap(codec); + sdp += SDPUtils.writeFmtp(codec); + sdp += SDPUtils.writeRtcpFb(codec); + }); + var maxptime = 0; + caps.codecs.forEach(function(codec) { + if (codec.maxptime > maxptime) { + maxptime = codec.maxptime; + } + }); + if (maxptime > 0) { + sdp += 'a=maxptime:' + maxptime + '\r\n'; + } + sdp += 'a=rtcp-mux\r\n'; + + caps.headerExtensions.forEach(function(extension) { + sdp += SDPUtils.writeExtmap(extension); + }); + // FIXME: write fecMechanisms. + return sdp; +}; + +// Parses the SDP media section and returns an array of +// RTCRtpEncodingParameters. +SDPUtils.parseRtpEncodingParameters = function(mediaSection) { + var encodingParameters = []; + var description = SDPUtils.parseRtpParameters(mediaSection); + var hasRed = description.fecMechanisms.indexOf('RED') !== -1; + var hasUlpfec = description.fecMechanisms.indexOf('ULPFEC') !== -1; + + // filter a=ssrc:... cname:, ignore PlanB-msid + var ssrcs = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:') + .map(function(line) { + return SDPUtils.parseSsrcMedia(line); + }) + .filter(function(parts) { + return parts.attribute === 'cname'; + }); + var primarySsrc = ssrcs.length > 0 && ssrcs[0].ssrc; + var secondarySsrc; + + var flows = SDPUtils.matchPrefix(mediaSection, 'a=ssrc-group:FID') + .map(function(line) { + var parts = line.split(' '); + parts.shift(); + return parts.map(function(part) { + return parseInt(part, 10); + }); + }); + if (flows.length > 0 && flows[0].length > 1 && flows[0][0] === primarySsrc) { + secondarySsrc = flows[0][1]; + } + + description.codecs.forEach(function(codec) { + if (codec.name.toUpperCase() === 'RTX' && codec.parameters.apt) { + var encParam = { + ssrc: primarySsrc, + codecPayloadType: parseInt(codec.parameters.apt, 10), + rtx: { + ssrc: secondarySsrc + } + }; + encodingParameters.push(encParam); + if (hasRed) { + encParam = JSON.parse(JSON.stringify(encParam)); + encParam.fec = { + ssrc: secondarySsrc, + mechanism: hasUlpfec ? 'red+ulpfec' : 'red' + }; + encodingParameters.push(encParam); + } + } + }); + if (encodingParameters.length === 0 && primarySsrc) { + encodingParameters.push({ + ssrc: primarySsrc + }); + } + + // we support both b=AS and b=TIAS but interpret AS as TIAS. + var bandwidth = SDPUtils.matchPrefix(mediaSection, 'b='); + if (bandwidth.length) { + if (bandwidth[0].indexOf('b=TIAS:') === 0) { + bandwidth = parseInt(bandwidth[0].substr(7), 10); + } else if (bandwidth[0].indexOf('b=AS:') === 0) { + // use formula from JSEP to convert b=AS to TIAS value. + bandwidth = parseInt(bandwidth[0].substr(5), 10) * 1000 * 0.95 + - (50 * 40 * 8); + } else { + bandwidth = undefined; + } + encodingParameters.forEach(function(params) { + params.maxBitrate = bandwidth; + }); + } + return encodingParameters; +}; + +// parses http://draft.ortc.org/#rtcrtcpparameters* +SDPUtils.parseRtcpParameters = function(mediaSection) { + var rtcpParameters = {}; + + var cname; + // Gets the first SSRC. Note that with RTX there might be multiple + // SSRCs. + var remoteSsrc = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:') + .map(function(line) { + return SDPUtils.parseSsrcMedia(line); + }) + .filter(function(obj) { + return obj.attribute === 'cname'; + })[0]; + if (remoteSsrc) { + rtcpParameters.cname = remoteSsrc.value; + rtcpParameters.ssrc = remoteSsrc.ssrc; + } + + // Edge uses the compound attribute instead of reducedSize + // compound is !reducedSize + var rsize = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-rsize'); + rtcpParameters.reducedSize = rsize.length > 0; + rtcpParameters.compound = rsize.length === 0; + + // parses the rtcp-mux attrÑ–bute. + // Note that Edge does not support unmuxed RTCP. + var mux = SDPUtils.matchPrefix(mediaSection, 'a=rtcp-mux'); + rtcpParameters.mux = mux.length > 0; + + return rtcpParameters; +}; + +// parses either a=msid: or a=ssrc:... msid lines and returns +// the id of the MediaStream and MediaStreamTrack. +SDPUtils.parseMsid = function(mediaSection) { + var parts; + var spec = SDPUtils.matchPrefix(mediaSection, 'a=msid:'); + if (spec.length === 1) { + parts = spec[0].substr(7).split(' '); + return {stream: parts[0], track: parts[1]}; + } + var planB = SDPUtils.matchPrefix(mediaSection, 'a=ssrc:') + .map(function(line) { + return SDPUtils.parseSsrcMedia(line); + }) + .filter(function(parts) { + return parts.attribute === 'msid'; + }); + if (planB.length > 0) { + parts = planB[0].value.split(' '); + return {stream: parts[0], track: parts[1]}; + } +}; + +// Generate a session ID for SDP. +// https://tools.ietf.org/html/draft-ietf-rtcweb-jsep-20#section-5.2.1 +// recommends using a cryptographically random +ve 64-bit value +// but right now this should be acceptable and within the right range +SDPUtils.generateSessionId = function() { + return Math.random().toString().substr(2, 21); +}; + +// Write boilder plate for start of SDP +// sessId argument is optional - if not supplied it will +// be generated randomly +// sessVersion is optional and defaults to 2 +SDPUtils.writeSessionBoilerplate = function(sessId, sessVer) { + var sessionId; + var version = sessVer !== undefined ? sessVer : 2; + if (sessId) { + sessionId = sessId; + } else { + sessionId = SDPUtils.generateSessionId(); + } + // FIXME: sess-id should be an NTP timestamp. + return 'v=0\r\n' + + 'o=thisisadapterortc ' + sessionId + ' ' + version + ' IN IP4 127.0.0.1\r\n' + + 's=-\r\n' + + 't=0 0\r\n'; +}; + +SDPUtils.writeMediaSection = function(transceiver, caps, type, stream) { + var sdp = SDPUtils.writeRtpDescription(transceiver.kind, caps); + + // Map ICE parameters (ufrag, pwd) to SDP. + sdp += SDPUtils.writeIceParameters( + transceiver.iceGatherer.getLocalParameters()); + + // Map DTLS parameters to SDP. + sdp += SDPUtils.writeDtlsParameters( + transceiver.dtlsTransport.getLocalParameters(), + type === 'offer' ? 'actpass' : 'active'); + + sdp += 'a=mid:' + transceiver.mid + '\r\n'; + + if (transceiver.direction) { + sdp += 'a=' + transceiver.direction + '\r\n'; + } else if (transceiver.rtpSender && transceiver.rtpReceiver) { + sdp += 'a=sendrecv\r\n'; + } else if (transceiver.rtpSender) { + sdp += 'a=sendonly\r\n'; + } else if (transceiver.rtpReceiver) { + sdp += 'a=recvonly\r\n'; + } else { + sdp += 'a=inactive\r\n'; + } + + if (transceiver.rtpSender) { + // spec. + var msid = 'msid:' + stream.id + ' ' + + transceiver.rtpSender.track.id + '\r\n'; + sdp += 'a=' + msid; + + // for Chrome. + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc + + ' ' + msid; + if (transceiver.sendEncodingParameters[0].rtx) { + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc + + ' ' + msid; + sdp += 'a=ssrc-group:FID ' + + transceiver.sendEncodingParameters[0].ssrc + ' ' + + transceiver.sendEncodingParameters[0].rtx.ssrc + + '\r\n'; + } + } + // FIXME: this should be written by writeRtpDescription. + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].ssrc + + ' cname:' + SDPUtils.localCName + '\r\n'; + if (transceiver.rtpSender && transceiver.sendEncodingParameters[0].rtx) { + sdp += 'a=ssrc:' + transceiver.sendEncodingParameters[0].rtx.ssrc + + ' cname:' + SDPUtils.localCName + '\r\n'; + } + return sdp; +}; + +// Gets the direction from the mediaSection or the sessionpart. +SDPUtils.getDirection = function(mediaSection, sessionpart) { + // Look for sendrecv, sendonly, recvonly, inactive, default to sendrecv. + var lines = SDPUtils.splitLines(mediaSection); + for (var i = 0; i < lines.length; i++) { + switch (lines[i]) { + case 'a=sendrecv': + case 'a=sendonly': + case 'a=recvonly': + case 'a=inactive': + return lines[i].substr(2); + default: + // FIXME: What should happen here? + } + } + if (sessionpart) { + return SDPUtils.getDirection(sessionpart); + } + return 'sendrecv'; +}; + +SDPUtils.getKind = function(mediaSection) { + var lines = SDPUtils.splitLines(mediaSection); + var mline = lines[0].split(' '); + return mline[0].substr(2); +}; + +SDPUtils.isRejected = function(mediaSection) { + return mediaSection.split(' ', 2)[1] === '0'; +}; + +SDPUtils.parseMLine = function(mediaSection) { + var lines = SDPUtils.splitLines(mediaSection); + var mline = lines[0].split(' '); + return { + kind: mline[0].substr(2), + port: parseInt(mline[1], 10), + protocol: mline[2], + fmt: mline.slice(3).join(' ') + }; +}; + +// Expose public methods. +if (typeof module === 'object') { + module.exports = SDPUtils; +} + +},{}],3:[function(require,module,exports){ +(function (global){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ + +'use strict'; + +var adapterFactory = require('./adapter_factory.js'); +module.exports = adapterFactory({window: global.window}); + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{"./adapter_factory.js":4}],4:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ + +'use strict'; + +var utils = require('./utils'); +// Shimming starts here. +module.exports = function(dependencies, opts) { + var window = dependencies && dependencies.window; + + var options = { + shimChrome: true, + shimFirefox: true, + shimEdge: true, + shimSafari: true, + }; + + for (var key in opts) { + if (hasOwnProperty.call(opts, key)) { + options[key] = opts[key]; + } + } + + // Utils. + var logging = utils.log; + var browserDetails = utils.detectBrowser(window); + + // Export to the adapter global object visible in the browser. + var adapter = { + browserDetails: browserDetails, + extractVersion: utils.extractVersion, + disableLog: utils.disableLog, + disableWarnings: utils.disableWarnings + }; + + // Uncomment the line below if you want logging to occur, including logging + // for the switch statement below. Can also be turned on in the browser via + // adapter.disableLog(false), but then logging from the switch statement below + // will not appear. + // require('./utils').disableLog(false); + + // Browser shims. + var chromeShim = require('./chrome/chrome_shim') || null; + var edgeShim = require('./edge/edge_shim') || null; + var firefoxShim = require('./firefox/firefox_shim') || null; + var safariShim = require('./safari/safari_shim') || null; + var commonShim = require('./common_shim') || null; + + // Shim browser if found. + switch (browserDetails.browser) { + case 'chrome': + if (!chromeShim || !chromeShim.shimPeerConnection || + !options.shimChrome) { + logging('Chrome shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming chrome.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = chromeShim; + commonShim.shimCreateObjectURL(window); + + chromeShim.shimGetUserMedia(window); + chromeShim.shimMediaStream(window); + chromeShim.shimSourceObject(window); + chromeShim.shimPeerConnection(window); + chromeShim.shimOnTrack(window); + chromeShim.shimAddTrackRemoveTrack(window); + chromeShim.shimGetSendersWithDtmf(window); + + commonShim.shimRTCIceCandidate(window); + break; + case 'firefox': + if (!firefoxShim || !firefoxShim.shimPeerConnection || + !options.shimFirefox) { + logging('Firefox shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming firefox.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = firefoxShim; + commonShim.shimCreateObjectURL(window); + + firefoxShim.shimGetUserMedia(window); + firefoxShim.shimSourceObject(window); + firefoxShim.shimPeerConnection(window); + firefoxShim.shimOnTrack(window); + + commonShim.shimRTCIceCandidate(window); + break; + case 'edge': + if (!edgeShim || !edgeShim.shimPeerConnection || !options.shimEdge) { + logging('MS edge shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming edge.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = edgeShim; + commonShim.shimCreateObjectURL(window); + + edgeShim.shimGetUserMedia(window); + edgeShim.shimPeerConnection(window); + edgeShim.shimReplaceTrack(window); + + // the edge shim implements the full RTCIceCandidate object. + break; + case 'safari': + if (!safariShim || !options.shimSafari) { + logging('Safari shim is not included in this adapter release.'); + return adapter; + } + logging('adapter.js shimming safari.'); + // Export to the adapter global object visible in the browser. + adapter.browserShim = safariShim; + commonShim.shimCreateObjectURL(window); + + safariShim.shimRTCIceServerUrls(window); + safariShim.shimCallbacksAPI(window); + safariShim.shimLocalStreamsAPI(window); + safariShim.shimRemoteStreamsAPI(window); + safariShim.shimTrackEventTransceiver(window); + safariShim.shimGetUserMedia(window); + safariShim.shimCreateOfferLegacy(window); + + commonShim.shimRTCIceCandidate(window); + break; + default: + logging('Unsupported browser!'); + break; + } + + return adapter; +}; + +},{"./chrome/chrome_shim":5,"./common_shim":7,"./edge/edge_shim":8,"./firefox/firefox_shim":10,"./safari/safari_shim":12,"./utils":13}],5:[function(require,module,exports){ + +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; +var utils = require('../utils.js'); +var logging = utils.log; + +var chromeShim = { + shimMediaStream: function(window) { + window.MediaStream = window.MediaStream || window.webkitMediaStream; + }, + + shimOnTrack: function(window) { + if (typeof window === 'object' && window.RTCPeerConnection && !('ontrack' in + window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'ontrack', { + get: function() { + return this._ontrack; + }, + set: function(f) { + if (this._ontrack) { + this.removeEventListener('track', this._ontrack); + } + this.addEventListener('track', this._ontrack = f); + } + }); + var origSetRemoteDescription = + window.RTCPeerConnection.prototype.setRemoteDescription; + window.RTCPeerConnection.prototype.setRemoteDescription = function() { + var pc = this; + if (!pc._ontrackpoly) { + pc._ontrackpoly = function(e) { + // onaddstream does not fire when a track is added to an existing + // stream. But stream.onaddtrack is implemented so we use that. + e.stream.addEventListener('addtrack', function(te) { + var receiver; + if (window.RTCPeerConnection.prototype.getReceivers) { + receiver = pc.getReceivers().find(function(r) { + return r.track && r.track.id === te.track.id; + }); + } else { + receiver = {track: te.track}; + } + + var event = new Event('track'); + event.track = te.track; + event.receiver = receiver; + event.transceiver = {receiver: receiver}; + event.streams = [e.stream]; + pc.dispatchEvent(event); + }); + e.stream.getTracks().forEach(function(track) { + var receiver; + if (window.RTCPeerConnection.prototype.getReceivers) { + receiver = pc.getReceivers().find(function(r) { + return r.track && r.track.id === track.id; + }); + } else { + receiver = {track: track}; + } + var event = new Event('track'); + event.track = track; + event.receiver = receiver; + event.transceiver = {receiver: receiver}; + event.streams = [e.stream]; + pc.dispatchEvent(event); + }); + }; + pc.addEventListener('addstream', pc._ontrackpoly); + } + return origSetRemoteDescription.apply(pc, arguments); + }; + } + }, + + shimGetSendersWithDtmf: function(window) { + // Overrides addTrack/removeTrack, depends on shimAddTrackRemoveTrack. + if (typeof window === 'object' && window.RTCPeerConnection && + !('getSenders' in window.RTCPeerConnection.prototype) && + 'createDTMFSender' in window.RTCPeerConnection.prototype) { + var shimSenderWithDtmf = function(pc, track) { + return { + track: track, + get dtmf() { + if (this._dtmf === undefined) { + if (track.kind === 'audio') { + this._dtmf = pc.createDTMFSender(track); + } else { + this._dtmf = null; + } + } + return this._dtmf; + }, + _pc: pc + }; + }; + + // augment addTrack when getSenders is not available. + if (!window.RTCPeerConnection.prototype.getSenders) { + window.RTCPeerConnection.prototype.getSenders = function() { + this._senders = this._senders || []; + return this._senders.slice(); // return a copy of the internal state. + }; + var origAddTrack = window.RTCPeerConnection.prototype.addTrack; + window.RTCPeerConnection.prototype.addTrack = function(track, stream) { + var pc = this; + var sender = origAddTrack.apply(pc, arguments); + if (!sender) { + sender = shimSenderWithDtmf(pc, track); + pc._senders.push(sender); + } + return sender; + }; + + var origRemoveTrack = window.RTCPeerConnection.prototype.removeTrack; + window.RTCPeerConnection.prototype.removeTrack = function(sender) { + var pc = this; + origRemoveTrack.apply(pc, arguments); + var idx = pc._senders.indexOf(sender); + if (idx !== -1) { + pc._senders.splice(idx, 1); + } + }; + } + var origAddStream = window.RTCPeerConnection.prototype.addStream; + window.RTCPeerConnection.prototype.addStream = function(stream) { + var pc = this; + pc._senders = pc._senders || []; + origAddStream.apply(pc, [stream]); + stream.getTracks().forEach(function(track) { + pc._senders.push(shimSenderWithDtmf(pc, track)); + }); + }; + + var origRemoveStream = window.RTCPeerConnection.prototype.removeStream; + window.RTCPeerConnection.prototype.removeStream = function(stream) { + var pc = this; + pc._senders = pc._senders || []; + origRemoveStream.apply(pc, [stream]); + + stream.getTracks().forEach(function(track) { + var sender = pc._senders.find(function(s) { + return s.track === track; + }); + if (sender) { + pc._senders.splice(pc._senders.indexOf(sender), 1); // remove sender + } + }); + }; + } else if (typeof window === 'object' && window.RTCPeerConnection && + 'getSenders' in window.RTCPeerConnection.prototype && + 'createDTMFSender' in window.RTCPeerConnection.prototype && + window.RTCRtpSender && + !('dtmf' in window.RTCRtpSender.prototype)) { + var origGetSenders = window.RTCPeerConnection.prototype.getSenders; + window.RTCPeerConnection.prototype.getSenders = function() { + var pc = this; + var senders = origGetSenders.apply(pc, []); + senders.forEach(function(sender) { + sender._pc = pc; + }); + return senders; + }; + + Object.defineProperty(window.RTCRtpSender.prototype, 'dtmf', { + get: function() { + if (this._dtmf === undefined) { + if (this.track.kind === 'audio') { + this._dtmf = this._pc.createDTMFSender(this.track); + } else { + this._dtmf = null; + } + } + return this._dtmf; + } + }); + } + }, + + shimSourceObject: function(window) { + var URL = window && window.URL; + + if (typeof window === 'object') { + if (window.HTMLMediaElement && + !('srcObject' in window.HTMLMediaElement.prototype)) { + // Shim the srcObject property, once, when HTMLMediaElement is found. + Object.defineProperty(window.HTMLMediaElement.prototype, 'srcObject', { + get: function() { + return this._srcObject; + }, + set: function(stream) { + var self = this; + // Use _srcObject as a private property for this shim + this._srcObject = stream; + if (this.src) { + URL.revokeObjectURL(this.src); + } + + if (!stream) { + this.src = ''; + return undefined; + } + this.src = URL.createObjectURL(stream); + // We need to recreate the blob url when a track is added or + // removed. Doing it manually since we want to avoid a recursion. + stream.addEventListener('addtrack', function() { + if (self.src) { + URL.revokeObjectURL(self.src); + } + self.src = URL.createObjectURL(stream); + }); + stream.addEventListener('removetrack', function() { + if (self.src) { + URL.revokeObjectURL(self.src); + } + self.src = URL.createObjectURL(stream); + }); + } + }); + } + } + }, + + shimAddTrackRemoveTrack: function(window) { + var browserDetails = utils.detectBrowser(window); + // shim addTrack and removeTrack. + if (window.RTCPeerConnection.prototype.addTrack && + browserDetails.version >= 63) { + return; + } + + // also shim pc.getLocalStreams when addTrack is shimmed + // to return the original streams. + var origGetLocalStreams = window.RTCPeerConnection.prototype + .getLocalStreams; + window.RTCPeerConnection.prototype.getLocalStreams = function() { + var self = this; + var nativeStreams = origGetLocalStreams.apply(this); + self._reverseStreams = self._reverseStreams || {}; + return nativeStreams.map(function(stream) { + return self._reverseStreams[stream.id]; + }); + }; + + var origAddStream = window.RTCPeerConnection.prototype.addStream; + window.RTCPeerConnection.prototype.addStream = function(stream) { + var pc = this; + pc._streams = pc._streams || {}; + pc._reverseStreams = pc._reverseStreams || {}; + + stream.getTracks().forEach(function(track) { + var alreadyExists = pc.getSenders().find(function(s) { + return s.track === track; + }); + if (alreadyExists) { + throw new DOMException('Track already exists.', + 'InvalidAccessError'); + } + }); + // Add identity mapping for consistency with addTrack. + // Unless this is being used with a stream from addTrack. + if (!pc._reverseStreams[stream.id]) { + var newStream = new window.MediaStream(stream.getTracks()); + pc._streams[stream.id] = newStream; + pc._reverseStreams[newStream.id] = stream; + stream = newStream; + } + origAddStream.apply(pc, [stream]); + }; + + var origRemoveStream = window.RTCPeerConnection.prototype.removeStream; + window.RTCPeerConnection.prototype.removeStream = function(stream) { + var pc = this; + pc._streams = pc._streams || {}; + pc._reverseStreams = pc._reverseStreams || {}; + + origRemoveStream.apply(pc, [(pc._streams[stream.id] || stream)]); + delete pc._reverseStreams[(pc._streams[stream.id] ? + pc._streams[stream.id].id : stream.id)]; + delete pc._streams[stream.id]; + }; + + window.RTCPeerConnection.prototype.addTrack = function(track, stream) { + var pc = this; + if (pc.signalingState === 'closed') { + throw new DOMException( + 'The RTCPeerConnection\'s signalingState is \'closed\'.', + 'InvalidStateError'); + } + var streams = [].slice.call(arguments, 1); + if (streams.length !== 1 || + !streams[0].getTracks().find(function(t) { + return t === track; + })) { + // this is not fully correct but all we can manage without + // [[associated MediaStreams]] internal slot. + throw new DOMException( + 'The adapter.js addTrack polyfill only supports a single ' + + ' stream which is associated with the specified track.', + 'NotSupportedError'); + } + + var alreadyExists = pc.getSenders().find(function(s) { + return s.track === track; + }); + if (alreadyExists) { + throw new DOMException('Track already exists.', + 'InvalidAccessError'); + } + + pc._streams = pc._streams || {}; + pc._reverseStreams = pc._reverseStreams || {}; + var oldStream = pc._streams[stream.id]; + if (oldStream) { + // this is using odd Chrome behaviour, use with caution: + // https://bugs.chromium.org/p/webrtc/issues/detail?id=7815 + // Note: we rely on the high-level addTrack/dtmf shim to + // create the sender with a dtmf sender. + oldStream.addTrack(track); + + // Trigger ONN async. + Promise.resolve().then(function() { + pc.dispatchEvent(new Event('negotiationneeded')); + }); + } else { + var newStream = new window.MediaStream([track]); + pc._streams[stream.id] = newStream; + pc._reverseStreams[newStream.id] = stream; + pc.addStream(newStream); + } + return pc.getSenders().find(function(s) { + return s.track === track; + }); + }; + + // replace the internal stream id with the external one and + // vice versa. + function replaceInternalStreamId(pc, description) { + var sdp = description.sdp; + Object.keys(pc._reverseStreams || []).forEach(function(internalId) { + var externalStream = pc._reverseStreams[internalId]; + var internalStream = pc._streams[externalStream.id]; + sdp = sdp.replace(new RegExp(internalStream.id, 'g'), + externalStream.id); + }); + return new RTCSessionDescription({ + type: description.type, + sdp: sdp + }); + } + function replaceExternalStreamId(pc, description) { + var sdp = description.sdp; + Object.keys(pc._reverseStreams || []).forEach(function(internalId) { + var externalStream = pc._reverseStreams[internalId]; + var internalStream = pc._streams[externalStream.id]; + sdp = sdp.replace(new RegExp(externalStream.id, 'g'), + internalStream.id); + }); + return new RTCSessionDescription({ + type: description.type, + sdp: sdp + }); + } + ['createOffer', 'createAnswer'].forEach(function(method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + window.RTCPeerConnection.prototype[method] = function() { + var pc = this; + var args = arguments; + var isLegacyCall = arguments.length && + typeof arguments[0] === 'function'; + if (isLegacyCall) { + return nativeMethod.apply(pc, [ + function(description) { + var desc = replaceInternalStreamId(pc, description); + args[0].apply(null, [desc]); + }, + function(err) { + if (args[1]) { + args[1].apply(null, err); + } + }, arguments[2] + ]); + } + return nativeMethod.apply(pc, arguments) + .then(function(description) { + return replaceInternalStreamId(pc, description); + }); + }; + }); + + var origSetLocalDescription = + window.RTCPeerConnection.prototype.setLocalDescription; + window.RTCPeerConnection.prototype.setLocalDescription = function() { + var pc = this; + if (!arguments.length || !arguments[0].type) { + return origSetLocalDescription.apply(pc, arguments); + } + arguments[0] = replaceExternalStreamId(pc, arguments[0]); + return origSetLocalDescription.apply(pc, arguments); + }; + + // TODO: mangle getStats: https://w3c.github.io/webrtc-stats/#dom-rtcmediastreamstats-streamidentifier + + var origLocalDescription = Object.getOwnPropertyDescriptor( + window.RTCPeerConnection.prototype, 'localDescription'); + Object.defineProperty(window.RTCPeerConnection.prototype, + 'localDescription', { + get: function() { + var pc = this; + var description = origLocalDescription.get.apply(this); + if (description.type === '') { + return description; + } + return replaceInternalStreamId(pc, description); + } + }); + + window.RTCPeerConnection.prototype.removeTrack = function(sender) { + var pc = this; + if (pc.signalingState === 'closed') { + throw new DOMException( + 'The RTCPeerConnection\'s signalingState is \'closed\'.', + 'InvalidStateError'); + } + // We can not yet check for sender instanceof RTCRtpSender + // since we shim RTPSender. So we check if sender._pc is set. + if (!sender._pc) { + throw new DOMException('Argument 1 of RTCPeerConnection.removeTrack ' + + 'does not implement interface RTCRtpSender.', 'TypeError'); + } + var isLocal = sender._pc === pc; + if (!isLocal) { + throw new DOMException('Sender was not created by this connection.', + 'InvalidAccessError'); + } + + // Search for the native stream the senders track belongs to. + pc._streams = pc._streams || {}; + var stream; + Object.keys(pc._streams).forEach(function(streamid) { + var hasTrack = pc._streams[streamid].getTracks().find(function(track) { + return sender.track === track; + }); + if (hasTrack) { + stream = pc._streams[streamid]; + } + }); + + if (stream) { + if (stream.getTracks().length === 1) { + // if this is the last track of the stream, remove the stream. This + // takes care of any shimmed _senders. + pc.removeStream(pc._reverseStreams[stream.id]); + } else { + // relying on the same odd chrome behaviour as above. + stream.removeTrack(sender.track); + } + pc.dispatchEvent(new Event('negotiationneeded')); + } + }; + }, + + shimPeerConnection: function(window) { + var browserDetails = utils.detectBrowser(window); + + // The RTCPeerConnection object. + if (!window.RTCPeerConnection) { + window.RTCPeerConnection = function(pcConfig, pcConstraints) { + // Translate iceTransportPolicy to iceTransports, + // see https://code.google.com/p/webrtc/issues/detail?id=4869 + // this was fixed in M56 along with unprefixing RTCPeerConnection. + logging('PeerConnection'); + if (pcConfig && pcConfig.iceTransportPolicy) { + pcConfig.iceTransports = pcConfig.iceTransportPolicy; + } + + return new window.webkitRTCPeerConnection(pcConfig, pcConstraints); + }; + window.RTCPeerConnection.prototype = + window.webkitRTCPeerConnection.prototype; + // wrap static methods. Currently just generateCertificate. + if (window.webkitRTCPeerConnection.generateCertificate) { + Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', { + get: function() { + return window.webkitRTCPeerConnection.generateCertificate; + } + }); + } + } else { + // migrate from non-spec RTCIceServer.url to RTCIceServer.urls + var OrigPeerConnection = window.RTCPeerConnection; + window.RTCPeerConnection = function(pcConfig, pcConstraints) { + if (pcConfig && pcConfig.iceServers) { + var newIceServers = []; + for (var i = 0; i < pcConfig.iceServers.length; i++) { + var server = pcConfig.iceServers[i]; + if (!server.hasOwnProperty('urls') && + server.hasOwnProperty('url')) { + utils.deprecated('RTCIceServer.url', 'RTCIceServer.urls'); + server = JSON.parse(JSON.stringify(server)); + server.urls = server.url; + newIceServers.push(server); + } else { + newIceServers.push(pcConfig.iceServers[i]); + } + } + pcConfig.iceServers = newIceServers; + } + return new OrigPeerConnection(pcConfig, pcConstraints); + }; + window.RTCPeerConnection.prototype = OrigPeerConnection.prototype; + // wrap static methods. Currently just generateCertificate. + Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', { + get: function() { + return OrigPeerConnection.generateCertificate; + } + }); + } + + var origGetStats = window.RTCPeerConnection.prototype.getStats; + window.RTCPeerConnection.prototype.getStats = function(selector, + successCallback, errorCallback) { + var self = this; + var args = arguments; + + // If selector is a function then we are in the old style stats so just + // pass back the original getStats format to avoid breaking old users. + if (arguments.length > 0 && typeof selector === 'function') { + return origGetStats.apply(this, arguments); + } + + // When spec-style getStats is supported, return those when called with + // either no arguments or the selector argument is null. + if (origGetStats.length === 0 && (arguments.length === 0 || + typeof arguments[0] !== 'function')) { + return origGetStats.apply(this, []); + } + + var fixChromeStats_ = function(response) { + var standardReport = {}; + var reports = response.result(); + reports.forEach(function(report) { + var standardStats = { + id: report.id, + timestamp: report.timestamp, + type: { + localcandidate: 'local-candidate', + remotecandidate: 'remote-candidate' + }[report.type] || report.type + }; + report.names().forEach(function(name) { + standardStats[name] = report.stat(name); + }); + standardReport[standardStats.id] = standardStats; + }); + + return standardReport; + }; + + // shim getStats with maplike support + var makeMapStats = function(stats) { + return new Map(Object.keys(stats).map(function(key) { + return [key, stats[key]]; + })); + }; + + if (arguments.length >= 2) { + var successCallbackWrapper_ = function(response) { + args[1](makeMapStats(fixChromeStats_(response))); + }; + + return origGetStats.apply(this, [successCallbackWrapper_, + arguments[0]]); + } + + // promise-support + return new Promise(function(resolve, reject) { + origGetStats.apply(self, [ + function(response) { + resolve(makeMapStats(fixChromeStats_(response))); + }, reject]); + }).then(successCallback, errorCallback); + }; + + // add promise support -- natively available in Chrome 51 + if (browserDetails.version < 51) { + ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate'] + .forEach(function(method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + window.RTCPeerConnection.prototype[method] = function() { + var args = arguments; + var self = this; + var promise = new Promise(function(resolve, reject) { + nativeMethod.apply(self, [args[0], resolve, reject]); + }); + if (args.length < 2) { + return promise; + } + return promise.then(function() { + args[1].apply(null, []); + }, + function(err) { + if (args.length >= 3) { + args[2].apply(null, [err]); + } + }); + }; + }); + } + + // promise support for createOffer and createAnswer. Available (without + // bugs) since M52: crbug/619289 + if (browserDetails.version < 52) { + ['createOffer', 'createAnswer'].forEach(function(method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + window.RTCPeerConnection.prototype[method] = function() { + var self = this; + if (arguments.length < 1 || (arguments.length === 1 && + typeof arguments[0] === 'object')) { + var opts = arguments.length === 1 ? arguments[0] : undefined; + return new Promise(function(resolve, reject) { + nativeMethod.apply(self, [resolve, reject, opts]); + }); + } + return nativeMethod.apply(this, arguments); + }; + }); + } + + // shim implicit creation of RTCSessionDescription/RTCIceCandidate + ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate'] + .forEach(function(method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + window.RTCPeerConnection.prototype[method] = function() { + arguments[0] = new ((method === 'addIceCandidate') ? + window.RTCIceCandidate : + window.RTCSessionDescription)(arguments[0]); + return nativeMethod.apply(this, arguments); + }; + }); + + // support for addIceCandidate(null or undefined) + var nativeAddIceCandidate = + window.RTCPeerConnection.prototype.addIceCandidate; + window.RTCPeerConnection.prototype.addIceCandidate = function() { + if (!arguments[0]) { + if (arguments[1]) { + arguments[1].apply(null); + } + return Promise.resolve(); + } + return nativeAddIceCandidate.apply(this, arguments); + }; + } +}; + + +// Expose public methods. +module.exports = { + shimMediaStream: chromeShim.shimMediaStream, + shimOnTrack: chromeShim.shimOnTrack, + shimAddTrackRemoveTrack: chromeShim.shimAddTrackRemoveTrack, + shimGetSendersWithDtmf: chromeShim.shimGetSendersWithDtmf, + shimSourceObject: chromeShim.shimSourceObject, + shimPeerConnection: chromeShim.shimPeerConnection, + shimGetUserMedia: require('./getusermedia') +}; + +},{"../utils.js":13,"./getusermedia":6}],6:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; +var utils = require('../utils.js'); +var logging = utils.log; + +// Expose public methods. +module.exports = function(window) { + var browserDetails = utils.detectBrowser(window); + var navigator = window && window.navigator; + + var constraintsToChrome_ = function(c) { + if (typeof c !== 'object' || c.mandatory || c.optional) { + return c; + } + var cc = {}; + Object.keys(c).forEach(function(key) { + if (key === 'require' || key === 'advanced' || key === 'mediaSource') { + return; + } + var r = (typeof c[key] === 'object') ? c[key] : {ideal: c[key]}; + if (r.exact !== undefined && typeof r.exact === 'number') { + r.min = r.max = r.exact; + } + var oldname_ = function(prefix, name) { + if (prefix) { + return prefix + name.charAt(0).toUpperCase() + name.slice(1); + } + return (name === 'deviceId') ? 'sourceId' : name; + }; + if (r.ideal !== undefined) { + cc.optional = cc.optional || []; + var oc = {}; + if (typeof r.ideal === 'number') { + oc[oldname_('min', key)] = r.ideal; + cc.optional.push(oc); + oc = {}; + oc[oldname_('max', key)] = r.ideal; + cc.optional.push(oc); + } else { + oc[oldname_('', key)] = r.ideal; + cc.optional.push(oc); + } + } + if (r.exact !== undefined && typeof r.exact !== 'number') { + cc.mandatory = cc.mandatory || {}; + cc.mandatory[oldname_('', key)] = r.exact; + } else { + ['min', 'max'].forEach(function(mix) { + if (r[mix] !== undefined) { + cc.mandatory = cc.mandatory || {}; + cc.mandatory[oldname_(mix, key)] = r[mix]; + } + }); + } + }); + if (c.advanced) { + cc.optional = (cc.optional || []).concat(c.advanced); + } + return cc; + }; + + var shimConstraints_ = function(constraints, func) { + constraints = JSON.parse(JSON.stringify(constraints)); + if (constraints && typeof constraints.audio === 'object') { + var remap = function(obj, a, b) { + if (a in obj && !(b in obj)) { + obj[b] = obj[a]; + delete obj[a]; + } + }; + constraints = JSON.parse(JSON.stringify(constraints)); + remap(constraints.audio, 'autoGainControl', 'googAutoGainControl'); + remap(constraints.audio, 'noiseSuppression', 'googNoiseSuppression'); + constraints.audio = constraintsToChrome_(constraints.audio); + } + if (constraints && typeof constraints.video === 'object') { + // Shim facingMode for mobile & surface pro. + var face = constraints.video.facingMode; + face = face && ((typeof face === 'object') ? face : {ideal: face}); + var getSupportedFacingModeLies = browserDetails.version < 66; + + if ((face && (face.exact === 'user' || face.exact === 'environment' || + face.ideal === 'user' || face.ideal === 'environment')) && + !(navigator.mediaDevices.getSupportedConstraints && + navigator.mediaDevices.getSupportedConstraints().facingMode && + !getSupportedFacingModeLies)) { + delete constraints.video.facingMode; + var matches; + if (face.exact === 'environment' || face.ideal === 'environment') { + matches = ['back', 'rear']; + } else if (face.exact === 'user' || face.ideal === 'user') { + matches = ['front']; + } + if (matches) { + // Look for matches in label, or use last cam for back (typical). + return navigator.mediaDevices.enumerateDevices() + .then(function(devices) { + devices = devices.filter(function(d) { + return d.kind === 'videoinput'; + }); + var dev = devices.find(function(d) { + return matches.some(function(match) { + return d.label.toLowerCase().indexOf(match) !== -1; + }); + }); + if (!dev && devices.length && matches.indexOf('back') !== -1) { + dev = devices[devices.length - 1]; // more likely the back cam + } + if (dev) { + constraints.video.deviceId = face.exact ? {exact: dev.deviceId} : + {ideal: dev.deviceId}; + } + constraints.video = constraintsToChrome_(constraints.video); + logging('chrome: ' + JSON.stringify(constraints)); + return func(constraints); + }); + } + } + constraints.video = constraintsToChrome_(constraints.video); + } + logging('chrome: ' + JSON.stringify(constraints)); + return func(constraints); + }; + + var shimError_ = function(e) { + return { + name: { + PermissionDeniedError: 'NotAllowedError', + InvalidStateError: 'NotReadableError', + DevicesNotFoundError: 'NotFoundError', + ConstraintNotSatisfiedError: 'OverconstrainedError', + TrackStartError: 'NotReadableError', + MediaDeviceFailedDueToShutdown: 'NotReadableError', + MediaDeviceKillSwitchOn: 'NotReadableError' + }[e.name] || e.name, + message: e.message, + constraint: e.constraintName, + toString: function() { + return this.name + (this.message && ': ') + this.message; + } + }; + }; + + var getUserMedia_ = function(constraints, onSuccess, onError) { + shimConstraints_(constraints, function(c) { + navigator.webkitGetUserMedia(c, onSuccess, function(e) { + if (onError) { + onError(shimError_(e)); + } + }); + }); + }; + + navigator.getUserMedia = getUserMedia_; + + // Returns the result of getUserMedia as a Promise. + var getUserMediaPromise_ = function(constraints) { + return new Promise(function(resolve, reject) { + navigator.getUserMedia(constraints, resolve, reject); + }); + }; + + if (!navigator.mediaDevices) { + navigator.mediaDevices = { + getUserMedia: getUserMediaPromise_, + enumerateDevices: function() { + return new Promise(function(resolve) { + var kinds = {audio: 'audioinput', video: 'videoinput'}; + return window.MediaStreamTrack.getSources(function(devices) { + resolve(devices.map(function(device) { + return {label: device.label, + kind: kinds[device.kind], + deviceId: device.id, + groupId: ''}; + })); + }); + }); + }, + getSupportedConstraints: function() { + return { + deviceId: true, echoCancellation: true, facingMode: true, + frameRate: true, height: true, width: true + }; + } + }; + } + + // A shim for getUserMedia method on the mediaDevices object. + // TODO(KaptenJansson) remove once implemented in Chrome stable. + if (!navigator.mediaDevices.getUserMedia) { + navigator.mediaDevices.getUserMedia = function(constraints) { + return getUserMediaPromise_(constraints); + }; + } else { + // Even though Chrome 45 has navigator.mediaDevices and a getUserMedia + // function which returns a Promise, it does not accept spec-style + // constraints. + var origGetUserMedia = navigator.mediaDevices.getUserMedia. + bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function(cs) { + return shimConstraints_(cs, function(c) { + return origGetUserMedia(c).then(function(stream) { + if (c.audio && !stream.getAudioTracks().length || + c.video && !stream.getVideoTracks().length) { + stream.getTracks().forEach(function(track) { + track.stop(); + }); + throw new DOMException('', 'NotFoundError'); + } + return stream; + }, function(e) { + return Promise.reject(shimError_(e)); + }); + }); + }; + } + + // Dummy devicechange event methods. + // TODO(KaptenJansson) remove once implemented in Chrome stable. + if (typeof navigator.mediaDevices.addEventListener === 'undefined') { + navigator.mediaDevices.addEventListener = function() { + logging('Dummy mediaDevices.addEventListener called.'); + }; + } + if (typeof navigator.mediaDevices.removeEventListener === 'undefined') { + navigator.mediaDevices.removeEventListener = function() { + logging('Dummy mediaDevices.removeEventListener called.'); + }; + } +}; + +},{"../utils.js":13}],7:[function(require,module,exports){ +/* + * Copyright (c) 2017 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var SDPUtils = require('sdp'); +var utils = require('./utils'); + +// Wraps the peerconnection event eventNameToWrap in a function +// which returns the modified event object. +function wrapPeerConnectionEvent(window, eventNameToWrap, wrapper) { + if (!window.RTCPeerConnection) { + return; + } + var proto = window.RTCPeerConnection.prototype; + var nativeAddEventListener = proto.addEventListener; + proto.addEventListener = function(nativeEventName, cb) { + if (nativeEventName !== eventNameToWrap) { + return nativeAddEventListener.apply(this, arguments); + } + var wrappedCallback = function(e) { + cb(wrapper(e)); + }; + this._eventMap = this._eventMap || {}; + this._eventMap[cb] = wrappedCallback; + return nativeAddEventListener.apply(this, [nativeEventName, + wrappedCallback]); + }; + + var nativeRemoveEventListener = proto.removeEventListener; + proto.removeEventListener = function(nativeEventName, cb) { + if (nativeEventName !== eventNameToWrap || !this._eventMap + || !this._eventMap[cb]) { + return nativeRemoveEventListener.apply(this, arguments); + } + var unwrappedCb = this._eventMap[cb]; + delete this._eventMap[cb]; + return nativeRemoveEventListener.apply(this, [nativeEventName, + unwrappedCb]); + }; + + Object.defineProperty(proto, 'on' + eventNameToWrap, { + get: function() { + return this['_on' + eventNameToWrap]; + }, + set: function(cb) { + if (this['_on' + eventNameToWrap]) { + this.removeEventListener(eventNameToWrap, + this['_on' + eventNameToWrap]); + delete this['_on' + eventNameToWrap]; + } + if (cb) { + this.addEventListener(eventNameToWrap, + this['_on' + eventNameToWrap] = cb); + } + } + }); +} + +module.exports = { + shimRTCIceCandidate: function(window) { + // foundation is arbitrarily chosen as an indicator for full support for + // https://w3c.github.io/webrtc-pc/#rtcicecandidate-interface + if (window.RTCIceCandidate && 'foundation' in + window.RTCIceCandidate.prototype) { + return; + } + + var NativeRTCIceCandidate = window.RTCIceCandidate; + window.RTCIceCandidate = function(args) { + // Remove the a= which shouldn't be part of the candidate string. + if (typeof args === 'object' && args.candidate && + args.candidate.indexOf('a=') === 0) { + args = JSON.parse(JSON.stringify(args)); + args.candidate = args.candidate.substr(2); + } + + // Augment the native candidate with the parsed fields. + var nativeCandidate = new NativeRTCIceCandidate(args); + var parsedCandidate = SDPUtils.parseCandidate(args.candidate); + var augmentedCandidate = Object.assign(nativeCandidate, + parsedCandidate); + + // Add a serializer that does not serialize the extra attributes. + augmentedCandidate.toJSON = function() { + return { + candidate: augmentedCandidate.candidate, + sdpMid: augmentedCandidate.sdpMid, + sdpMLineIndex: augmentedCandidate.sdpMLineIndex, + usernameFragment: augmentedCandidate.usernameFragment, + }; + }; + return augmentedCandidate; + }; + + // Hook up the augmented candidate in onicecandidate and + // addEventListener('icecandidate', ...) + wrapPeerConnectionEvent(window, 'icecandidate', function(e) { + if (e.candidate) { + Object.defineProperty(e, 'candidate', { + value: new window.RTCIceCandidate(e.candidate), + writable: 'false' + }); + } + return e; + }); + }, + + // shimCreateObjectURL must be called before shimSourceObject to avoid loop. + + shimCreateObjectURL: function(window) { + var URL = window && window.URL; + + if (!(typeof window === 'object' && window.HTMLMediaElement && + 'srcObject' in window.HTMLMediaElement.prototype && + URL.createObjectURL && URL.revokeObjectURL)) { + // Only shim CreateObjectURL using srcObject if srcObject exists. + return undefined; + } + + var nativeCreateObjectURL = URL.createObjectURL.bind(URL); + var nativeRevokeObjectURL = URL.revokeObjectURL.bind(URL); + var streams = new Map(), newId = 0; + + URL.createObjectURL = function(stream) { + if ('getTracks' in stream) { + var url = 'polyblob:' + (++newId); + streams.set(url, stream); + utils.deprecated('URL.createObjectURL(stream)', + 'elem.srcObject = stream'); + return url; + } + return nativeCreateObjectURL(stream); + }; + URL.revokeObjectURL = function(url) { + nativeRevokeObjectURL(url); + streams.delete(url); + }; + + var dsc = Object.getOwnPropertyDescriptor(window.HTMLMediaElement.prototype, + 'src'); + Object.defineProperty(window.HTMLMediaElement.prototype, 'src', { + get: function() { + return dsc.get.apply(this); + }, + set: function(url) { + this.srcObject = streams.get(url) || null; + return dsc.set.apply(this, [url]); + } + }); + + var nativeSetAttribute = window.HTMLMediaElement.prototype.setAttribute; + window.HTMLMediaElement.prototype.setAttribute = function() { + if (arguments.length === 2 && + ('' + arguments[0]).toLowerCase() === 'src') { + this.srcObject = streams.get(arguments[1]) || null; + } + return nativeSetAttribute.apply(this, arguments); + }; + } +}; + +},{"./utils":13,"sdp":2}],8:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var utils = require('../utils'); +var shimRTCPeerConnection = require('rtcpeerconnection-shim'); + +module.exports = { + shimGetUserMedia: require('./getusermedia'), + shimPeerConnection: function(window) { + var browserDetails = utils.detectBrowser(window); + + if (window.RTCIceGatherer) { + // ORTC defines an RTCIceCandidate object but no constructor. + // Not implemented in Edge. + if (!window.RTCIceCandidate) { + window.RTCIceCandidate = function(args) { + return args; + }; + } + // ORTC does not have a session description object but + // other browsers (i.e. Chrome) that will support both PC and ORTC + // in the future might have this defined already. + if (!window.RTCSessionDescription) { + window.RTCSessionDescription = function(args) { + return args; + }; + } + // this adds an additional event listener to MediaStrackTrack that signals + // when a tracks enabled property was changed. Workaround for a bug in + // addStream, see below. No longer required in 15025+ + if (browserDetails.version < 15025) { + var origMSTEnabled = Object.getOwnPropertyDescriptor( + window.MediaStreamTrack.prototype, 'enabled'); + Object.defineProperty(window.MediaStreamTrack.prototype, 'enabled', { + set: function(value) { + origMSTEnabled.set.call(this, value); + var ev = new Event('enabled'); + ev.enabled = value; + this.dispatchEvent(ev); + } + }); + } + } + + // ORTC defines the DTMF sender a bit different. + // https://github.com/w3c/ortc/issues/714 + if (window.RTCRtpSender && !('dtmf' in window.RTCRtpSender.prototype)) { + Object.defineProperty(window.RTCRtpSender.prototype, 'dtmf', { + get: function() { + if (this._dtmf === undefined) { + if (this.track.kind === 'audio') { + this._dtmf = new window.RTCDtmfSender(this); + } else if (this.track.kind === 'video') { + this._dtmf = null; + } + } + return this._dtmf; + } + }); + } + + window.RTCPeerConnection = + shimRTCPeerConnection(window, browserDetails.version); + }, + shimReplaceTrack: function(window) { + // ORTC has replaceTrack -- https://github.com/w3c/ortc/issues/614 + if (window.RTCRtpSender && + !('replaceTrack' in window.RTCRtpSender.prototype)) { + window.RTCRtpSender.prototype.replaceTrack = + window.RTCRtpSender.prototype.setTrack; + } + } +}; + +},{"../utils":13,"./getusermedia":9,"rtcpeerconnection-shim":1}],9:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +// Expose public methods. +module.exports = function(window) { + var navigator = window && window.navigator; + + var shimError_ = function(e) { + return { + name: {PermissionDeniedError: 'NotAllowedError'}[e.name] || e.name, + message: e.message, + constraint: e.constraint, + toString: function() { + return this.name; + } + }; + }; + + // getUserMedia error shim. + var origGetUserMedia = navigator.mediaDevices.getUserMedia. + bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function(c) { + return origGetUserMedia(c).catch(function(e) { + return Promise.reject(shimError_(e)); + }); + }; +}; + +},{}],10:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var utils = require('../utils'); + +var firefoxShim = { + shimOnTrack: function(window) { + if (typeof window === 'object' && window.RTCPeerConnection && !('ontrack' in + window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'ontrack', { + get: function() { + return this._ontrack; + }, + set: function(f) { + if (this._ontrack) { + this.removeEventListener('track', this._ontrack); + this.removeEventListener('addstream', this._ontrackpoly); + } + this.addEventListener('track', this._ontrack = f); + this.addEventListener('addstream', this._ontrackpoly = function(e) { + e.stream.getTracks().forEach(function(track) { + var event = new Event('track'); + event.track = track; + event.receiver = {track: track}; + event.transceiver = {receiver: event.receiver}; + event.streams = [e.stream]; + this.dispatchEvent(event); + }.bind(this)); + }.bind(this)); + } + }); + } + if (typeof window === 'object' && window.RTCTrackEvent && + ('receiver' in window.RTCTrackEvent.prototype) && + !('transceiver' in window.RTCTrackEvent.prototype)) { + Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', { + get: function() { + return {receiver: this.receiver}; + } + }); + } + }, + + shimSourceObject: function(window) { + // Firefox has supported mozSrcObject since FF22, unprefixed in 42. + if (typeof window === 'object') { + if (window.HTMLMediaElement && + !('srcObject' in window.HTMLMediaElement.prototype)) { + // Shim the srcObject property, once, when HTMLMediaElement is found. + Object.defineProperty(window.HTMLMediaElement.prototype, 'srcObject', { + get: function() { + return this.mozSrcObject; + }, + set: function(stream) { + this.mozSrcObject = stream; + } + }); + } + } + }, + + shimPeerConnection: function(window) { + var browserDetails = utils.detectBrowser(window); + + if (typeof window !== 'object' || !(window.RTCPeerConnection || + window.mozRTCPeerConnection)) { + return; // probably media.peerconnection.enabled=false in about:config + } + // The RTCPeerConnection object. + if (!window.RTCPeerConnection) { + window.RTCPeerConnection = function(pcConfig, pcConstraints) { + if (browserDetails.version < 38) { + // .urls is not supported in FF < 38. + // create RTCIceServers with a single url. + if (pcConfig && pcConfig.iceServers) { + var newIceServers = []; + for (var i = 0; i < pcConfig.iceServers.length; i++) { + var server = pcConfig.iceServers[i]; + if (server.hasOwnProperty('urls')) { + for (var j = 0; j < server.urls.length; j++) { + var newServer = { + url: server.urls[j] + }; + if (server.urls[j].indexOf('turn') === 0) { + newServer.username = server.username; + newServer.credential = server.credential; + } + newIceServers.push(newServer); + } + } else { + newIceServers.push(pcConfig.iceServers[i]); + } + } + pcConfig.iceServers = newIceServers; + } + } + return new window.mozRTCPeerConnection(pcConfig, pcConstraints); + }; + window.RTCPeerConnection.prototype = + window.mozRTCPeerConnection.prototype; + + // wrap static methods. Currently just generateCertificate. + if (window.mozRTCPeerConnection.generateCertificate) { + Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', { + get: function() { + return window.mozRTCPeerConnection.generateCertificate; + } + }); + } + + window.RTCSessionDescription = window.mozRTCSessionDescription; + window.RTCIceCandidate = window.mozRTCIceCandidate; + } + + // shim away need for obsolete RTCIceCandidate/RTCSessionDescription. + ['setLocalDescription', 'setRemoteDescription', 'addIceCandidate'] + .forEach(function(method) { + var nativeMethod = window.RTCPeerConnection.prototype[method]; + window.RTCPeerConnection.prototype[method] = function() { + arguments[0] = new ((method === 'addIceCandidate') ? + window.RTCIceCandidate : + window.RTCSessionDescription)(arguments[0]); + return nativeMethod.apply(this, arguments); + }; + }); + + // support for addIceCandidate(null or undefined) + var nativeAddIceCandidate = + window.RTCPeerConnection.prototype.addIceCandidate; + window.RTCPeerConnection.prototype.addIceCandidate = function() { + if (!arguments[0]) { + if (arguments[1]) { + arguments[1].apply(null); + } + return Promise.resolve(); + } + return nativeAddIceCandidate.apply(this, arguments); + }; + + // shim getStats with maplike support + var makeMapStats = function(stats) { + var map = new Map(); + Object.keys(stats).forEach(function(key) { + map.set(key, stats[key]); + map[key] = stats[key]; + }); + return map; + }; + + var modernStatsTypes = { + inboundrtp: 'inbound-rtp', + outboundrtp: 'outbound-rtp', + candidatepair: 'candidate-pair', + localcandidate: 'local-candidate', + remotecandidate: 'remote-candidate' + }; + + var nativeGetStats = window.RTCPeerConnection.prototype.getStats; + window.RTCPeerConnection.prototype.getStats = function( + selector, + onSucc, + onErr + ) { + return nativeGetStats.apply(this, [selector || null]) + .then(function(stats) { + if (browserDetails.version < 48) { + stats = makeMapStats(stats); + } + if (browserDetails.version < 53 && !onSucc) { + // Shim only promise getStats with spec-hyphens in type names + // Leave callback version alone; misc old uses of forEach before Map + try { + stats.forEach(function(stat) { + stat.type = modernStatsTypes[stat.type] || stat.type; + }); + } catch (e) { + if (e.name !== 'TypeError') { + throw e; + } + // Avoid TypeError: "type" is read-only, in old versions. 34-43ish + stats.forEach(function(stat, i) { + stats.set(i, Object.assign({}, stat, { + type: modernStatsTypes[stat.type] || stat.type + })); + }); + } + } + return stats; + }) + .then(onSucc, onErr); + }; + } +}; + +// Expose public methods. +module.exports = { + shimOnTrack: firefoxShim.shimOnTrack, + shimSourceObject: firefoxShim.shimSourceObject, + shimPeerConnection: firefoxShim.shimPeerConnection, + shimGetUserMedia: require('./getusermedia') +}; + +},{"../utils":13,"./getusermedia":11}],11:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var utils = require('../utils'); +var logging = utils.log; + +// Expose public methods. +module.exports = function(window) { + var browserDetails = utils.detectBrowser(window); + var navigator = window && window.navigator; + var MediaStreamTrack = window && window.MediaStreamTrack; + + var shimError_ = function(e) { + return { + name: { + InternalError: 'NotReadableError', + NotSupportedError: 'TypeError', + PermissionDeniedError: 'NotAllowedError', + SecurityError: 'NotAllowedError' + }[e.name] || e.name, + message: { + 'The operation is insecure.': 'The request is not allowed by the ' + + 'user agent or the platform in the current context.' + }[e.message] || e.message, + constraint: e.constraint, + toString: function() { + return this.name + (this.message && ': ') + this.message; + } + }; + }; + + // getUserMedia constraints shim. + var getUserMedia_ = function(constraints, onSuccess, onError) { + var constraintsToFF37_ = function(c) { + if (typeof c !== 'object' || c.require) { + return c; + } + var require = []; + Object.keys(c).forEach(function(key) { + if (key === 'require' || key === 'advanced' || key === 'mediaSource') { + return; + } + var r = c[key] = (typeof c[key] === 'object') ? + c[key] : {ideal: c[key]}; + if (r.min !== undefined || + r.max !== undefined || r.exact !== undefined) { + require.push(key); + } + if (r.exact !== undefined) { + if (typeof r.exact === 'number') { + r. min = r.max = r.exact; + } else { + c[key] = r.exact; + } + delete r.exact; + } + if (r.ideal !== undefined) { + c.advanced = c.advanced || []; + var oc = {}; + if (typeof r.ideal === 'number') { + oc[key] = {min: r.ideal, max: r.ideal}; + } else { + oc[key] = r.ideal; + } + c.advanced.push(oc); + delete r.ideal; + if (!Object.keys(r).length) { + delete c[key]; + } + } + }); + if (require.length) { + c.require = require; + } + return c; + }; + constraints = JSON.parse(JSON.stringify(constraints)); + if (browserDetails.version < 38) { + logging('spec: ' + JSON.stringify(constraints)); + if (constraints.audio) { + constraints.audio = constraintsToFF37_(constraints.audio); + } + if (constraints.video) { + constraints.video = constraintsToFF37_(constraints.video); + } + logging('ff37: ' + JSON.stringify(constraints)); + } + return navigator.mozGetUserMedia(constraints, onSuccess, function(e) { + onError(shimError_(e)); + }); + }; + + // Returns the result of getUserMedia as a Promise. + var getUserMediaPromise_ = function(constraints) { + return new Promise(function(resolve, reject) { + getUserMedia_(constraints, resolve, reject); + }); + }; + + // Shim for mediaDevices on older versions. + if (!navigator.mediaDevices) { + navigator.mediaDevices = {getUserMedia: getUserMediaPromise_, + addEventListener: function() { }, + removeEventListener: function() { } + }; + } + navigator.mediaDevices.enumerateDevices = + navigator.mediaDevices.enumerateDevices || function() { + return new Promise(function(resolve) { + var infos = [ + {kind: 'audioinput', deviceId: 'default', label: '', groupId: ''}, + {kind: 'videoinput', deviceId: 'default', label: '', groupId: ''} + ]; + resolve(infos); + }); + }; + + if (browserDetails.version < 41) { + // Work around http://bugzil.la/1169665 + var orgEnumerateDevices = + navigator.mediaDevices.enumerateDevices.bind(navigator.mediaDevices); + navigator.mediaDevices.enumerateDevices = function() { + return orgEnumerateDevices().then(undefined, function(e) { + if (e.name === 'NotFoundError') { + return []; + } + throw e; + }); + }; + } + if (browserDetails.version < 49) { + var origGetUserMedia = navigator.mediaDevices.getUserMedia. + bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function(c) { + return origGetUserMedia(c).then(function(stream) { + // Work around https://bugzil.la/802326 + if (c.audio && !stream.getAudioTracks().length || + c.video && !stream.getVideoTracks().length) { + stream.getTracks().forEach(function(track) { + track.stop(); + }); + throw new DOMException('The object can not be found here.', + 'NotFoundError'); + } + return stream; + }, function(e) { + return Promise.reject(shimError_(e)); + }); + }; + } + if (!(browserDetails.version > 55 && + 'autoGainControl' in navigator.mediaDevices.getSupportedConstraints())) { + var remap = function(obj, a, b) { + if (a in obj && !(b in obj)) { + obj[b] = obj[a]; + delete obj[a]; + } + }; + + var nativeGetUserMedia = navigator.mediaDevices.getUserMedia. + bind(navigator.mediaDevices); + navigator.mediaDevices.getUserMedia = function(c) { + if (typeof c === 'object' && typeof c.audio === 'object') { + c = JSON.parse(JSON.stringify(c)); + remap(c.audio, 'autoGainControl', 'mozAutoGainControl'); + remap(c.audio, 'noiseSuppression', 'mozNoiseSuppression'); + } + return nativeGetUserMedia(c); + }; + + if (MediaStreamTrack && MediaStreamTrack.prototype.getSettings) { + var nativeGetSettings = MediaStreamTrack.prototype.getSettings; + MediaStreamTrack.prototype.getSettings = function() { + var obj = nativeGetSettings.apply(this, arguments); + remap(obj, 'mozAutoGainControl', 'autoGainControl'); + remap(obj, 'mozNoiseSuppression', 'noiseSuppression'); + return obj; + }; + } + + if (MediaStreamTrack && MediaStreamTrack.prototype.applyConstraints) { + var nativeApplyConstraints = MediaStreamTrack.prototype.applyConstraints; + MediaStreamTrack.prototype.applyConstraints = function(c) { + if (this.kind === 'audio' && typeof c === 'object') { + c = JSON.parse(JSON.stringify(c)); + remap(c, 'autoGainControl', 'mozAutoGainControl'); + remap(c, 'noiseSuppression', 'mozNoiseSuppression'); + } + return nativeApplyConstraints.apply(this, [c]); + }; + } + } + navigator.getUserMedia = function(constraints, onSuccess, onError) { + if (browserDetails.version < 44) { + return getUserMedia_(constraints, onSuccess, onError); + } + // Replace Firefox 44+'s deprecation warning with unprefixed version. + utils.deprecated('navigator.getUserMedia', + 'navigator.mediaDevices.getUserMedia'); + navigator.mediaDevices.getUserMedia(constraints).then(onSuccess, onError); + }; +}; + +},{"../utils":13}],12:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ +'use strict'; +var utils = require('../utils'); + +var safariShim = { + // TODO: DrAlex, should be here, double check against LayoutTests + + // TODO: once the back-end for the mac port is done, add. + // TODO: check for webkitGTK+ + // shimPeerConnection: function() { }, + + shimLocalStreamsAPI: function(window) { + if (typeof window !== 'object' || !window.RTCPeerConnection) { + return; + } + if (!('getLocalStreams' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.getLocalStreams = function() { + if (!this._localStreams) { + this._localStreams = []; + } + return this._localStreams; + }; + } + if (!('getStreamById' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.getStreamById = function(id) { + var result = null; + if (this._localStreams) { + this._localStreams.forEach(function(stream) { + if (stream.id === id) { + result = stream; + } + }); + } + if (this._remoteStreams) { + this._remoteStreams.forEach(function(stream) { + if (stream.id === id) { + result = stream; + } + }); + } + return result; + }; + } + if (!('addStream' in window.RTCPeerConnection.prototype)) { + var _addTrack = window.RTCPeerConnection.prototype.addTrack; + window.RTCPeerConnection.prototype.addStream = function(stream) { + if (!this._localStreams) { + this._localStreams = []; + } + if (this._localStreams.indexOf(stream) === -1) { + this._localStreams.push(stream); + } + var self = this; + stream.getTracks().forEach(function(track) { + _addTrack.call(self, track, stream); + }); + }; + + window.RTCPeerConnection.prototype.addTrack = function(track, stream) { + if (stream) { + if (!this._localStreams) { + this._localStreams = [stream]; + } else if (this._localStreams.indexOf(stream) === -1) { + this._localStreams.push(stream); + } + } + _addTrack.call(this, track, stream); + }; + } + if (!('removeStream' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.removeStream = function(stream) { + if (!this._localStreams) { + this._localStreams = []; + } + var index = this._localStreams.indexOf(stream); + if (index === -1) { + return; + } + this._localStreams.splice(index, 1); + var self = this; + var tracks = stream.getTracks(); + this.getSenders().forEach(function(sender) { + if (tracks.indexOf(sender.track) !== -1) { + self.removeTrack(sender); + } + }); + }; + } + }, + shimRemoteStreamsAPI: function(window) { + if (typeof window !== 'object' || !window.RTCPeerConnection) { + return; + } + if (!('getRemoteStreams' in window.RTCPeerConnection.prototype)) { + window.RTCPeerConnection.prototype.getRemoteStreams = function() { + return this._remoteStreams ? this._remoteStreams : []; + }; + } + if (!('onaddstream' in window.RTCPeerConnection.prototype)) { + Object.defineProperty(window.RTCPeerConnection.prototype, 'onaddstream', { + get: function() { + return this._onaddstream; + }, + set: function(f) { + if (this._onaddstream) { + this.removeEventListener('addstream', this._onaddstream); + this.removeEventListener('track', this._onaddstreampoly); + } + this.addEventListener('addstream', this._onaddstream = f); + this.addEventListener('track', this._onaddstreampoly = function(e) { + var stream = e.streams[0]; + if (!this._remoteStreams) { + this._remoteStreams = []; + } + if (this._remoteStreams.indexOf(stream) >= 0) { + return; + } + this._remoteStreams.push(stream); + var event = new Event('addstream'); + event.stream = e.streams[0]; + this.dispatchEvent(event); + }.bind(this)); + } + }); + } + }, + shimCallbacksAPI: function(window) { + if (typeof window !== 'object' || !window.RTCPeerConnection) { + return; + } + var prototype = window.RTCPeerConnection.prototype; + var createOffer = prototype.createOffer; + var createAnswer = prototype.createAnswer; + var setLocalDescription = prototype.setLocalDescription; + var setRemoteDescription = prototype.setRemoteDescription; + var addIceCandidate = prototype.addIceCandidate; + + prototype.createOffer = function(successCallback, failureCallback) { + var options = (arguments.length >= 2) ? arguments[2] : arguments[0]; + var promise = createOffer.apply(this, [options]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + + prototype.createAnswer = function(successCallback, failureCallback) { + var options = (arguments.length >= 2) ? arguments[2] : arguments[0]; + var promise = createAnswer.apply(this, [options]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + + var withCallback = function(description, successCallback, failureCallback) { + var promise = setLocalDescription.apply(this, [description]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.setLocalDescription = withCallback; + + withCallback = function(description, successCallback, failureCallback) { + var promise = setRemoteDescription.apply(this, [description]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.setRemoteDescription = withCallback; + + withCallback = function(candidate, successCallback, failureCallback) { + var promise = addIceCandidate.apply(this, [candidate]); + if (!failureCallback) { + return promise; + } + promise.then(successCallback, failureCallback); + return Promise.resolve(); + }; + prototype.addIceCandidate = withCallback; + }, + shimGetUserMedia: function(window) { + var navigator = window && window.navigator; + + if (!navigator.getUserMedia) { + if (navigator.webkitGetUserMedia) { + navigator.getUserMedia = navigator.webkitGetUserMedia.bind(navigator); + } else if (navigator.mediaDevices && + navigator.mediaDevices.getUserMedia) { + navigator.getUserMedia = function(constraints, cb, errcb) { + navigator.mediaDevices.getUserMedia(constraints) + .then(cb, errcb); + }.bind(navigator); + } + } + }, + shimRTCIceServerUrls: function(window) { + // migrate from non-spec RTCIceServer.url to RTCIceServer.urls + var OrigPeerConnection = window.RTCPeerConnection; + window.RTCPeerConnection = function(pcConfig, pcConstraints) { + if (pcConfig && pcConfig.iceServers) { + var newIceServers = []; + for (var i = 0; i < pcConfig.iceServers.length; i++) { + var server = pcConfig.iceServers[i]; + if (!server.hasOwnProperty('urls') && + server.hasOwnProperty('url')) { + utils.deprecated('RTCIceServer.url', 'RTCIceServer.urls'); + server = JSON.parse(JSON.stringify(server)); + server.urls = server.url; + delete server.url; + newIceServers.push(server); + } else { + newIceServers.push(pcConfig.iceServers[i]); + } + } + pcConfig.iceServers = newIceServers; + } + return new OrigPeerConnection(pcConfig, pcConstraints); + }; + window.RTCPeerConnection.prototype = OrigPeerConnection.prototype; + // wrap static methods. Currently just generateCertificate. + if ('generateCertificate' in window.RTCPeerConnection) { + Object.defineProperty(window.RTCPeerConnection, 'generateCertificate', { + get: function() { + return OrigPeerConnection.generateCertificate; + } + }); + } + }, + shimTrackEventTransceiver: function(window) { + // Add event.transceiver member over deprecated event.receiver + if (typeof window === 'object' && window.RTCPeerConnection && + ('receiver' in window.RTCTrackEvent.prototype) && + // can't check 'transceiver' in window.RTCTrackEvent.prototype, as it is + // defined for some reason even when window.RTCTransceiver is not. + !window.RTCTransceiver) { + Object.defineProperty(window.RTCTrackEvent.prototype, 'transceiver', { + get: function() { + return {receiver: this.receiver}; + } + }); + } + }, + + shimCreateOfferLegacy: function(window) { + var origCreateOffer = window.RTCPeerConnection.prototype.createOffer; + window.RTCPeerConnection.prototype.createOffer = function(offerOptions) { + var pc = this; + if (offerOptions) { + var audioTransceiver = pc.getTransceivers().find(function(transceiver) { + return transceiver.sender.track && + transceiver.sender.track.kind === 'audio'; + }); + if (offerOptions.offerToReceiveAudio === false && audioTransceiver) { + if (audioTransceiver.direction === 'sendrecv') { + audioTransceiver.setDirection('sendonly'); + } else if (audioTransceiver.direction === 'recvonly') { + audioTransceiver.setDirection('inactive'); + } + } else if (offerOptions.offerToReceiveAudio === true && + !audioTransceiver) { + pc.addTransceiver('audio'); + } + + var videoTransceiver = pc.getTransceivers().find(function(transceiver) { + return transceiver.sender.track && + transceiver.sender.track.kind === 'video'; + }); + if (offerOptions.offerToReceiveVideo === false && videoTransceiver) { + if (videoTransceiver.direction === 'sendrecv') { + videoTransceiver.setDirection('sendonly'); + } else if (videoTransceiver.direction === 'recvonly') { + videoTransceiver.setDirection('inactive'); + } + } else if (offerOptions.offerToReceiveVideo === true && + !videoTransceiver) { + pc.addTransceiver('video'); + } + } + return origCreateOffer.apply(pc, arguments); + }; + } +}; + +// Expose public methods. +module.exports = { + shimCallbacksAPI: safariShim.shimCallbacksAPI, + shimLocalStreamsAPI: safariShim.shimLocalStreamsAPI, + shimRemoteStreamsAPI: safariShim.shimRemoteStreamsAPI, + shimGetUserMedia: safariShim.shimGetUserMedia, + shimRTCIceServerUrls: safariShim.shimRTCIceServerUrls, + shimTrackEventTransceiver: safariShim.shimTrackEventTransceiver, + shimCreateOfferLegacy: safariShim.shimCreateOfferLegacy + // TODO + // shimPeerConnection: safariShim.shimPeerConnection +}; + +},{"../utils":13}],13:[function(require,module,exports){ +/* + * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved. + * + * Use of this source code is governed by a BSD-style license + * that can be found in the LICENSE file in the root of the source + * tree. + */ + /* eslint-env node */ +'use strict'; + +var logDisabled_ = true; +var deprecationWarnings_ = true; + +// Utility methods. +var utils = { + disableLog: function(bool) { + if (typeof bool !== 'boolean') { + return new Error('Argument type: ' + typeof bool + + '. Please use a boolean.'); + } + logDisabled_ = bool; + return (bool) ? 'adapter.js logging disabled' : + 'adapter.js logging enabled'; + }, + + /** + * Disable or enable deprecation warnings + * @param {!boolean} bool set to true to disable warnings. + */ + disableWarnings: function(bool) { + if (typeof bool !== 'boolean') { + return new Error('Argument type: ' + typeof bool + + '. Please use a boolean.'); + } + deprecationWarnings_ = !bool; + return 'adapter.js deprecation warnings ' + (bool ? 'disabled' : 'enabled'); + }, + + log: function() { + if (typeof window === 'object') { + if (logDisabled_) { + return; + } + if (typeof console !== 'undefined' && typeof console.log === 'function') { + console.log.apply(console, arguments); + } + } + }, + + /** + * Shows a deprecation warning suggesting the modern and spec-compatible API. + */ + deprecated: function(oldMethod, newMethod) { + if (!deprecationWarnings_) { + return; + } + console.warn(oldMethod + ' is deprecated, please use ' + newMethod + + ' instead.'); + }, + + /** + * Extract browser version out of the provided user agent string. + * + * @param {!string} uastring userAgent string. + * @param {!string} expr Regular expression used as match criteria. + * @param {!number} pos position in the version string to be returned. + * @return {!number} browser version. + */ + extractVersion: function(uastring, expr, pos) { + var match = uastring.match(expr); + return match && match.length >= pos && parseInt(match[pos], 10); + }, + + /** + * Browser detector. + * + * @return {object} result containing browser and version + * properties. + */ + detectBrowser: function(window) { + var navigator = window && window.navigator; + + // Returned result object. + var result = {}; + result.browser = null; + result.version = null; + + // Fail early if it's not a browser + if (typeof window === 'undefined' || !window.navigator) { + result.browser = 'Not a browser.'; + return result; + } + + // Firefox. + if (navigator.mozGetUserMedia) { + result.browser = 'firefox'; + result.version = this.extractVersion(navigator.userAgent, + /Firefox\/(\d+)\./, 1); + } else if (navigator.webkitGetUserMedia) { + // Chrome, Chromium, Webview, Opera, all use the chrome shim for now + if (window.webkitRTCPeerConnection) { + result.browser = 'chrome'; + result.version = this.extractVersion(navigator.userAgent, + /Chrom(e|ium)\/(\d+)\./, 2); + } else { // Safari (in an unpublished version) or unknown webkit-based. + if (navigator.userAgent.match(/Version\/(\d+).(\d+)/)) { + result.browser = 'safari'; + result.version = this.extractVersion(navigator.userAgent, + /AppleWebKit\/(\d+)\./, 1); + } else { // unknown webkit-based browser. + result.browser = 'Unsupported webkit-based browser ' + + 'with GUM support but no WebRTC support.'; + return result; + } + } + } else if (navigator.mediaDevices && + navigator.userAgent.match(/Edge\/(\d+).(\d+)$/)) { // Edge. + result.browser = 'edge'; + result.version = this.extractVersion(navigator.userAgent, + /Edge\/(\d+).(\d+)$/, 2); + } else if (navigator.mediaDevices && + navigator.userAgent.match(/AppleWebKit\/(\d+)\./)) { + // Safari, with webkitGetUserMedia removed. + result.browser = 'safari'; + result.version = this.extractVersion(navigator.userAgent, + /AppleWebKit\/(\d+)\./, 1); + } else { // Default fallthrough: not supported. + result.browser = 'Not a supported browser.'; + return result; + } + + return result; + }, + +}; + +// Export. +module.exports = { + log: utils.log, + deprecated: utils.deprecated, + disableLog: utils.disableLog, + disableWarnings: utils.disableWarnings, + extractVersion: utils.extractVersion, + shimCreateObjectURL: utils.shimCreateObjectURL, + detectBrowser: utils.detectBrowser.bind(utils) +}; + +},{}]},{},[3])(3) +}); \ No newline at end of file diff --git a/bigbluebutton-html5/client/compatibility/adjust-videos.js b/bigbluebutton-html5/client/compatibility/adjust-videos.js new file mode 100644 index 0000000000000000000000000000000000000000..bdacb7f984e4311ff039eefd18e3eb72d0bb2836 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/adjust-videos.js @@ -0,0 +1,89 @@ + +(function() { + function adjustVideos(tagId, centerVideos) { + const _minContentAspectRatio = 4 / 3.0; + + function calculateOccupiedArea(canvasWidth, canvasHeight, numColumns, numRows, numChildren) { + const obj = calculateCellDimensions(canvasWidth, canvasHeight, numColumns, numRows); + obj.occupiedArea = obj.width * obj.height * numChildren; + obj.numColumns = numColumns; + obj.numRows = numRows; + obj.cellAspectRatio = _minContentAspectRatio; + return obj; + } + + function calculateCellDimensions(canvasWidth, canvasHeight, numColumns, numRows) { + const obj = { + width: Math.floor(canvasWidth / numColumns), + height: Math.floor(canvasHeight / numRows), + }; + + if (obj.width / obj.height > _minContentAspectRatio) { + obj.width = Math.min(Math.floor(obj.height * _minContentAspectRatio), Math.floor(canvasWidth / numColumns)); + } else { + obj.height = Math.min(Math.floor(obj.width / _minContentAspectRatio), Math.floor(canvasHeight / numRows)); + } + return obj; + } + + function findBestConfiguration(canvasWidth, canvasHeight, numChildrenInCanvas) { + let bestConfiguration = { + occupiedArea: 0, + }; + + for (let cols = 1; cols <= numChildrenInCanvas; cols++) { + let rows = Math.floor(numChildrenInCanvas / cols); + + // That's a small HACK, different from the original algorithm + // Sometimes numChildren will be bigger than cols*rows, this means that this configuration + // can't show all the videos and shouldn't be considered. So we just increment the number of rows + // and get a configuration which shows all the videos albeit with a few missing slots in the end. + // For example: with numChildren == 8 the loop will generate cols == 3 and rows == 2 + // cols * rows is 6 so we bump rows to 3 and then cols*rows is 9 which is bigger than 8 + if (numChildrenInCanvas > cols * rows) { + rows += 1; + } + + const currentConfiguration = calculateOccupiedArea(canvasWidth, canvasHeight, cols, rows, numChildrenInCanvas); + + if (currentConfiguration.occupiedArea > bestConfiguration.occupiedArea) { + bestConfiguration = currentConfiguration; + } + } + + return bestConfiguration; + } + + // http://stackoverflow.com/a/3437825/414642 + const e = $("#" + tagId).parent(); + const x = e.outerWidth() - 1; + const y = e.outerHeight() - 1; + + const videos = $("#" + tagId + " video:visible"); + + const best = findBestConfiguration(x, y, videos.length); + + videos.each(function (i) { + const row = Math.floor(i / best.numColumns); + const col = Math.floor(i % best.numColumns); + + // Free width space remaining to the right and below of the videos + const remX = (x - best.width * best.numColumns); + const remY = (y - best.height * best.numRows); + + // Center videos + const top = Math.floor(((best.height) * row) + remY / 2); + const left = Math.floor(((best.width) * col) + remX / 2); + + const videoTop = `top: ${top}px;`; + const videoLeft = `left: ${left}px;`; + + $(this).attr('style', videoTop + videoLeft); + }); + + videos.attr('width', best.width); + videos.attr('height', best.height); + } + + window.adjustVideos = adjustVideos; +})(); diff --git a/bigbluebutton-html5/client/compatibility/bbb_webrtc_bridge_sip.js b/bigbluebutton-html5/client/compatibility/bbb_webrtc_bridge_sip.js new file mode 100644 index 0000000000000000000000000000000000000000..a29923966fa58015032c35d3daa8f3e8c68d5696 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/bbb_webrtc_bridge_sip.js @@ -0,0 +1,601 @@ + +var userID, callerIdName=null, conferenceVoiceBridge, userAgent=null, userMicMedia, userWebcamMedia, currentSession=null, callTimeout, callActive, callICEConnected, iceConnectedTimeout, callFailCounter, callPurposefullyEnded, uaConnected, transferTimeout, iceGatheringTimeout; +var inEchoTest = true; +var html5StunTurn = null; + +function webRTCCallback(message) { + switch (message.status) { + case 'succeded': + BBB.webRTCCallSucceeded(); + break; + case 'failed': + if (message.errorcode !== 1004) { + message.cause = null; + } + monitorTracksStop(); + BBB.webRTCCallFailed(inEchoTest, message.errorcode, message.cause); + break; + case 'ended': + monitorTracksStop(); + BBB.webRTCCallEnded(inEchoTest); + break; + case 'started': + monitorTracksStart(); + BBB.webRTCCallStarted(inEchoTest); + break; + case 'connecting': + BBB.webRTCCallConnecting(inEchoTest); + break; + case 'waitingforice': + BBB.webRTCCallWaitingForICE(inEchoTest); + break; + case 'transferring': + BBB.webRTCCallTransferring(inEchoTest); + break; + case 'mediarequest': + BBB.webRTCMediaRequest(); + break; + case 'mediasuccess': + BBB.webRTCMediaSuccess(); + break; + case 'mediafail': + BBB.webRTCMediaFail(); + break; + } +} + +function callIntoConference(voiceBridge, callback, isListenOnly, stunTurn = null) { + // root of the call initiation process from the html5 client + // Flash will not pass in the listen only field. For html5 it is optional. Assume NOT listen only if no state passed + if (isListenOnly == null) { + isListenOnly = false; + } + + // if additional stun configuration is passed, store the information + if (stunTurn != null) { + html5StunTurn = { + stunServers: stunTurn.stun, + turnServers: stunTurn.turn, + }; + } + + // reset callerIdName + callerIdName = null; + if (!callerIdName) { + BBB.getMyUserInfo(function(userInfo) { + console.log("User info callback [myUserID=" + userInfo.myUserID + + ",myUsername=" + userInfo.myUsername + ",myAvatarURL=" + userInfo.myAvatarURL + + ",myRole=" + userInfo.myRole + ",amIPresenter=" + userInfo.amIPresenter + + ",dialNumber=" + userInfo.dialNumber + ",voiceBridge=" + userInfo.voiceBridge + + ",isListenOnly=" + isListenOnly + "]."); + userID = userInfo.myUserID; + callerIdName = userInfo.myUserID + "-bbbID-" + userInfo.myUsername; + if (isListenOnly) { + //prepend the callerIdName so it is recognized as a global audio user + callerIdName = "GLOBAL_AUDIO_" + callerIdName; + } + conferenceVoiceBridge = userInfo.voiceBridge + if (voiceBridge === "9196") { + voiceBridge = voiceBridge + conferenceVoiceBridge; + } else { + voiceBridge = conferenceVoiceBridge; + } + console.log(callerIdName); + webrtc_call(callerIdName, voiceBridge, callback, isListenOnly); + }); + } else { + if (voiceBridge === "9196") { + voiceBridge = voiceBridge + conferenceVoiceBridge; + } else { + voiceBridge = conferenceVoiceBridge; + } + webrtc_call(callerIdName, voiceBridge, callback, isListenOnly); + } +} + +function joinWebRTCVoiceConference() { + console.log("Joining to the voice conference directly"); + inEchoTest = false; + // set proper callbacks to previously created user agent + if(userAgent) { + setUserAgentListeners(webRTCCallback); + } + callIntoConference(conferenceVoiceBridge, webRTCCallback); +} + +function leaveWebRTCVoiceConference() { + console.log("Leaving the voice conference"); + + webrtc_hangup(); +} + +function startWebRTCAudioTest(){ + console.log("Joining the audio test first"); + inEchoTest = true; + callIntoConference("9196", webRTCCallback); +} + +function stopWebRTCAudioTest(){ + console.log("Stopping webrtc audio test"); + + webrtc_hangup(); +} + +function stopWebRTCAudioTestJoinConference(){ + console.log("Transferring from audio test to conference"); + + webRTCCallback({'status': 'transferring'}); + + transferTimeout = setTimeout( function() { + console.log("Call transfer failed. No response after 3 seconds"); + webRTCCallback({'status': 'failed', 'errorcode': 1008}); + releaseUserMedia(); + currentSession = null; + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + }, 5000); + + BBB.listen("UserJoinedVoiceEvent", userJoinedVoiceHandler); + + currentSession.dtmf(1); + inEchoTest = false; +} + +function userJoinedVoiceHandler(event) { + console.log("UserJoinedVoiceHandler - " + event); + if (inEchoTest === false && userID === event.userID) { + BBB.unlisten("UserJoinedVoiceEvent", userJoinedVoiceHandler); + clearTimeout(transferTimeout); + webRTCCallback({'status': 'started'}); + } +} + +function createUA(username, server, callback, makeCallFunc) { + if (userAgent) { + console.log("User agent already created"); + return; + } + + console.log("Fetching STUN/TURN server info for user agent"); + + console.log(html5StunTurn); + if (html5StunTurn != null) { + createUAWithStuns(username, server, callback, html5StunTurn, makeCallFunc); + return; + } + + BBB.getSessionToken(function(sessionToken) { + $.ajax({ + dataType: 'json', + url: '/bigbluebutton/api/stuns', + data: {sessionToken:sessionToken} + }).done(function(data) { + var stunsConfig = {}; + stunsConfig['stunServers'] = ( data['stunServers'] ? data['stunServers'].map(function(data) { + return data['url']; + }) : [] ); + stunsConfig['turnServers'] = ( data['turnServers'] ? data['turnServers'].map(function(data) { + return { + 'urls': data['url'], + 'username': data['username'], + 'password': data['password'] + }; + }) : [] ); + //stunsConfig['remoteIceCandidates'] = ( data['remoteIceCandidates'] ? data['remoteIceCandidates'].map(function(data) { + // return data['ip']; + //}) : [] ); + createUAWithStuns(username, server, callback, stunsConfig, makeCallFunc); + }).fail(function(data, textStatus, errorThrown) { + BBBLog.error("Could not fetch stun/turn servers", {error: textStatus, user: callerIdName, voiceBridge: conferenceVoiceBridge}); + callback({'status':'failed', 'errorcode': 1009}); + }); + }); +} + +function createUAWithStuns(username, server, callback, stunsConfig, makeCallFunc) { + console.log("Creating new user agent"); + + /* VERY IMPORTANT + * - You must escape the username because spaces will cause the connection to fail + * - We are connecting to the websocket through an nginx redirect instead of directly to 5066 + */ + var configuration = { + uri: 'sip:' + encodeURIComponent(username) + '@' + server, + wsServers: ('https:' == document.location.protocol ? 'wss://' : 'ws://') + server + '/ws', + displayName: username, + register: false, + traceSip: true, + autostart: false, + userAgentString: "BigBlueButton", + stunServers: stunsConfig['stunServers'], + turnServers: stunsConfig['turnServers'], + //artificialRemoteIceCandidates: stunsConfig['remoteIceCandidates'] + }; + + uaConnected = false; + + userAgent = new SIP.UA(configuration); + setUserAgentListeners(callback, makeCallFunc); + userAgent.start(); +}; + +function setUserAgentListeners(callback, makeCallFunc) { + console.log("resetting UA callbacks"); + userAgent.removeAllListeners('connected'); + userAgent.on('connected', function() { + uaConnected = true; + callback({'status':'succeded'}); + makeCallFunc(); + }); + userAgent.removeAllListeners('disconnected'); + userAgent.on('disconnected', function() { + if (userAgent) { + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + + if (uaConnected) { + callback({'status':'failed', 'errorcode': 1001}); // WebSocket disconnected + } else { + callback({'status':'failed', 'errorcode': 1002}); // Could not make a WebSocket connection + } + } + }); +}; + +function getUserMicMedia(getUserMicMediaSuccess, getUserMicMediaFailure) { + if (userMicMedia == undefined) { + if (SIP.WebRTC.isSupported()) { + SIP.WebRTC.getUserMedia({audio:true, video:false}, getUserMicMediaSuccess, getUserMicMediaFailure); + } else { + console.log("getUserMicMedia: webrtc not supported"); + getUserMicMediaFailure("WebRTC is not supported"); + } + } else { + console.log("getUserMicMedia: mic already set"); + getUserMicMediaSuccess(userMicMedia); + } +}; + +function webrtc_call(username, voiceBridge, callback, isListenOnly) { + if (!isWebRTCAvailable()) { + callback({'status': 'failed', 'errorcode': 1003}); // Browser version not supported + return; + } + if (isListenOnly == null) { // assume NOT listen only unless otherwise stated + isListenOnly = false; + } + + var server = window.document.location.hostname; + console.log("user " + username + " calling to " + voiceBridge); + + var makeCallFunc = function() { + // only make the call when both microphone and useragent have been created + // for listen only, stating listen only is a viable substitute for acquiring user media control + if ((isListenOnly||userMicMedia) && userAgent) + make_call(username, voiceBridge, server, callback, false, isListenOnly); + }; + + // Reset userAgent so we can successfully switch between listenOnly and listen+speak modes + userAgent = null; + if (!userAgent) { + createUA(username, server, callback, makeCallFunc); + } + // if the user requests to proceed as listen only (does not require media) or media is already acquired, + // proceed with making the call + if (isListenOnly || userMicMedia != null) { + makeCallFunc(); + } else { + callback({'status':'mediarequest'}); + getUserMicMedia(function(stream) { + console.log("getUserMicMedia: success"); + userMicMedia = stream; + callback({'status':'mediasuccess'}); + makeCallFunc(); + }, function(e) { + console.error("getUserMicMedia: failure - " + e); + callback({'status':'mediafail', 'cause': e}); + } + ); + } +} + +function make_call(username, voiceBridge, server, callback, recall, isListenOnly) { + if (isListenOnly == null) { + isListenOnly = false; + } + + if (userAgent == null) { + console.log("userAgent is still null. Delaying call"); + var callDelayTimeout = setTimeout( function() { + make_call(username, voiceBridge, server, callback, recall, isListenOnly); + }, 100); + return; + } + + if (!userAgent.isConnected()) { + console.log("Trying to make call, but UserAgent hasn't connected yet. Delaying call"); + userAgent.once('connected', function() { + console.log("UserAgent has now connected, retrying the call"); + make_call(username, voiceBridge, server, callback, recall, isListenOnly); + }); + return; + } + + if (currentSession) { + console.log('Active call detected ignoring second make_call'); + return; + } + + // Make an audio/video call: + console.log("Setting options.. "); + + var options = {}; + if (isListenOnly) { + // create necessary options for a listen only stream + var stream = null; + // handle the web browser + // create a stream object through the browser separated from user media + if (typeof webkitMediaStream !== 'undefined') { + // Google Chrome + stream = new webkitMediaStream; + } else { + // Firefox + audioContext = new window.AudioContext; + stream = audioContext.createMediaStreamDestination().stream; + } + + options = { + media: { + stream: stream, // use the stream created above + constraints: { + audio: true, + video: false + }, + render: { + remote: document.getElementById('remote-media') + } + }, + // a list of our RTC Connection constraints + RTCConstraints: { + // our constraints are mandatory. We must received audio and must not receive audio + mandatory: { + OfferToReceiveAudio: true, + OfferToReceiveVideo: false + } + } + }; + } else { + options = { + media: { + stream: userMicMedia, + constraints: { + audio: true, + video: false + }, + render: { + remote: document.getElementById('remote-media') + } + } + }; + } + + callTimeout = setTimeout(function() { + console.log('Ten seconds without updates sending timeout code'); + callback({'status':'failed', 'errorcode': 1006}); // Failure on call + releaseUserMedia(); + currentSession = null; + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + }, 10000); + + callActive = false; + callICEConnected = false; + callPurposefullyEnded = false; + callFailCounter = 0; + console.log("Calling to " + voiceBridge + "...."); + currentSession = userAgent.invite('sip:' + voiceBridge + '@' + server, options); + + // Only send the callback if it's the first try + if (recall === false) { + console.log('call connecting'); + callback({'status':'connecting'}); + } else { + console.log('call connecting again'); + } + + /* + iceGatheringTimeout = setTimeout(function() { + console.log('Thirty seconds without ICE gathering finishing'); + callback({'status':'failed', 'errorcode': 1011}); // ICE Gathering Failed + releaseUserMedia(); + currentSession = null; + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + }, 30000); + */ + + currentSession.mediaHandler.on('iceGatheringComplete', function() { + clearTimeout(iceGatheringTimeout); + }); + + // The connecting event fires before the listener can be added + currentSession.on('connecting', function(){ + clearTimeout(callTimeout); + }); + currentSession.on('progress', function(response){ + console.log('call progress: ' + response); + clearTimeout(callTimeout); + }); + currentSession.on('failed', function(response, cause){ + console.log('call failed with cause: '+ cause); + + if (currentSession) { + releaseUserMedia(); + if (callActive === false) { + callback({'status':'failed', 'errorcode': 1004, 'cause': cause}); // Failure on call + currentSession = null; + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + } else { + callActive = false; + //currentSession.bye(); + currentSession = null; + if (userAgent != null) { + userAgent.stop(); + } + } + } + clearTimeout(callTimeout); + }); + currentSession.on('bye', function(request){ + callActive = false; + + if (currentSession) { + console.log('call ended ' + currentSession.endTime); + releaseUserMedia(); + if (callPurposefullyEnded === true) { + callback({'status':'ended'}); + } else { + callback({'status':'failed', 'errorcode': 1005}); // Call ended unexpectedly + } + clearTimeout(callTimeout); + currentSession = null; + } else { + console.log('bye event already received'); + } + }); + currentSession.on('cancel', function(request) { + callActive = false; + + if (currentSession) { + console.log('call canceled'); + releaseUserMedia(); + clearTimeout(callTimeout); + currentSession = null; + } else { + console.log('cancel event already received'); + } + }); + currentSession.on('accepted', function(data){ + callActive = true; + console.log('BigBlueButton call accepted'); + + if (callICEConnected === true) { + callback({'status':'started'}); + } else { + callback({'status':'waitingforice'}); + console.log('Waiting for ICE negotiation'); + iceConnectedTimeout = setTimeout(function() { + console.log('5 seconds without ICE finishing'); + callback({'status':'failed', 'errorcode': 1010}); // ICE negotiation timeout + releaseUserMedia(); + currentSession = null; + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + }, 5000); + } + clearTimeout(callTimeout); + }); + currentSession.mediaHandler.on('iceConnectionFailed', function() { + console.log('received ice negotiation failed'); + callback({'status':'failed', 'errorcode': 1007}); // Failure on call + releaseUserMedia(); + currentSession = null; + clearTimeout(iceConnectedTimeout); + if (userAgent != null) { + var userAgentTemp = userAgent; + userAgent = null; + userAgentTemp.stop(); + } + + clearTimeout(callTimeout); + }); + + // Some browsers use status of 'connected', others use 'completed', and a couple use both + + currentSession.mediaHandler.on('iceConnectionConnected', function() { + console.log('Received ICE status changed to connected'); + if (callICEConnected === false) { + callICEConnected = true; + clearTimeout(iceConnectedTimeout); + if (callActive === true) { + callback({'status':'started'}); + } + clearTimeout(callTimeout); + } + }); + + currentSession.mediaHandler.on('iceConnectionCompleted', function() { + console.log('Received ICE status changed to completed'); + if (callICEConnected === false) { + callICEConnected = true; + clearTimeout(iceConnectedTimeout); + if (callActive === true) { + callback({'status':'started'}); + } + clearTimeout(callTimeout); + } + }); +} + +function webrtc_hangup(callback) { + callPurposefullyEnded = true; + + console.log("Hanging up current session"); + if (callback) { + currentSession.on('bye', callback); + } + try { + currentSession.bye(); + } catch (err) { + console.log("Forcing to cancel current session"); + currentSession.cancel(); + } +} + +function releaseUserMedia() { + if (!!userMicMedia) { + console.log("Releasing media tracks"); + + userMicMedia.getAudioTracks().forEach(function(track) { + track.stop(); + }); + + userMicMedia.getVideoTracks().forEach(function(track) { + track.stop(); + }); + + userMicMedia = null; + } +} + +function isWebRTCAvailable() { + if (bowser.msedge) { + return false; + } else { + return SIP.WebRTC.isSupported(); + } +} + +function getCallStatus() { + return currentSession; +} + diff --git a/bigbluebutton-html5/client/compatibility/bbblogger.js b/bigbluebutton-html5/client/compatibility/bbblogger.js new file mode 100644 index 0000000000000000000000000000000000000000..d60d6c8ce6e22c42cc5512459f3b1a100fef01a6 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/bbblogger.js @@ -0,0 +1,28 @@ + +(function(window, undefined) { + + var BBBLog = {}; + + BBBLog.critical = function (message, data) { + console.log(message, JSON.stringify(data)); + } + + BBBLog.error = function (message, data) { + console.log(message, JSON.stringify(data)); + } + + BBBLog.warning = function (message, data) { + console.log(message, JSON.stringify(data)); + } + + BBBLog.info = function (message, data) { + console.log(message, JSON.stringify(data)); + } + + BBBLog.debug = function (message, data) { + console.log(message, JSON.stringify(data)); + } + + window.BBBLog = BBBLog; +})(this); + diff --git a/bigbluebutton-html5/client/compatibility/bowser.js b/bigbluebutton-html5/client/compatibility/bowser.js new file mode 100644 index 0000000000000000000000000000000000000000..5b907f136f0eb41f850fba2d095f9fa9a5eb5d49 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/bowser.js @@ -0,0 +1,601 @@ +/*! + * Bowser - a browser detector + * https://github.com/ded/bowser + * MIT License | (c) Dustin Diaz 2015 + */ + +!function (root, name, definition) { + if (typeof module != 'undefined' && module.exports) module.exports = definition() + else if (typeof define == 'function' && define.amd) define(name, definition) + else root[name] = definition() +}(this, 'bowser', function () { + /** + * See useragents.js for examples of navigator.userAgent + */ + + var t = true + + function detect(ua) { + + function getFirstMatch(regex) { + var match = ua.match(regex); + return (match && match.length > 1 && match[1]) || ''; + } + + function getSecondMatch(regex) { + var match = ua.match(regex); + return (match && match.length > 1 && match[2]) || ''; + } + + var iosdevice = getFirstMatch(/(ipod|iphone|ipad)/i).toLowerCase() + , likeAndroid = /like android/i.test(ua) + , android = !likeAndroid && /android/i.test(ua) + , nexusMobile = /nexus\s*[0-6]\s*/i.test(ua) + , nexusTablet = !nexusMobile && /nexus\s*[0-9]+/i.test(ua) + , chromeos = /CrOS/.test(ua) + , silk = /silk/i.test(ua) + , sailfish = /sailfish/i.test(ua) + , tizen = /tizen/i.test(ua) + , webos = /(web|hpw)os/i.test(ua) + , windowsphone = /windows phone/i.test(ua) + , samsungBrowser = /SamsungBrowser/i.test(ua) + , windows = !windowsphone && /windows/i.test(ua) + , mac = !iosdevice && !silk && /macintosh/i.test(ua) + , linux = !android && !sailfish && !tizen && !webos && /linux/i.test(ua) + , edgeVersion = getFirstMatch(/edge\/(\d+(\.\d+)?)/i) + , versionIdentifier = getFirstMatch(/version\/(\d+(\.\d+)?)/i) + , tablet = /tablet/i.test(ua) && !/tablet pc/i.test(ua) + , mobile = !tablet && /[^-]mobi/i.test(ua) + , xbox = /xbox/i.test(ua) + , result + + if (/opera/i.test(ua)) { + // an old Opera + result = { + name: 'Opera' + , opera: t + , version: versionIdentifier || getFirstMatch(/(?:opera|opr|opios)[\s\/](\d+(\.\d+)?)/i) + } + } else if (/opr\/|opios/i.test(ua)) { + // a new Opera + result = { + name: 'Opera' + , opera: t + , version: getFirstMatch(/(?:opr|opios)[\s\/](\d+(\.\d+)?)/i) || versionIdentifier + } + } + else if (/SamsungBrowser/i.test(ua)) { + result = { + name: 'Samsung Internet for Android' + , samsungBrowser: t + , version: versionIdentifier || getFirstMatch(/(?:SamsungBrowser)[\s\/](\d+(\.\d+)?)/i) + } + } + else if (/coast/i.test(ua)) { + result = { + name: 'Opera Coast' + , coast: t + , version: versionIdentifier || getFirstMatch(/(?:coast)[\s\/](\d+(\.\d+)?)/i) + } + } + else if (/yabrowser/i.test(ua)) { + result = { + name: 'Yandex Browser' + , yandexbrowser: t + , version: versionIdentifier || getFirstMatch(/(?:yabrowser)[\s\/](\d+(\.\d+)?)/i) + } + } + else if (/ucbrowser/i.test(ua)) { + result = { + name: 'UC Browser' + , ucbrowser: t + , version: getFirstMatch(/(?:ucbrowser)[\s\/](\d+(?:\.\d+)+)/i) + } + } + else if (/mxios/i.test(ua)) { + result = { + name: 'Maxthon' + , maxthon: t + , version: getFirstMatch(/(?:mxios)[\s\/](\d+(?:\.\d+)+)/i) + } + } + else if (/epiphany/i.test(ua)) { + result = { + name: 'Epiphany' + , epiphany: t + , version: getFirstMatch(/(?:epiphany)[\s\/](\d+(?:\.\d+)+)/i) + } + } + else if (/puffin/i.test(ua)) { + result = { + name: 'Puffin' + , puffin: t + , version: getFirstMatch(/(?:puffin)[\s\/](\d+(?:\.\d+)?)/i) + } + } + else if (/sleipnir/i.test(ua)) { + result = { + name: 'Sleipnir' + , sleipnir: t + , version: getFirstMatch(/(?:sleipnir)[\s\/](\d+(?:\.\d+)+)/i) + } + } + else if (/k-meleon/i.test(ua)) { + result = { + name: 'K-Meleon' + , kMeleon: t + , version: getFirstMatch(/(?:k-meleon)[\s\/](\d+(?:\.\d+)+)/i) + } + } + else if (windowsphone) { + result = { + name: 'Windows Phone' + , windowsphone: t + } + if (edgeVersion) { + result.msedge = t + result.version = edgeVersion + } + else { + result.msie = t + result.version = getFirstMatch(/iemobile\/(\d+(\.\d+)?)/i) + } + } + else if (/msie|trident/i.test(ua)) { + result = { + name: 'Internet Explorer' + , msie: t + , version: getFirstMatch(/(?:msie |rv:)(\d+(\.\d+)?)/i) + } + } else if (chromeos) { + result = { + name: 'Chrome' + , chromeos: t + , chromeBook: t + , chrome: t + , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) + } + } else if (/chrome.+? edge/i.test(ua)) { + result = { + name: 'Microsoft Edge' + , msedge: t + , version: edgeVersion + } + } + else if (/vivaldi/i.test(ua)) { + result = { + name: 'Vivaldi' + , vivaldi: t + , version: getFirstMatch(/vivaldi\/(\d+(\.\d+)?)/i) || versionIdentifier + } + } + else if (sailfish) { + result = { + name: 'Sailfish' + , sailfish: t + , version: getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i) + } + } + else if (/seamonkey\//i.test(ua)) { + result = { + name: 'SeaMonkey' + , seamonkey: t + , version: getFirstMatch(/seamonkey\/(\d+(\.\d+)?)/i) + } + } + else if (/firefox|iceweasel|fxios/i.test(ua)) { + result = { + name: 'Firefox' + , firefox: t + , version: getFirstMatch(/(?:firefox|iceweasel|fxios)[ \/](\d+(\.\d+)?)/i) + } + if (/\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(ua)) { + result.firefoxos = t + } + } + else if (silk) { + result = { + name: 'Amazon Silk' + , silk: t + , version : getFirstMatch(/silk\/(\d+(\.\d+)?)/i) + } + } + else if (/phantom/i.test(ua)) { + result = { + name: 'PhantomJS' + , phantom: t + , version: getFirstMatch(/phantomjs\/(\d+(\.\d+)?)/i) + } + } + else if (/slimerjs/i.test(ua)) { + result = { + name: 'SlimerJS' + , slimer: t + , version: getFirstMatch(/slimerjs\/(\d+(\.\d+)?)/i) + } + } + else if (/blackberry|\bbb\d+/i.test(ua) || /rim\stablet/i.test(ua)) { + result = { + name: 'BlackBerry' + , blackberry: t + , version: versionIdentifier || getFirstMatch(/blackberry[\d]+\/(\d+(\.\d+)?)/i) + } + } + else if (webos) { + result = { + name: 'WebOS' + , webos: t + , version: versionIdentifier || getFirstMatch(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i) + }; + /touchpad\//i.test(ua) && (result.touchpad = t) + } + else if (/bada/i.test(ua)) { + result = { + name: 'Bada' + , bada: t + , version: getFirstMatch(/dolfin\/(\d+(\.\d+)?)/i) + }; + } + else if (tizen) { + result = { + name: 'Tizen' + , tizen: t + , version: getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || versionIdentifier + }; + } + else if (/qupzilla/i.test(ua)) { + result = { + name: 'QupZilla' + , qupzilla: t + , version: getFirstMatch(/(?:qupzilla)[\s\/](\d+(?:\.\d+)+)/i) || versionIdentifier + } + } + else if (/chromium/i.test(ua)) { + result = { + name: 'Chromium' + , chromium: t + , version: getFirstMatch(/(?:chromium)[\s\/](\d+(?:\.\d+)?)/i) || versionIdentifier + } + } + else if (/chrome|crios|crmo/i.test(ua)) { + result = { + name: 'Chrome' + , chrome: t + , version: getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) + } + } + else if (android) { + result = { + name: 'Android' + , version: versionIdentifier + } + } + else if (/safari|applewebkit/i.test(ua)) { + result = { + name: 'Safari' + , safari: t + } + if (versionIdentifier) { + result.version = versionIdentifier + } + } + else if (iosdevice) { + result = { + name : iosdevice == 'iphone' ? 'iPhone' : iosdevice == 'ipad' ? 'iPad' : 'iPod' + } + // WTF: version is not part of user agent in web apps + if (versionIdentifier) { + result.version = versionIdentifier + } + } + else if(/googlebot/i.test(ua)) { + result = { + name: 'Googlebot' + , googlebot: t + , version: getFirstMatch(/googlebot\/(\d+(\.\d+))/i) || versionIdentifier + } + } + else { + result = { + name: getFirstMatch(/^(.*)\/(.*) /), + version: getSecondMatch(/^(.*)\/(.*) /) + }; + } + + // set webkit or gecko flag for browsers based on these engines + if (!result.msedge && /(apple)?webkit/i.test(ua)) { + if (/(apple)?webkit\/537\.36/i.test(ua)) { + result.name = result.name || "Blink" + result.blink = t + } else { + result.name = result.name || "Webkit" + result.webkit = t + } + if (!result.version && versionIdentifier) { + result.version = versionIdentifier + } + } else if (!result.opera && /gecko\//i.test(ua)) { + result.name = result.name || "Gecko" + result.gecko = t + result.version = result.version || getFirstMatch(/gecko\/(\d+(\.\d+)?)/i) + } + + // set OS flags for platforms that have multiple browsers + if (!result.windowsphone && !result.msedge && (android || result.silk)) { + result.android = t + } else if (!result.windowsphone && !result.msedge && iosdevice) { + result[iosdevice] = t + result.ios = t + } else if (mac) { + result.mac = t + } else if (xbox) { + result.xbox = t + } else if (windows) { + result.windows = t + } else if (linux) { + result.linux = t + } + + function getWindowsVersion (s) { + switch (s) { + case 'NT': return 'NT' + case 'XP': return 'XP' + case 'NT 5.0': return '2000' + case 'NT 5.1': return 'XP' + case 'NT 5.2': return '2003' + case 'NT 6.0': return 'Vista' + case 'NT 6.1': return '7' + case 'NT 6.2': return '8' + case 'NT 6.3': return '8.1' + case 'NT 10.0': return '10' + default: return undefined + } + } + + // OS version extraction + var osVersion = ''; + if (result.windows) { + osVersion = getWindowsVersion(getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i)) + } else if (result.windowsphone) { + osVersion = getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i); + } else if (result.mac) { + osVersion = getFirstMatch(/Mac OS X (\d+([_\.\s]\d+)*)/i); + osVersion = osVersion.replace(/[_\s]/g, '.'); + } else if (iosdevice) { + osVersion = getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i); + osVersion = osVersion.replace(/[_\s]/g, '.'); + } else if (android) { + osVersion = getFirstMatch(/android[ \/-](\d+(\.\d+)*)/i); + } else if (result.webos) { + osVersion = getFirstMatch(/(?:web|hpw)os\/(\d+(\.\d+)*)/i); + } else if (result.blackberry) { + osVersion = getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i); + } else if (result.bada) { + osVersion = getFirstMatch(/bada\/(\d+(\.\d+)*)/i); + } else if (result.tizen) { + osVersion = getFirstMatch(/tizen[\/\s](\d+(\.\d+)*)/i); + } + if (osVersion) { + result.osversion = osVersion; + } + + // device type extraction + var osMajorVersion = !result.windows && osVersion.split('.')[0]; + if ( + tablet + || nexusTablet + || iosdevice == 'ipad' + || (android && (osMajorVersion == 3 || (osMajorVersion >= 4 && !mobile))) + || result.silk + ) { + result.tablet = t + } else if ( + mobile + || iosdevice == 'iphone' + || iosdevice == 'ipod' + || android + || nexusMobile + || result.blackberry + || result.webos + || result.bada + ) { + result.mobile = t + } + + // Graded Browser Support + // http://developer.yahoo.com/yui/articles/gbs + if (result.msedge || + (result.msie && result.version >= 10) || + (result.yandexbrowser && result.version >= 15) || + (result.vivaldi && result.version >= 1.0) || + (result.chrome && result.version >= 20) || + (result.samsungBrowser && result.version >= 4) || + (result.firefox && result.version >= 20.0) || + (result.safari && result.version >= 6) || + (result.opera && result.version >= 10.0) || + (result.ios && result.osversion && result.osversion.split(".")[0] >= 6) || + (result.blackberry && result.version >= 10.1) + || (result.chromium && result.version >= 20) + ) { + result.a = t; + } + else if ((result.msie && result.version < 10) || + (result.chrome && result.version < 20) || + (result.firefox && result.version < 20.0) || + (result.safari && result.version < 6) || + (result.opera && result.version < 10.0) || + (result.ios && result.osversion && result.osversion.split(".")[0] < 6) + || (result.chromium && result.version < 20) + ) { + result.c = t + } else result.x = t + + return result + } + + var bowser = detect(typeof navigator !== 'undefined' ? navigator.userAgent || '' : '') + + bowser.test = function (browserList) { + for (var i = 0; i < browserList.length; ++i) { + var browserItem = browserList[i]; + if (typeof browserItem=== 'string') { + if (browserItem in bowser) { + return true; + } + } + } + return false; + } + + /** + * Get version precisions count + * + * @example + * getVersionPrecision("1.10.3") // 3 + * + * @param {string} version + * @return {number} + */ + function getVersionPrecision(version) { + return version.split(".").length; + } + + /** + * Array::map polyfill + * + * @param {Array} arr + * @param {Function} iterator + * @return {Array} + */ + function map(arr, iterator) { + var result = [], i; + if (Array.prototype.map) { + return Array.prototype.map.call(arr, iterator); + } + for (i = 0; i < arr.length; i++) { + result.push(iterator(arr[i])); + } + return result; + } + + /** + * Calculate browser version weight + * + * @example + * compareVersions(['1.10.2.1', '1.8.2.1.90']) // 1 + * compareVersions(['1.010.2.1', '1.09.2.1.90']); // 1 + * compareVersions(['1.10.2.1', '1.10.2.1']); // 0 + * compareVersions(['1.10.2.1', '1.0800.2']); // -1 + * + * @param {Array<String>} versions versions to compare + * @return {Number} comparison result + */ + function compareVersions(versions) { + // 1) get common precision for both versions, for example for "10.0" and "9" it should be 2 + var precision = Math.max(getVersionPrecision(versions[0]), getVersionPrecision(versions[1])); + var chunks = map(versions, function (version) { + var delta = precision - getVersionPrecision(version); + + // 2) "9" -> "9.0" (for precision = 2) + version = version + new Array(delta + 1).join(".0"); + + // 3) "9.0" -> ["000000000"", "000000009"] + return map(version.split("."), function (chunk) { + return new Array(20 - chunk.length).join("0") + chunk; + }).reverse(); + }); + + // iterate in reverse order by reversed chunks array + while (--precision >= 0) { + // 4) compare: "000000009" > "000000010" = false (but "9" > "10" = true) + if (chunks[0][precision] > chunks[1][precision]) { + return 1; + } + else if (chunks[0][precision] === chunks[1][precision]) { + if (precision === 0) { + // all version chunks are same + return 0; + } + } + else { + return -1; + } + } + } + + /** + * Check if browser is unsupported + * + * @example + * bowser.isUnsupportedBrowser({ + * msie: "10", + * firefox: "23", + * chrome: "29", + * safari: "5.1", + * opera: "16", + * phantom: "534" + * }); + * + * @param {Object} minVersions map of minimal version to browser + * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map + * @param {String} [ua] user agent string + * @return {Boolean} + */ + function isUnsupportedBrowser(minVersions, strictMode, ua) { + var _bowser = bowser; + + // make strictMode param optional with ua param usage + if (typeof strictMode === 'string') { + ua = strictMode; + strictMode = void(0); + } + + if (strictMode === void(0)) { + strictMode = false; + } + if (ua) { + _bowser = detect(ua); + } + + var version = "" + _bowser.version; + for (var browser in minVersions) { + if (minVersions.hasOwnProperty(browser)) { + if (_bowser[browser]) { + if (typeof minVersions[browser] !== 'string') { + throw new Error('Browser version in the minVersion map should be a string: ' + browser + ': ' + String(minVersions)); + } + + // browser version and min supported version. + return compareVersions([version, minVersions[browser]]) < 0; + } + } + } + + return strictMode; // not found + } + + /** + * Check if browser is supported + * + * @param {Object} minVersions map of minimal version to browser + * @param {Boolean} [strictMode = false] flag to return false if browser wasn't found in map + * @param {String} [ua] user agent string + * @return {Boolean} + */ + function check(minVersions, strictMode, ua) { + return !isUnsupportedBrowser(minVersions, strictMode, ua); + } + + bowser.isUnsupportedBrowser = isUnsupportedBrowser; + bowser.compareVersions = compareVersions; + bowser.check = check; + + /* + * Set our detect method to the main bowser object so we can + * reuse it to test other user agents. + * This is needed to implement future tests. + */ + bowser._detect = detect; + + return bowser +}); \ No newline at end of file diff --git a/bigbluebutton-html5/client/compatibility/jquery.json-2.4.min.js b/bigbluebutton-html5/client/compatibility/jquery.json-2.4.min.js new file mode 100644 index 0000000000000000000000000000000000000000..98b94018f9b9166a79b5559e737277f778c6a443 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/jquery.json-2.4.min.js @@ -0,0 +1,23 @@ +/*! jQuery JSON plugin 2.4.0 | code.google.com/p/jquery-json */ +(function($){'use strict';var escape=/["\\\x00-\x1f\x7f-\x9f]/g,meta={'\b':'\\b','\t':'\\t','\n':'\\n','\f':'\\f','\r':'\\r','"':'\\"','\\':'\\\\'},hasOwn=Object.prototype.hasOwnProperty;$.toJSON=typeof JSON==='object'&&JSON.stringify?JSON.stringify:function(o){if(o===null){return'null';} + var pairs,k,name,val,type=$.type(o);if(type==='undefined'){return undefined;} + if(type==='number'||type==='boolean'){return String(o);} + if(type==='string'){return $.quoteString(o);} + if(typeof o.toJSON==='function'){return $.toJSON(o.toJSON());} + if(type==='date'){var month=o.getUTCMonth()+1,day=o.getUTCDate(),year=o.getUTCFullYear(),hours=o.getUTCHours(),minutes=o.getUTCMinutes(),seconds=o.getUTCSeconds(),milli=o.getUTCMilliseconds();if(month<10){month='0'+month;} + if(day<10){day='0'+day;} + if(hours<10){hours='0'+hours;} + if(minutes<10){minutes='0'+minutes;} + if(seconds<10){seconds='0'+seconds;} + if(milli<100){milli='0'+milli;} + if(milli<10){milli='0'+milli;} + return'"'+year+'-'+month+'-'+day+'T'+ + hours+':'+minutes+':'+seconds+'.'+milli+'Z"';} + pairs=[];if($.isArray(o)){for(k=0;k<o.length;k++){pairs.push($.toJSON(o[k])||'null');} + return'['+pairs.join(',')+']';} + if(typeof o==='object'){for(k in o){if(hasOwn.call(o,k)){type=typeof k;if(type==='number'){name='"'+k+'"';}else if(type==='string'){name=$.quoteString(k);}else{continue;} + type=typeof o[k];if(type!=='function'&&type!=='undefined'){val=$.toJSON(o[k]);pairs.push(name+':'+val);}}} + return'{'+pairs.join(',')+'}';}};$.evalJSON=typeof JSON==='object'&&JSON.parse?JSON.parse:function(str){return eval('('+str+')');};$.secureEvalJSON=typeof JSON==='object'&&JSON.parse?JSON.parse:function(str){var filtered=str.replace(/\\["\\\/bfnrtu]/g,'@').replace(/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,']').replace(/(?:^|:|,)(?:\s*\[)+/g,'');if(/^[\],:{}\s]*$/.test(filtered)){return eval('('+str+')');} + throw new SyntaxError('Error parsing JSON, source is not valid.');};$.quoteString=function(str){if(str.match(escape)){return'"'+str.replace(escape,function(a){var c=meta[a];if(typeof c==='string'){return c;} + c=a.charCodeAt();return'\\u00'+Math.floor(c/16).toString(16)+(c%16).toString(16);})+'"';} + return'"'+str+'"';};}(jQuery)); \ No newline at end of file diff --git a/bigbluebutton-html5/client/compatibility/kurento-extension.js b/bigbluebutton-html5/client/compatibility/kurento-extension.js new file mode 100644 index 0000000000000000000000000000000000000000..3aa4e9243994311f35964cb79379d1a53cc74f74 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/kurento-extension.js @@ -0,0 +1,496 @@ +var isFirefox = typeof window.InstallTrigger !== 'undefined'; +var isOpera = !!window.opera || navigator.userAgent.indexOf(' OPR/') >= 0; +var isChrome = !!window.chrome && !isOpera; +var isSafari = navigator.userAgent.indexOf("Safari") >= 0 && !isChrome; +var kurentoHandler = null; + +Kurento = function ( + tag, + voiceBridge, + conferenceUsername, + internalMeetingId, + onFail = null, + chromeExtension = null + ) { + + this.ws = null; + this.video; + this.screen; + this.webRtcPeer; + this.extensionInstalled = false; + this.screenConstraints = {}; + this.mediaCallback = null; + + this.voiceBridge = voiceBridge + '-SCREENSHARE'; + this.internalMeetingId = internalMeetingId; + + this.vid_width = window.screen.width; + this.vid_height = window.screen.height; + + // TODO properly generate a uuid + this.sessid = Math.random().toString(); + + this.renderTag = 'remote-media'; + + this.caller_id_name = conferenceUsername; + this.caller_id_number = conferenceUsername; + + this.kurentoPort = "bbb-webrtc-sfu"; + this.hostName = window.location.hostname; + this.socketUrl = 'wss://' + this.hostName + '/' + this.kurentoPort; + + this.iceServers = null; + + if (chromeExtension != null) { + this.chromeExtension = chromeExtension; + window.chromeExtension = chromeExtension; + } + + if (onFail != null) { + this.onFail = Kurento.normalizeCallback(onFail); + } else { + var _this = this; + this.onFail = function () { + _this.logError('Default error handler'); + }; + } +}; + +this.KurentoManager= function () { + this.kurentoVideo = null; + this.kurentoScreenshare = null; +}; + +KurentoManager.prototype.exitScreenShare = function () { + console.log(" [exitScreenShare] Exiting screensharing"); + if(typeof this.kurentoScreenshare !== 'undefined' && this.kurentoScreenshare) { + if(this.kurentoScreenshare.ws !== null) { + this.kurentoScreenshare.ws.onclose = function(){}; + this.kurentoScreenshare.ws.close(); + } + + this.kurentoScreenshare.disposeScreenShare(); + this.kurentoScreenshare = null; + } + + if (this.kurentoScreenshare) { + this.kurentoScreenshare = null; + } + + if(typeof this.kurentoVideo !== 'undefined' && this.kurentoVideo) { + this.exitVideo(); + } +}; + +KurentoManager.prototype.exitVideo = function () { + console.log(" [exitScreenShare] Exiting screensharing viewing"); + if(typeof this.kurentoVideo !== 'undefined' && this.kurentoVideo) { + if(this.kurentoVideo.ws !== null) { + this.kurentoVideo.ws.onclose = function(){}; + this.kurentoVideo.ws.close(); + } + + this.kurentoVideo.disposeScreenShare(); + this.kurentoVideo = null; + } + + if (this.kurentoVideo) { + this.kurentoVideo = null; + } +}; + +KurentoManager.prototype.shareScreen = function (tag) { + this.exitScreenShare(); + var obj = Object.create(Kurento.prototype); + Kurento.apply(obj, arguments); + this.kurentoScreenshare = obj; + this.kurentoScreenshare.setScreenShare(tag); +}; + +KurentoManager.prototype.joinWatchVideo = function (tag) { + this.exitVideo(); + var obj = Object.create(Kurento.prototype); + Kurento.apply(obj, arguments); + this.kurentoVideo = obj; + this.kurentoVideo.setWatchVideo(tag); +}; + + +Kurento.prototype.setScreenShare = function (tag) { + this.mediaCallback = this.makeShare.bind(this); + this.create(tag); +}; + +Kurento.prototype.create = function (tag) { + this.setRenderTag(tag); + this.iceServers = true; + this.init(); +}; + +Kurento.prototype.init = function () { + var self = this; + if("WebSocket" in window) { + console.log("this browser supports websockets"); + this.ws = new WebSocket(this.socketUrl); + + this.ws.onmessage = this.onWSMessage.bind(this); + this.ws.onclose = (close) => { + kurentoManager.exitScreenShare(); + self.onFail("Websocket connection closed"); + }; + this.ws.onerror = (error) => { + kurentoManager.exitScreenShare(); + self.onFail("Websocket connection error"); + }; + this.ws.onopen = function () { + self.mediaCallback(); + }.bind(self); + } + else + console.log("this browser does not support websockets"); +}; + +Kurento.prototype.onWSMessage = function (message) { + var parsedMessage = JSON.parse(message.data); + switch (parsedMessage.id) { + + case 'presenterResponse': + this.presenterResponse(parsedMessage); + break; + case 'viewerResponse': + this.viewerResponse(parsedMessage); + break; + case 'stopSharing': + kurentoManager.exitScreenShare(); + break; + case 'iceCandidate': + this.webRtcPeer.addIceCandidate(parsedMessage.candidate); + break; + default: + console.error('Unrecognized message', parsedMessage); + } +}; + +Kurento.prototype.setRenderTag = function (tag) { + this.renderTag = tag; +}; + +Kurento.prototype.presenterResponse = function (message) { + if (message.response != 'accepted') { + var errorMsg = message.message ? message.message : 'Unknown error'; + console.warn('Call not accepted for the following reason: ' + JSON.stringify(errorMsg, null, 2)); + kurentoManager.exitScreenShare(); + this.onFail(errorMessage); + } else { + console.log("Presenter call was accepted with SDP => " + message.sdpAnswer); + this.webRtcPeer.processAnswer(message.sdpAnswer); + } +} + +Kurento.prototype.viewerResponse = function (message) { + if (message.response != 'accepted') { + var errorMsg = message.message ? message.message : 'Unknown error'; + console.warn('Call not accepted for the following reason: ' + errorMsg); + kurentoManager.exitScreenShare(); + this.onFail(errorMessage); + } else { + console.log("Viewer call was accepted with SDP => " + message.sdpAnswer); + this.webRtcPeer.processAnswer(message.sdpAnswer); + } +} + +Kurento.prototype.serverResponse = function (message) { + if (message.response != 'accepted') { + var errorMsg = message.message ? message.message : 'Unknow error'; + console.warn('Call not accepted for the following reason: ' + errorMsg); + kurentoManager.exitScreenShare(); + } else { + this.webRtcPeer.processAnswer(message.sdpAnswer); + } +} + +Kurento.prototype.makeShare = function() { + var self = this; + if (!this.webRtcPeer) { + var options = { + onicecandidate : self.onIceCandidate.bind(self) + } + + this.startScreenStreamFrom(); + } +} + +Kurento.prototype.onOfferPresenter = function (error, offerSdp) { + let self = this; + if(error) { + console.log("Kurento.prototype.onOfferPresenter Error " + error); + this.onFail(error); + return; + } + + var message = { + id : 'presenter', + type: 'screenshare', + role: 'presenter', + internalMeetingId: self.internalMeetingId, + voiceBridge: self.voiceBridge, + callerName : self.caller_id_name, + sdpOffer : offerSdp, + vh: self.vid_height, + vw: self.vid_width + }; + console.log("onOfferPresenter sending to screenshare server => " + JSON.stringify(message, null, 2)); + this.sendMessage(message); +} + +Kurento.prototype.startScreenStreamFrom = function () { + var self = this; + if (!!window.chrome) { + if (!self.chromeExtension) { + self.logError({ + status: 'failed', + message: 'Missing Chrome Extension key', + }); + self.onFail(); + return; + } + } + // TODO it would be nice to check those constraints + if (typeof screenConstraints !== undefined) { + self.screenConstraints = {}; + } + self.screenConstraints.video = {}; + + console.log(self); + var options = { + localVideo: document.getElementById(this.renderTag), + onicecandidate : self.onIceCandidate.bind(self), + mediaConstraints : self.screenConstraints, + sendSource : 'desktop' + }; + + console.log(" Peer options => " + JSON.stringify(options, null, 2)); + + self.webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerSendonly(options, function(error) { + if(error) { + console.log("WebRtcPeerSendonly constructor error " + JSON.stringify(error, null, 2)); + self.onFail(error); + return kurentoManager.exitScreenShare(); + } + + self.webRtcPeer.generateOffer(self.onOfferPresenter.bind(self)); + console.log("Generated peer offer w/ options " + JSON.stringify(options)); + }); +} + +Kurento.prototype.onIceCandidate = function (candidate) { + let self = this; + console.log('Local candidate' + JSON.stringify(candidate)); + + var message = { + id : 'onIceCandidate', + role: 'presenter', + type: 'screenshare', + voiceBridge: self.voiceBridge, + candidate : candidate + } + this.sendMessage(message); +} + +Kurento.prototype.onViewerIceCandidate = function (candidate) { + let self = this; + console.log('Viewer local candidate' + JSON.stringify(candidate)); + + var message = { + id : 'viewerIceCandidate', + role: 'viewer', + type: 'screenshare', + voiceBridge: self.voiceBridge, + candidate : candidate, + callerName: self.caller_id_name + } + this.sendMessage(message); +} + +Kurento.prototype.setWatchVideo = function (tag) { + this.useVideo = true; + this.useCamera = 'none'; + this.useMic = 'none'; + this.mediaCallback = this.viewer; + this.create(tag); +}; + +Kurento.prototype.viewer = function () { + var self = this; + if (!this.webRtcPeer) { + + var options = { + remoteVideo: document.getElementById(this.renderTag), + onicecandidate : this.onViewerIceCandidate.bind(this) + } + + self.webRtcPeer = kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly(options, function(error) { + if(error) { + return self.onFail(error); + } + + this.generateOffer(self.onOfferViewer.bind(self)); + }); + } +}; + +Kurento.prototype.onOfferViewer = function (error, offerSdp) { + let self = this; + if(error) { + console.log("Kurento.prototype.onOfferViewer Error " + error); + return this.onFail(); + } + var message = { + id : 'viewer', + type: 'screenshare', + role: 'viewer', + internalMeetingId: self.internalMeetingId, + voiceBridge: self.voiceBridge, + callerName : self.caller_id_name, + sdpOffer : offerSdp + }; + + console.log("onOfferViewer sending to screenshare server => " + JSON.stringify(message, null, 2)); + this.sendMessage(message); +}; + +Kurento.prototype.stop = function() { + //if (this.webRtcPeer) { + // var message = { + // id : 'stop', + // type : 'screenshare', + // voiceBridge: kurentoHandler.voiceBridge + // } + // kurentoHandler.sendMessage(message); + // kurentoHandler.disposeScreenShare(); + //} +} + +Kurento.prototype.dispose = function() { + if (this.webRtcPeer) { + this.webRtcPeer.dispose(); + this.webRtcPeer = null; + } +} + +Kurento.prototype.disposeScreenShare = function() { + if (this.webRtcPeer) { + this.webRtcPeer.dispose(); + this.webRtcPeer = null; + } +} + +Kurento.prototype.sendMessage = function(message) { + var jsonMessage = JSON.stringify(message); + console.log('Sending message: ' + jsonMessage); + this.ws.send(jsonMessage); +} + +Kurento.prototype.logger = function (obj) { + console.log(obj); +}; + +Kurento.prototype.logError = function (obj) { + console.error(obj); +}; + + +Kurento.normalizeCallback = function (callback) { + if (typeof callback == 'function') { + return callback; + } else { + console.log(document.getElementById('BigBlueButton')[callback]); + return function (args) { + document.getElementById('BigBlueButton')[callback](args); + }; + } +}; + +/* Global methods */ + +// this function explains how to use above methods/objects +window.getScreenConstraints = function(sendSource, callback) { + let chromeMediaSourceId = sendSource; + let screenConstraints = {video: {}}; + + if(isChrome) { + getChromeScreenConstraints ((constraints) => { + let sourceId = constraints.streamId; + + // this statement sets gets 'sourceId" and sets "chromeMediaSourceId" + screenConstraints.video.chromeMediaSource = { exact: [sendSource]}; + screenConstraints.video.chromeMediaSourceId = sourceId; + console.log("getScreenConstraints for Chrome returns => "); + console.log(screenConstraints); + // now invoking native getUserMedia API + callback(null, screenConstraints); + + }, chromeExtension); + } + else if (isFirefox) { + screenConstraints.video.mediaSource= "window"; + screenConstraints.video.width= {max: "1280"}; + screenConstraints.video.height = {max: "720"}; + + console.log("getScreenConstraints for Firefox returns => "); + console.log(screenConstraints); + // now invoking native getUserMedia API + callback(null, screenConstraints); + } + else if(isSafari) { + screenConstraints.video.mediaSource= "screen"; + screenConstraints.video.width= {max: window.screen.width}; + screenConstraints.video.height = {max: window.screen.vid_height}; + + console.log("getScreenConstraints for Safari returns => "); + console.log(screenConstraints); + // now invoking native getUserMedia API + callback(null, screenConstraints); + } +} + +window.kurentoInitialize = function () { + if (window.kurentoManager == null || window.KurentoManager == undefined) { + window.kurentoManager = new KurentoManager(); + } +}; + +window.kurentoShareScreen = function() { + window.kurentoInitialize(); + window.kurentoManager.shareScreen.apply(window.kurentoManager, arguments); +}; + + +window.kurentoExitScreenShare = function () { + window.kurentoInitialize(); + window.kurentoManager.exitScreenShare(); +}; + +window.kurentoWatchVideo = function () { + window.kurentoInitialize(); + window.kurentoManager.joinWatchVideo.apply(window.kurentoManager, arguments); +}; + +window.kurentoExitVideo = function () { + window.kurentoInitialize(); + window.kurentoManager.exitVideo(); +} + +window.getChromeScreenConstraints = function(callback, extensionId) { + chrome.runtime.sendMessage(extensionId, { + getStream: true, + sources: [ + "window", + "screen", + "tab" + ]}, + function(response) { + console.log(response); + callback(response); + }); +};; diff --git a/bigbluebutton-html5/client/compatibility/kurento-utils.js b/bigbluebutton-html5/client/compatibility/kurento-utils.js new file mode 100644 index 0000000000000000000000000000000000000000..d171093e8784054a9f42264a0dccb960c5c25d10 --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/kurento-utils.js @@ -0,0 +1,4362 @@ +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.kurentoUtils = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ +var freeice = require('freeice'); +var inherits = require('inherits'); +var UAParser = require('ua-parser-js'); +var uuid = require('uuid'); +var hark = require('hark'); +var EventEmitter = require('events').EventEmitter; +var recursive = require('merge').recursive.bind(undefined, true); +var sdpTranslator = require('sdp-translator'); +var logger = window.Logger || console; +try { + require('kurento-browser-extensions'); +} catch (error) { + if (typeof getScreenConstraints === 'undefined') { + logger.warn('screen sharing is not available'); + getScreenConstraints = function getScreenConstraints(sendSource, callback) { + callback(new Error('This library is not enabled for screen sharing')); + }; + } +} +var MEDIA_CONSTRAINTS = { + audio: true, + video: { + width: 640, + framerate: 15 + } + }; +var ua = window && window.navigator ? window.navigator.userAgent : ''; +var parser = new UAParser(ua); +var browser = parser.getBrowser(); +var usePlanB = false; +if (browser.name === 'Chrome' || browser.name === 'Chromium') { + logger.debug(browser.name + ': using SDP PlanB'); + usePlanB = true; +} +function noop(error) { + if (error) + logger.error(error); +} +function trackStop(track) { + track.stop && track.stop(); +} +function streamStop(stream) { + stream.getTracks().forEach(trackStop); +} +var dumpSDP = function (description) { + if (typeof description === 'undefined' || description === null) { + return ''; + } + return 'type: ' + description.type + '\r\n' + description.sdp; +}; +function bufferizeCandidates(pc, onerror) { + var candidatesQueue = []; + pc.addEventListener('signalingstatechange', function () { + if (this.signalingState === 'stable') { + while (candidatesQueue.length) { + var entry = candidatesQueue.shift(); + this.addIceCandidate(entry.candidate, entry.callback, entry.callback); + } + } + }); + return function (candidate, callback) { + callback = callback || onerror; + switch (pc.signalingState) { + case 'closed': + callback(new Error('PeerConnection object is closed')); + break; + case 'stable': + if (pc.remoteDescription) { + pc.addIceCandidate(candidate, callback, callback); + break; + } + default: + candidatesQueue.push({ + candidate: candidate, + callback: callback + }); + } + }; +} +function removeFIDFromOffer(sdp) { + var n = sdp.indexOf('a=ssrc-group:FID'); + if (n > 0) { + return sdp.slice(0, n); + } else { + return sdp; + } +} +function getSimulcastInfo(videoStream) { + var videoTracks = videoStream.getVideoTracks(); + if (!videoTracks.length) { + logger.warn('No video tracks available in the video stream'); + return ''; + } + var lines = [ + 'a=x-google-flag:conference', + 'a=ssrc-group:SIM 1 2 3', + 'a=ssrc:1 cname:localVideo', + 'a=ssrc:1 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:1 mslabel:' + videoStream.id, + 'a=ssrc:1 label:' + videoTracks[0].id, + 'a=ssrc:2 cname:localVideo', + 'a=ssrc:2 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:2 mslabel:' + videoStream.id, + 'a=ssrc:2 label:' + videoTracks[0].id, + 'a=ssrc:3 cname:localVideo', + 'a=ssrc:3 msid:' + videoStream.id + ' ' + videoTracks[0].id, + 'a=ssrc:3 mslabel:' + videoStream.id, + 'a=ssrc:3 label:' + videoTracks[0].id + ]; + lines.push(''); + return lines.join('\n'); +} +function WebRtcPeer(mode, options, callback) { + if (!(this instanceof WebRtcPeer)) { + return new WebRtcPeer(mode, options, callback); + } + WebRtcPeer.super_.call(this); + if (options instanceof Function) { + callback = options; + options = undefined; + } + options = options || {}; + callback = (callback || noop).bind(this); + var self = this; + var localVideo = options.localVideo; + var remoteVideo = options.remoteVideo; + var videoStream = options.videoStream; + var audioStream = options.audioStream; + var mediaConstraints = options.mediaConstraints; + var connectionConstraints = options.connectionConstraints; + var pc = options.peerConnection; + var sendSource = options.sendSource || 'webcam'; + var dataChannelConfig = options.dataChannelConfig; + var useDataChannels = options.dataChannels || false; + var dataChannel; + var guid = uuid.v4(); + var configuration = recursive({ iceServers: freeice() }, options.configuration); + var onicecandidate = options.onicecandidate; + if (onicecandidate) + this.on('icecandidate', onicecandidate); + var oncandidategatheringdone = options.oncandidategatheringdone; + if (oncandidategatheringdone) { + this.on('candidategatheringdone', oncandidategatheringdone); + } + var simulcast = options.simulcast; + var multistream = options.multistream; + var interop = new sdpTranslator.Interop(); + var candidatesQueueOut = []; + var candidategatheringdone = false; + Object.defineProperties(this, { + 'peerConnection': { + get: function () { + return pc; + } + }, + 'id': { + value: options.id || guid, + writable: false + }, + 'remoteVideo': { + get: function () { + return remoteVideo; + } + }, + 'localVideo': { + get: function () { + return localVideo; + } + }, + 'dataChannel': { + get: function () { + return dataChannel; + } + }, + 'currentFrame': { + get: function () { + if (!remoteVideo) + return; + if (remoteVideo.readyState < remoteVideo.HAVE_CURRENT_DATA) + throw new Error('No video stream data available'); + var canvas = document.createElement('canvas'); + canvas.width = remoteVideo.videoWidth; + canvas.height = remoteVideo.videoHeight; + canvas.getContext('2d').drawImage(remoteVideo, 0, 0); + return canvas; + } + } + }); + if (!pc) { + pc = new RTCPeerConnection(configuration); + if (useDataChannels && !dataChannel) { + var dcId = 'WebRtcPeer-' + self.id; + var dcOptions = undefined; + if (dataChannelConfig) { + dcId = dataChannelConfig.id || dcId; + dcOptions = dataChannelConfig.options; + } + dataChannel = pc.createDataChannel(dcId, dcOptions); + if (dataChannelConfig) { + dataChannel.onopen = dataChannelConfig.onopen; + dataChannel.onclose = dataChannelConfig.onclose; + dataChannel.onmessage = dataChannelConfig.onmessage; + dataChannel.onbufferedamountlow = dataChannelConfig.onbufferedamountlow; + dataChannel.onerror = dataChannelConfig.onerror || noop; + } + } + } + pc.addEventListener('icecandidate', function (event) { + var candidate = event.candidate; + if (EventEmitter.listenerCount(self, 'icecandidate') || EventEmitter.listenerCount(self, 'candidategatheringdone')) { + if (candidate) { + var cand; + if (multistream && usePlanB) { + cand = interop.candidateToUnifiedPlan(candidate); + } else { + cand = candidate; + } + self.emit('icecandidate', cand); + candidategatheringdone = false; + } else if (!candidategatheringdone) { + self.emit('candidategatheringdone'); + candidategatheringdone = true; + } + } else if (!candidategatheringdone) { + candidatesQueueOut.push(candidate); + if (!candidate) + candidategatheringdone = true; + } + }); + pc.ontrack = options.onaddstream; + pc.onnegotiationneeded = options.onnegotiationneeded; + this.on('newListener', function (event, listener) { + if (event === 'icecandidate' || event === 'candidategatheringdone') { + while (candidatesQueueOut.length) { + var candidate = candidatesQueueOut.shift(); + if (!candidate === (event === 'candidategatheringdone')) { + listener(candidate); + } + } + } + }); + var addIceCandidate = bufferizeCandidates(pc); + this.addIceCandidate = function (iceCandidate, callback) { + var candidate; + if (multistream && usePlanB) { + candidate = interop.candidateToPlanB(iceCandidate); + } else { + candidate = new RTCIceCandidate(iceCandidate); + } + logger.debug('Remote ICE candidate received', iceCandidate); + callback = (callback || noop).bind(this); + addIceCandidate(candidate, callback); + }; + this.generateOffer = function (callback) { + callback = callback.bind(this); + var offerAudio = true; + var offerVideo = true; + if (mediaConstraints) { + offerAudio = typeof mediaConstraints.audio === 'boolean' ? mediaConstraints.audio : true; + offerVideo = typeof mediaConstraints.video === 'boolean' ? mediaConstraints.video : true; + } + var browserDependantConstraints = { + offerToReceiveAudio: mode !== 'sendonly' && offerAudio, + offerToReceiveVideo: mode !== 'sendonly' && offerVideo + }; + var constraints = browserDependantConstraints; + logger.debug('constraints: ' + JSON.stringify(constraints)); + pc.createOffer(constraints).then(function (offer) { + logger.debug('Created SDP offer'); + offer = mangleSdpToAddSimulcast(offer); + return pc.setLocalDescription(offer); + }).then(function () { + var localDescription = pc.localDescription; + logger.debug('Local description set', localDescription.sdp); + if (multistream && usePlanB) { + localDescription = interop.toUnifiedPlan(localDescription); + logger.debug('offer::origPlanB->UnifiedPlan', dumpSDP(localDescription)); + } + callback(null, localDescription.sdp, self.processAnswer.bind(self)); + }).catch(callback); + }; + this.getLocalSessionDescriptor = function () { + return pc.localDescription; + }; + this.getRemoteSessionDescriptor = function () { + return pc.remoteDescription; + }; + function setRemoteVideo() { + if (remoteVideo) { + var stream = pc.getRemoteStreams()[0]; + remoteVideo.pause(); + remoteVideo.srcObject = stream; + remoteVideo.load(); + logger.info('Remote URL:', remoteVideo.srcObject); + } + } + this.showLocalVideo = function () { + localVideo.srcObject = videoStream; + localVideo.muted = true; + }; + this.send = function (data) { + if (dataChannel && dataChannel.readyState === 'open') { + dataChannel.send(data); + } else { + logger.warn('Trying to send data over a non-existing or closed data channel'); + } + }; + this.processAnswer = function (sdpAnswer, callback) { + callback = (callback || noop).bind(this); + var answer = new RTCSessionDescription({ + type: 'answer', + sdp: sdpAnswer + }); + if (multistream && usePlanB) { + var planBAnswer = interop.toPlanB(answer); + logger.debug('asnwer::planB', dumpSDP(planBAnswer)); + answer = planBAnswer; + } + logger.debug('SDP answer received, setting remote description'); + if (pc.signalingState === 'closed') { + return callback('PeerConnection is closed'); + } + pc.setRemoteDescription(answer, function () { + setRemoteVideo(); + callback(); + }, callback); + }; + this.processOffer = function (sdpOffer, callback) { + callback = callback.bind(this); + var offer = new RTCSessionDescription({ + type: 'offer', + sdp: sdpOffer + }); + if (multistream && usePlanB) { + var planBOffer = interop.toPlanB(offer); + logger.debug('offer::planB', dumpSDP(planBOffer)); + offer = planBOffer; + } + logger.debug('SDP offer received, setting remote description'); + if (pc.signalingState === 'closed') { + return callback('PeerConnection is closed'); + } + pc.setRemoteDescription(offer).then(function () { + return setRemoteVideo(); + }).then(function () { + return pc.createAnswer(); + }).then(function (answer) { + answer = mangleSdpToAddSimulcast(answer); + logger.debug('Created SDP answer'); + return pc.setLocalDescription(answer); + }).then(function () { + var localDescription = pc.localDescription; + if (multistream && usePlanB) { + localDescription = interop.toUnifiedPlan(localDescription); + logger.debug('answer::origPlanB->UnifiedPlan', dumpSDP(localDescription)); + } + logger.debug('Local description set', localDescription.sdp); + callback(null, localDescription.sdp); + }).catch(callback); + }; + function mangleSdpToAddSimulcast(answer) { + if (simulcast) { + if (browser.name === 'Chrome' || browser.name === 'Chromium') { + logger.debug('Adding multicast info'); + answer = new RTCSessionDescription({ + 'type': answer.type, + 'sdp': removeFIDFromOffer(answer.sdp) + getSimulcastInfo(videoStream) + }); + } else { + logger.warn('Simulcast is only available in Chrome browser.'); + } + } + return answer; + } + function start() { + if (pc.signalingState === 'closed') { + callback('The peer connection object is in "closed" state. This is most likely due to an invocation of the dispose method before accepting in the dialogue'); + } + if (videoStream && localVideo) { + self.showLocalVideo(); + } + if (videoStream) { + pc.addStream(videoStream); + } + if (audioStream) { + pc.addStream(audioStream); + } + var browser = parser.getBrowser(); + if (mode === 'sendonly' && (browser.name === 'Chrome' || browser.name === 'Chromium') && browser.major === 39) { + mode = 'sendrecv'; + } + callback(); + } + if (mode !== 'recvonly' && !videoStream && !audioStream) { + function getMedia(constraints) { + if (constraints === undefined) { + constraints = MEDIA_CONSTRAINTS; + } + navigator.mediaDevices.getUserMedia(constraints).then(function (stream) { + videoStream = stream; + start(); + }).catch(callback); + } + if (sendSource === 'webcam') { + getMedia(mediaConstraints); + } else { + getScreenConstraints(sendSource, function (error, constraints_) { + if (error) + return callback(error); + constraints = [mediaConstraints]; + constraints.unshift(constraints_); + getMedia(recursive.apply(undefined, constraints)); + }, guid); + } + } else { + setTimeout(start, 0); + } + this.on('_dispose', function () { + if (localVideo) { + localVideo.pause(); + localVideo.src = ''; + localVideo.load(); + localVideo.muted = false; + } + if (remoteVideo) { + remoteVideo.pause(); + remoteVideo.src = ''; + remoteVideo.load(); + } + self.removeAllListeners(); + if (window.cancelChooseDesktopMedia !== undefined) { + window.cancelChooseDesktopMedia(guid); + } + }); +} +inherits(WebRtcPeer, EventEmitter); +function createEnableDescriptor(type) { + var method = 'get' + type + 'Tracks'; + return { + enumerable: true, + get: function () { + if (!this.peerConnection) + return; + var streams = this.peerConnection.getLocalStreams(); + if (!streams.length) + return; + for (var i = 0, stream; stream = streams[i]; i++) { + var tracks = stream[method](); + for (var j = 0, track; track = tracks[j]; j++) + if (!track.enabled) + return false; + } + return true; + }, + set: function (value) { + function trackSetEnable(track) { + track.enabled = value; + } + this.peerConnection.getLocalStreams().forEach(function (stream) { + stream[method]().forEach(trackSetEnable); + }); + } + }; +} +Object.defineProperties(WebRtcPeer.prototype, { + 'enabled': { + enumerable: true, + get: function () { + return this.audioEnabled && this.videoEnabled; + }, + set: function (value) { + this.audioEnabled = this.videoEnabled = value; + } + }, + 'audioEnabled': createEnableDescriptor('Audio'), + 'videoEnabled': createEnableDescriptor('Video') +}); +WebRtcPeer.prototype.getLocalStream = function (index) { + if (this.peerConnection) { + return this.peerConnection.getLocalStreams()[index || 0]; + } +}; +WebRtcPeer.prototype.getRemoteStream = function (index) { + if (this.peerConnection) { + return this.peerConnection.getRemoteStreams()[index || 0]; + } +}; +WebRtcPeer.prototype.dispose = function () { + logger.debug('Disposing WebRtcPeer'); + var pc = this.peerConnection; + var dc = this.dataChannel; + try { + if (dc) { + if (dc.signalingState === 'closed') + return; + dc.close(); + } + if (pc) { + if (pc.signalingState === 'closed') + return; + pc.getLocalStreams().forEach(streamStop); + pc.close(); + } + } catch (err) { + logger.warn('Exception disposing webrtc peer ' + err); + } + this.emit('_dispose'); +}; +function WebRtcPeerRecvonly(options, callback) { + if (!(this instanceof WebRtcPeerRecvonly)) { + return new WebRtcPeerRecvonly(options, callback); + } + WebRtcPeerRecvonly.super_.call(this, 'recvonly', options, callback); +} +inherits(WebRtcPeerRecvonly, WebRtcPeer); +function WebRtcPeerSendonly(options, callback) { + if (!(this instanceof WebRtcPeerSendonly)) { + return new WebRtcPeerSendonly(options, callback); + } + WebRtcPeerSendonly.super_.call(this, 'sendonly', options, callback); +} +inherits(WebRtcPeerSendonly, WebRtcPeer); +function WebRtcPeerSendrecv(options, callback) { + if (!(this instanceof WebRtcPeerSendrecv)) { + return new WebRtcPeerSendrecv(options, callback); + } + WebRtcPeerSendrecv.super_.call(this, 'sendrecv', options, callback); +} +inherits(WebRtcPeerSendrecv, WebRtcPeer); +function harkUtils(stream, options) { + return hark(stream, options); +} +exports.bufferizeCandidates = bufferizeCandidates; +exports.WebRtcPeerRecvonly = WebRtcPeerRecvonly; +exports.WebRtcPeerSendonly = WebRtcPeerSendonly; +exports.WebRtcPeerSendrecv = WebRtcPeerSendrecv; +exports.hark = harkUtils; +},{"events":4,"freeice":5,"hark":8,"inherits":9,"kurento-browser-extensions":10,"merge":11,"sdp-translator":18,"ua-parser-js":21,"uuid":23}],2:[function(require,module,exports){ +if (window.addEventListener) + module.exports = require('./index'); +},{"./index":3}],3:[function(require,module,exports){ +var WebRtcPeer = require('./WebRtcPeer'); +exports.WebRtcPeer = WebRtcPeer; +},{"./WebRtcPeer":1}],4:[function(require,module,exports){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +function EventEmitter() { + this._events = this._events || {}; + this._maxListeners = this._maxListeners || undefined; +} +module.exports = EventEmitter; + +// Backwards-compat with node 0.10.x +EventEmitter.EventEmitter = EventEmitter; + +EventEmitter.prototype._events = undefined; +EventEmitter.prototype._maxListeners = undefined; + +// By default EventEmitters will print a warning if more than 10 listeners are +// added to it. This is a useful default which helps finding memory leaks. +EventEmitter.defaultMaxListeners = 10; + +// Obviously not all Emitters should be limited to 10. This function allows +// that to be increased. Set to zero for unlimited. +EventEmitter.prototype.setMaxListeners = function(n) { + if (!isNumber(n) || n < 0 || isNaN(n)) + throw TypeError('n must be a positive number'); + this._maxListeners = n; + return this; +}; + +EventEmitter.prototype.emit = function(type) { + var er, handler, len, args, i, listeners; + + if (!this._events) + this._events = {}; + + // If there is no 'error' event listener then throw. + if (type === 'error') { + if (!this._events.error || + (isObject(this._events.error) && !this._events.error.length)) { + er = arguments[1]; + if (er instanceof Error) { + throw er; // Unhandled 'error' event + } else { + // At least give some kind of context to the user + var err = new Error('Uncaught, unspecified "error" event. (' + er + ')'); + err.context = er; + throw err; + } + } + } + + handler = this._events[type]; + + if (isUndefined(handler)) + return false; + + if (isFunction(handler)) { + switch (arguments.length) { + // fast cases + case 1: + handler.call(this); + break; + case 2: + handler.call(this, arguments[1]); + break; + case 3: + handler.call(this, arguments[1], arguments[2]); + break; + // slower + default: + args = Array.prototype.slice.call(arguments, 1); + handler.apply(this, args); + } + } else if (isObject(handler)) { + args = Array.prototype.slice.call(arguments, 1); + listeners = handler.slice(); + len = listeners.length; + for (i = 0; i < len; i++) + listeners[i].apply(this, args); + } + + return true; +}; + +EventEmitter.prototype.addListener = function(type, listener) { + var m; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events) + this._events = {}; + + // To avoid recursion in the case that type === "newListener"! Before + // adding it to the listeners, first emit "newListener". + if (this._events.newListener) + this.emit('newListener', type, + isFunction(listener.listener) ? + listener.listener : listener); + + if (!this._events[type]) + // Optimize the case of one listener. Don't need the extra array object. + this._events[type] = listener; + else if (isObject(this._events[type])) + // If we've already got an array, just append. + this._events[type].push(listener); + else + // Adding the second element, need to change to array. + this._events[type] = [this._events[type], listener]; + + // Check for listener leak + if (isObject(this._events[type]) && !this._events[type].warned) { + if (!isUndefined(this._maxListeners)) { + m = this._maxListeners; + } else { + m = EventEmitter.defaultMaxListeners; + } + + if (m && m > 0 && this._events[type].length > m) { + this._events[type].warned = true; + console.error('(node) warning: possible EventEmitter memory ' + + 'leak detected. %d listeners added. ' + + 'Use emitter.setMaxListeners() to increase limit.', + this._events[type].length); + if (typeof console.trace === 'function') { + // not supported in IE 10 + console.trace(); + } + } + } + + return this; +}; + +EventEmitter.prototype.on = EventEmitter.prototype.addListener; + +EventEmitter.prototype.once = function(type, listener) { + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + var fired = false; + + function g() { + this.removeListener(type, g); + + if (!fired) { + fired = true; + listener.apply(this, arguments); + } + } + + g.listener = listener; + this.on(type, g); + + return this; +}; + +// emits a 'removeListener' event iff the listener was removed +EventEmitter.prototype.removeListener = function(type, listener) { + var list, position, length, i; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events || !this._events[type]) + return this; + + list = this._events[type]; + length = list.length; + position = -1; + + if (list === listener || + (isFunction(list.listener) && list.listener === listener)) { + delete this._events[type]; + if (this._events.removeListener) + this.emit('removeListener', type, listener); + + } else if (isObject(list)) { + for (i = length; i-- > 0;) { + if (list[i] === listener || + (list[i].listener && list[i].listener === listener)) { + position = i; + break; + } + } + + if (position < 0) + return this; + + if (list.length === 1) { + list.length = 0; + delete this._events[type]; + } else { + list.splice(position, 1); + } + + if (this._events.removeListener) + this.emit('removeListener', type, listener); + } + + return this; +}; + +EventEmitter.prototype.removeAllListeners = function(type) { + var key, listeners; + + if (!this._events) + return this; + + // not listening for removeListener, no need to emit + if (!this._events.removeListener) { + if (arguments.length === 0) + this._events = {}; + else if (this._events[type]) + delete this._events[type]; + return this; + } + + // emit removeListener for all listeners on all events + if (arguments.length === 0) { + for (key in this._events) { + if (key === 'removeListener') continue; + this.removeAllListeners(key); + } + this.removeAllListeners('removeListener'); + this._events = {}; + return this; + } + + listeners = this._events[type]; + + if (isFunction(listeners)) { + this.removeListener(type, listeners); + } else if (listeners) { + // LIFO order + while (listeners.length) + this.removeListener(type, listeners[listeners.length - 1]); + } + delete this._events[type]; + + return this; +}; + +EventEmitter.prototype.listeners = function(type) { + var ret; + if (!this._events || !this._events[type]) + ret = []; + else if (isFunction(this._events[type])) + ret = [this._events[type]]; + else + ret = this._events[type].slice(); + return ret; +}; + +EventEmitter.prototype.listenerCount = function(type) { + if (this._events) { + var evlistener = this._events[type]; + + if (isFunction(evlistener)) + return 1; + else if (evlistener) + return evlistener.length; + } + return 0; +}; + +EventEmitter.listenerCount = function(emitter, type) { + return emitter.listenerCount(type); +}; + +function isFunction(arg) { + return typeof arg === 'function'; +} + +function isNumber(arg) { + return typeof arg === 'number'; +} + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} + +function isUndefined(arg) { + return arg === void 0; +} + +},{}],5:[function(require,module,exports){ +/* jshint node: true */ +'use strict'; + +var normalice = require('normalice'); + +/** + # freeice + + The `freeice` module is a simple way of getting random STUN or TURN server + for your WebRTC application. The list of servers (just STUN at this stage) + were sourced from this [gist](https://gist.github.com/zziuni/3741933). + + ## Example Use + + The following demonstrates how you can use `freeice` with + [rtc-quickconnect](https://github.com/rtc-io/rtc-quickconnect): + + <<< examples/quickconnect.js + + As the `freeice` module generates ice servers in a list compliant with the + WebRTC spec you will be able to use it with raw `RTCPeerConnection` + constructors and other WebRTC libraries. + + ## Hey, don't use my STUN/TURN server! + + If for some reason your free STUN or TURN server ends up in the + list of servers ([stun](https://github.com/DamonOehlman/freeice/blob/master/stun.json) or + [turn](https://github.com/DamonOehlman/freeice/blob/master/turn.json)) + that is used in this module, you can feel + free to open an issue on this repository and those servers will be removed + within 24 hours (or sooner). This is the quickest and probably the most + polite way to have something removed (and provides us some visibility + if someone opens a pull request requesting that a server is added). + + ## Please add my server! + + If you have a server that you wish to add to the list, that's awesome! I'm + sure I speak on behalf of a whole pile of WebRTC developers who say thanks. + To get it into the list, feel free to either open a pull request or if you + find that process a bit daunting then just create an issue requesting + the addition of the server (make sure you provide all the details, and if + you have a Terms of Service then including that in the PR/issue would be + awesome). + + ## I know of a free server, can I add it? + + Sure, if you do your homework and make sure it is ok to use (I'm currently + in the process of reviewing the terms of those STUN servers included from + the original list). If it's ok to go, then please see the previous entry + for how to add it. + + ## Current List of Servers + + * current as at the time of last `README.md` file generation + + ### STUN + + <<< stun.json + + ### TURN + + <<< turn.json + +**/ + +var freeice = module.exports = function(opts) { + // if a list of servers has been provided, then use it instead of defaults + var servers = { + stun: (opts || {}).stun || require('./stun.json'), + turn: (opts || {}).turn || require('./turn.json') + }; + + var stunCount = (opts || {}).stunCount || 2; + var turnCount = (opts || {}).turnCount || 0; + var selected; + + function getServers(type, count) { + var out = []; + var input = [].concat(servers[type]); + var idx; + + while (input.length && out.length < count) { + idx = (Math.random() * input.length) | 0; + out = out.concat(input.splice(idx, 1)); + } + + return out.map(function(url) { + //If it's a not a string, don't try to "normalice" it otherwise using type:url will screw it up + if ((typeof url !== 'string') && (! (url instanceof String))) { + return url; + } else { + return normalice(type + ':' + url); + } + }); + } + + // add stun servers + selected = [].concat(getServers('stun', stunCount)); + + if (turnCount) { + selected = selected.concat(getServers('turn', turnCount)); + } + + return selected; +}; + +},{"./stun.json":6,"./turn.json":7,"normalice":12}],6:[function(require,module,exports){ +module.exports=[ + "stun.l.google.com:19302", + "stun1.l.google.com:19302", + "stun2.l.google.com:19302", + "stun3.l.google.com:19302", + "stun4.l.google.com:19302", + "stun.ekiga.net", + "stun.ideasip.com", + "stun.schlund.de", + "stun.stunprotocol.org:3478", + "stun.voiparound.com", + "stun.voipbuster.com", + "stun.voipstunt.com", + "stun.voxgratia.org", + "stun.services.mozilla.com" +] + +},{}],7:[function(require,module,exports){ +module.exports=[] + +},{}],8:[function(require,module,exports){ +var WildEmitter = require('wildemitter'); + +function getMaxVolume (analyser, fftBins) { + var maxVolume = -Infinity; + analyser.getFloatFrequencyData(fftBins); + + for(var i=4, ii=fftBins.length; i < ii; i++) { + if (fftBins[i] > maxVolume && fftBins[i] < 0) { + maxVolume = fftBins[i]; + } + }; + + return maxVolume; +} + + +var audioContextType = window.AudioContext || window.webkitAudioContext; +// use a single audio context due to hardware limits +var audioContext = null; +module.exports = function(stream, options) { + var harker = new WildEmitter(); + + + // make it not break in non-supported browsers + if (!audioContextType) return harker; + + //Config + var options = options || {}, + smoothing = (options.smoothing || 0.1), + interval = (options.interval || 50), + threshold = options.threshold, + play = options.play, + history = options.history || 10, + running = true; + + //Setup Audio Context + if (!audioContext) { + audioContext = new audioContextType(); + } + var sourceNode, fftBins, analyser; + + analyser = audioContext.createAnalyser(); + analyser.fftSize = 512; + analyser.smoothingTimeConstant = smoothing; + fftBins = new Float32Array(analyser.fftSize); + + if (stream.jquery) stream = stream[0]; + if (stream instanceof HTMLAudioElement || stream instanceof HTMLVideoElement) { + //Audio Tag + sourceNode = audioContext.createMediaElementSource(stream); + if (typeof play === 'undefined') play = true; + threshold = threshold || -50; + } else { + //WebRTC Stream + sourceNode = audioContext.createMediaStreamSource(stream); + threshold = threshold || -50; + } + + sourceNode.connect(analyser); + if (play) analyser.connect(audioContext.destination); + + harker.speaking = false; + + harker.setThreshold = function(t) { + threshold = t; + }; + + harker.setInterval = function(i) { + interval = i; + }; + + harker.stop = function() { + running = false; + harker.emit('volume_change', -100, threshold); + if (harker.speaking) { + harker.speaking = false; + harker.emit('stopped_speaking'); + } + }; + harker.speakingHistory = []; + for (var i = 0; i < history; i++) { + harker.speakingHistory.push(0); + } + + // Poll the analyser node to determine if speaking + // and emit events if changed + var looper = function() { + setTimeout(function() { + + //check if stop has been called + if(!running) { + return; + } + + var currentVolume = getMaxVolume(analyser, fftBins); + + harker.emit('volume_change', currentVolume, threshold); + + var history = 0; + if (currentVolume > threshold && !harker.speaking) { + // trigger quickly, short history + for (var i = harker.speakingHistory.length - 3; i < harker.speakingHistory.length; i++) { + history += harker.speakingHistory[i]; + } + if (history >= 2) { + harker.speaking = true; + harker.emit('speaking'); + } + } else if (currentVolume < threshold && harker.speaking) { + for (var i = 0; i < harker.speakingHistory.length; i++) { + history += harker.speakingHistory[i]; + } + if (history == 0) { + harker.speaking = false; + harker.emit('stopped_speaking'); + } + } + harker.speakingHistory.shift(); + harker.speakingHistory.push(0 + (currentVolume > threshold)); + + looper(); + }, interval); + }; + looper(); + + + return harker; +} + +},{"wildemitter":24}],9:[function(require,module,exports){ +if (typeof Object.create === 'function') { + // implementation from standard node.js 'util' module + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + ctor.prototype = Object.create(superCtor.prototype, { + constructor: { + value: ctor, + enumerable: false, + writable: true, + configurable: true + } + }); + }; +} else { + // old school shim for old browsers + module.exports = function inherits(ctor, superCtor) { + ctor.super_ = superCtor + var TempCtor = function () {} + TempCtor.prototype = superCtor.prototype + ctor.prototype = new TempCtor() + ctor.prototype.constructor = ctor + } +} + +},{}],10:[function(require,module,exports){ +// Does nothing at all. + +},{}],11:[function(require,module,exports){ +/*! + * @name JavaScript/NodeJS Merge v1.2.0 + * @author yeikos + * @repository https://github.com/yeikos/js.merge + + * Copyright 2014 yeikos - MIT license + * https://raw.github.com/yeikos/js.merge/master/LICENSE + */ + +;(function(isNode) { + + /** + * Merge one or more objects + * @param bool? clone + * @param mixed,... arguments + * @return object + */ + + var Public = function(clone) { + + return merge(clone === true, false, arguments); + + }, publicName = 'merge'; + + /** + * Merge two or more objects recursively + * @param bool? clone + * @param mixed,... arguments + * @return object + */ + + Public.recursive = function(clone) { + + return merge(clone === true, true, arguments); + + }; + + /** + * Clone the input removing any reference + * @param mixed input + * @return mixed + */ + + Public.clone = function(input) { + + var output = input, + type = typeOf(input), + index, size; + + if (type === 'array') { + + output = []; + size = input.length; + + for (index=0;index<size;++index) + + output[index] = Public.clone(input[index]); + + } else if (type === 'object') { + + output = {}; + + for (index in input) + + output[index] = Public.clone(input[index]); + + } + + return output; + + }; + + /** + * Merge two objects recursively + * @param mixed input + * @param mixed extend + * @return mixed + */ + + function merge_recursive(base, extend) { + + if (typeOf(base) !== 'object') + + return extend; + + for (var key in extend) { + + if (typeOf(base[key]) === 'object' && typeOf(extend[key]) === 'object') { + + base[key] = merge_recursive(base[key], extend[key]); + + } else { + + base[key] = extend[key]; + + } + + } + + return base; + + } + + /** + * Merge two or more objects + * @param bool clone + * @param bool recursive + * @param array argv + * @return object + */ + + function merge(clone, recursive, argv) { + + var result = argv[0], + size = argv.length; + + if (clone || typeOf(result) !== 'object') + + result = {}; + + for (var index=0;index<size;++index) { + + var item = argv[index], + + type = typeOf(item); + + if (type !== 'object') continue; + + for (var key in item) { + + var sitem = clone ? Public.clone(item[key]) : item[key]; + + if (recursive) { + + result[key] = merge_recursive(result[key], sitem); + + } else { + + result[key] = sitem; + + } + + } + + } + + return result; + + } + + /** + * Get type of variable + * @param mixed input + * @return string + * + * @see http://jsperf.com/typeofvar + */ + + function typeOf(input) { + + return ({}).toString.call(input).slice(8, -1).toLowerCase(); + + } + + if (isNode) { + + module.exports = Public; + + } else { + + window[publicName] = Public; + + } + +})(typeof module === 'object' && module && typeof module.exports === 'object' && module.exports); +},{}],12:[function(require,module,exports){ +/** + # normalice + + Normalize an ice server configuration object (or plain old string) into a format + that is usable in all browsers supporting WebRTC. Primarily this module is designed + to help with the transition of the `url` attribute of the configuration object to + the `urls` attribute. + + ## Example Usage + + <<< examples/simple.js + +**/ + +var protocols = [ + 'stun:', + 'turn:' +]; + +module.exports = function(input) { + var url = (input || {}).url || input; + var protocol; + var parts; + var output = {}; + + // if we don't have a string url, then allow the input to passthrough + if (typeof url != 'string' && (! (url instanceof String))) { + return input; + } + + // trim the url string, and convert to an array + url = url.trim(); + + // if the protocol is not known, then passthrough + protocol = protocols[protocols.indexOf(url.slice(0, 5))]; + if (! protocol) { + return input; + } + + // now let's attack the remaining url parts + url = url.slice(5); + parts = url.split('@'); + + output.username = input.username; + output.credential = input.credential; + // if we have an authentication part, then set the credentials + if (parts.length > 1) { + url = parts[1]; + parts = parts[0].split(':'); + + // add the output credential and username + output.username = parts[0]; + output.credential = (input || {}).credential || parts[1] || ''; + } + + output.url = protocol + url; + output.urls = [ output.url ]; + + return output; +}; + +},{}],13:[function(require,module,exports){ +var grammar = module.exports = { + v: [{ + name: 'version', + reg: /^(\d*)$/ + }], + o: [{ //o=- 20518 0 IN IP4 203.0.113.1 + // NB: sessionId will be a String in most cases because it is huge + name: 'origin', + reg: /^(\S*) (\d*) (\d*) (\S*) IP(\d) (\S*)/, + names: ['username', 'sessionId', 'sessionVersion', 'netType', 'ipVer', 'address'], + format: "%s %s %d %s IP%d %s" + }], + // default parsing of these only (though some of these feel outdated) + s: [{ name: 'name' }], + i: [{ name: 'description' }], + u: [{ name: 'uri' }], + e: [{ name: 'email' }], + p: [{ name: 'phone' }], + z: [{ name: 'timezones' }], // TODO: this one can actually be parsed properly.. + r: [{ name: 'repeats' }], // TODO: this one can also be parsed properly + //k: [{}], // outdated thing ignored + t: [{ //t=0 0 + name: 'timing', + reg: /^(\d*) (\d*)/, + names: ['start', 'stop'], + format: "%d %d" + }], + c: [{ //c=IN IP4 10.47.197.26 + name: 'connection', + reg: /^IN IP(\d) (\S*)/, + names: ['version', 'ip'], + format: "IN IP%d %s" + }], + b: [{ //b=AS:4000 + push: 'bandwidth', + reg: /^(TIAS|AS|CT|RR|RS):(\d*)/, + names: ['type', 'limit'], + format: "%s:%s" + }], + m: [{ //m=video 51744 RTP/AVP 126 97 98 34 31 + // NB: special - pushes to session + // TODO: rtp/fmtp should be filtered by the payloads found here? + reg: /^(\w*) (\d*) ([\w\/]*)(?: (.*))?/, + names: ['type', 'port', 'protocol', 'payloads'], + format: "%s %d %s %s" + }], + a: [ + { //a=rtpmap:110 opus/48000/2 + push: 'rtp', + reg: /^rtpmap:(\d*) ([\w\-]*)(?:\s*\/(\d*)(?:\s*\/(\S*))?)?/, + names: ['payload', 'codec', 'rate', 'encoding'], + format: function (o) { + return (o.encoding) ? + "rtpmap:%d %s/%s/%s": + o.rate ? + "rtpmap:%d %s/%s": + "rtpmap:%d %s"; + } + }, + { + //a=fmtp:108 profile-level-id=24;object=23;bitrate=64000 + //a=fmtp:111 minptime=10; useinbandfec=1 + push: 'fmtp', + reg: /^fmtp:(\d*) ([\S| ]*)/, + names: ['payload', 'config'], + format: "fmtp:%d %s" + }, + { //a=control:streamid=0 + name: 'control', + reg: /^control:(.*)/, + format: "control:%s" + }, + { //a=rtcp:65179 IN IP4 193.84.77.194 + name: 'rtcp', + reg: /^rtcp:(\d*)(?: (\S*) IP(\d) (\S*))?/, + names: ['port', 'netType', 'ipVer', 'address'], + format: function (o) { + return (o.address != null) ? + "rtcp:%d %s IP%d %s": + "rtcp:%d"; + } + }, + { //a=rtcp-fb:98 trr-int 100 + push: 'rtcpFbTrrInt', + reg: /^rtcp-fb:(\*|\d*) trr-int (\d*)/, + names: ['payload', 'value'], + format: "rtcp-fb:%d trr-int %d" + }, + { //a=rtcp-fb:98 nack rpsi + push: 'rtcpFb', + reg: /^rtcp-fb:(\*|\d*) ([\w-_]*)(?: ([\w-_]*))?/, + names: ['payload', 'type', 'subtype'], + format: function (o) { + return (o.subtype != null) ? + "rtcp-fb:%s %s %s": + "rtcp-fb:%s %s"; + } + }, + { //a=extmap:2 urn:ietf:params:rtp-hdrext:toffset + //a=extmap:1/recvonly URI-gps-string + push: 'ext', + reg: /^extmap:([\w_\/]*) (\S*)(?: (\S*))?/, + names: ['value', 'uri', 'config'], // value may include "/direction" suffix + format: function (o) { + return (o.config != null) ? + "extmap:%s %s %s": + "extmap:%s %s"; + } + }, + { + //a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:PS1uQCVeeCFCanVmcjkpPywjNWhcYD0mXXtxaVBR|2^20|1:32 + push: 'crypto', + reg: /^crypto:(\d*) ([\w_]*) (\S*)(?: (\S*))?/, + names: ['id', 'suite', 'config', 'sessionConfig'], + format: function (o) { + return (o.sessionConfig != null) ? + "crypto:%d %s %s %s": + "crypto:%d %s %s"; + } + }, + { //a=setup:actpass + name: 'setup', + reg: /^setup:(\w*)/, + format: "setup:%s" + }, + { //a=mid:1 + name: 'mid', + reg: /^mid:([^\s]*)/, + format: "mid:%s" + }, + { //a=msid:0c8b064d-d807-43b4-b434-f92a889d8587 98178685-d409-46e0-8e16-7ef0db0db64a + name: 'msid', + reg: /^msid:(.*)/, + format: "msid:%s" + }, + { //a=ptime:20 + name: 'ptime', + reg: /^ptime:(\d*)/, + format: "ptime:%d" + }, + { //a=maxptime:60 + name: 'maxptime', + reg: /^maxptime:(\d*)/, + format: "maxptime:%d" + }, + { //a=sendrecv + name: 'direction', + reg: /^(sendrecv|recvonly|sendonly|inactive)/ + }, + { //a=ice-lite + name: 'icelite', + reg: /^(ice-lite)/ + }, + { //a=ice-ufrag:F7gI + name: 'iceUfrag', + reg: /^ice-ufrag:(\S*)/, + format: "ice-ufrag:%s" + }, + { //a=ice-pwd:x9cml/YzichV2+XlhiMu8g + name: 'icePwd', + reg: /^ice-pwd:(\S*)/, + format: "ice-pwd:%s" + }, + { //a=fingerprint:SHA-1 00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11:22:33 + name: 'fingerprint', + reg: /^fingerprint:(\S*) (\S*)/, + names: ['type', 'hash'], + format: "fingerprint:%s %s" + }, + { + //a=candidate:0 1 UDP 2113667327 203.0.113.1 54400 typ host + //a=candidate:1162875081 1 udp 2113937151 192.168.34.75 60017 typ host generation 0 + //a=candidate:3289912957 2 udp 1845501695 193.84.77.194 60017 typ srflx raddr 192.168.34.75 rport 60017 generation 0 + //a=candidate:229815620 1 tcp 1518280447 192.168.150.19 60017 typ host tcptype active generation 0 + //a=candidate:3289912957 2 tcp 1845501695 193.84.77.194 60017 typ srflx raddr 192.168.34.75 rport 60017 tcptype passive generation 0 + push:'candidates', + reg: /^candidate:(\S*) (\d*) (\S*) (\d*) (\S*) (\d*) typ (\S*)(?: raddr (\S*) rport (\d*))?(?: tcptype (\S*))?(?: generation (\d*))?/, + names: ['foundation', 'component', 'transport', 'priority', 'ip', 'port', 'type', 'raddr', 'rport', 'tcptype', 'generation'], + format: function (o) { + var str = "candidate:%s %d %s %d %s %d typ %s"; + + str += (o.raddr != null) ? " raddr %s rport %d" : "%v%v"; + + // NB: candidate has three optional chunks, so %void middles one if it's missing + str += (o.tcptype != null) ? " tcptype %s" : "%v"; + + if (o.generation != null) { + str += " generation %d"; + } + return str; + } + }, + { //a=end-of-candidates (keep after the candidates line for readability) + name: 'endOfCandidates', + reg: /^(end-of-candidates)/ + }, + { //a=remote-candidates:1 203.0.113.1 54400 2 203.0.113.1 54401 ... + name: 'remoteCandidates', + reg: /^remote-candidates:(.*)/, + format: "remote-candidates:%s" + }, + { //a=ice-options:google-ice + name: 'iceOptions', + reg: /^ice-options:(\S*)/, + format: "ice-options:%s" + }, + { //a=ssrc:2566107569 cname:t9YU8M1UxTF8Y1A1 + push: "ssrcs", + reg: /^ssrc:(\d*) ([\w_]*):(.*)/, + names: ['id', 'attribute', 'value'], + format: "ssrc:%d %s:%s" + }, + { //a=ssrc-group:FEC 1 2 + push: "ssrcGroups", + reg: /^ssrc-group:(\w*) (.*)/, + names: ['semantics', 'ssrcs'], + format: "ssrc-group:%s %s" + }, + { //a=msid-semantic: WMS Jvlam5X3SX1OP6pn20zWogvaKJz5Hjf9OnlV + name: "msidSemantic", + reg: /^msid-semantic:\s?(\w*) (\S*)/, + names: ['semantic', 'token'], + format: "msid-semantic: %s %s" // space after ":" is not accidental + }, + { //a=group:BUNDLE audio video + push: 'groups', + reg: /^group:(\w*) (.*)/, + names: ['type', 'mids'], + format: "group:%s %s" + }, + { //a=rtcp-mux + name: 'rtcpMux', + reg: /^(rtcp-mux)/ + }, + { //a=rtcp-rsize + name: 'rtcpRsize', + reg: /^(rtcp-rsize)/ + }, + { // any a= that we don't understand is kepts verbatim on media.invalid + push: 'invalid', + names: ["value"] + } + ] +}; + +// set sensible defaults to avoid polluting the grammar with boring details +Object.keys(grammar).forEach(function (key) { + var objs = grammar[key]; + objs.forEach(function (obj) { + if (!obj.reg) { + obj.reg = /(.*)/; + } + if (!obj.format) { + obj.format = "%s"; + } + }); +}); + +},{}],14:[function(require,module,exports){ +var parser = require('./parser'); +var writer = require('./writer'); + +exports.write = writer; +exports.parse = parser.parse; +exports.parseFmtpConfig = parser.parseFmtpConfig; +exports.parsePayloads = parser.parsePayloads; +exports.parseRemoteCandidates = parser.parseRemoteCandidates; + +},{"./parser":15,"./writer":16}],15:[function(require,module,exports){ +var toIntIfInt = function (v) { + return String(Number(v)) === v ? Number(v) : v; +}; + +var attachProperties = function (match, location, names, rawName) { + if (rawName && !names) { + location[rawName] = toIntIfInt(match[1]); + } + else { + for (var i = 0; i < names.length; i += 1) { + if (match[i+1] != null) { + location[names[i]] = toIntIfInt(match[i+1]); + } + } + } +}; + +var parseReg = function (obj, location, content) { + var needsBlank = obj.name && obj.names; + if (obj.push && !location[obj.push]) { + location[obj.push] = []; + } + else if (needsBlank && !location[obj.name]) { + location[obj.name] = {}; + } + var keyLocation = obj.push ? + {} : // blank object that will be pushed + needsBlank ? location[obj.name] : location; // otherwise, named location or root + + attachProperties(content.match(obj.reg), keyLocation, obj.names, obj.name); + + if (obj.push) { + location[obj.push].push(keyLocation); + } +}; + +var grammar = require('./grammar'); +var validLine = RegExp.prototype.test.bind(/^([a-z])=(.*)/); + +exports.parse = function (sdp) { + var session = {} + , media = [] + , location = session; // points at where properties go under (one of the above) + + // parse lines we understand + sdp.split(/(\r\n|\r|\n)/).filter(validLine).forEach(function (l) { + var type = l[0]; + var content = l.slice(2); + if (type === 'm') { + media.push({rtp: [], fmtp: []}); + location = media[media.length-1]; // point at latest media line + } + + for (var j = 0; j < (grammar[type] || []).length; j += 1) { + var obj = grammar[type][j]; + if (obj.reg.test(content)) { + return parseReg(obj, location, content); + } + } + }); + + session.media = media; // link it up + return session; +}; + +var fmtpReducer = function (acc, expr) { + var s = expr.split('='); + if (s.length === 2) { + acc[s[0]] = toIntIfInt(s[1]); + } + return acc; +}; + +exports.parseFmtpConfig = function (str) { + return str.split(/\;\s?/).reduce(fmtpReducer, {}); +}; + +exports.parsePayloads = function (str) { + return str.split(' ').map(Number); +}; + +exports.parseRemoteCandidates = function (str) { + var candidates = []; + var parts = str.split(' ').map(toIntIfInt); + for (var i = 0; i < parts.length; i += 3) { + candidates.push({ + component: parts[i], + ip: parts[i + 1], + port: parts[i + 2] + }); + } + return candidates; +}; + +},{"./grammar":13}],16:[function(require,module,exports){ +var grammar = require('./grammar'); + +// customized util.format - discards excess arguments and can void middle ones +var formatRegExp = /%[sdv%]/g; +var format = function (formatStr) { + var i = 1; + var args = arguments; + var len = args.length; + return formatStr.replace(formatRegExp, function (x) { + if (i >= len) { + return x; // missing argument + } + var arg = args[i]; + i += 1; + switch (x) { + case '%%': + return '%'; + case '%s': + return String(arg); + case '%d': + return Number(arg); + case '%v': + return ''; + } + }); + // NB: we discard excess arguments - they are typically undefined from makeLine +}; + +var makeLine = function (type, obj, location) { + var str = obj.format instanceof Function ? + (obj.format(obj.push ? location : location[obj.name])) : + obj.format; + + var args = [type + '=' + str]; + if (obj.names) { + for (var i = 0; i < obj.names.length; i += 1) { + var n = obj.names[i]; + if (obj.name) { + args.push(location[obj.name][n]); + } + else { // for mLine and push attributes + args.push(location[obj.names[i]]); + } + } + } + else { + args.push(location[obj.name]); + } + return format.apply(null, args); +}; + +// RFC specified order +// TODO: extend this with all the rest +var defaultOuterOrder = [ + 'v', 'o', 's', 'i', + 'u', 'e', 'p', 'c', + 'b', 't', 'r', 'z', 'a' +]; +var defaultInnerOrder = ['i', 'c', 'b', 'a']; + + +module.exports = function (session, opts) { + opts = opts || {}; + // ensure certain properties exist + if (session.version == null) { + session.version = 0; // "v=0" must be there (only defined version atm) + } + if (session.name == null) { + session.name = " "; // "s= " must be there if no meaningful name set + } + session.media.forEach(function (mLine) { + if (mLine.payloads == null) { + mLine.payloads = ""; + } + }); + + var outerOrder = opts.outerOrder || defaultOuterOrder; + var innerOrder = opts.innerOrder || defaultInnerOrder; + var sdp = []; + + // loop through outerOrder for matching properties on session + outerOrder.forEach(function (type) { + grammar[type].forEach(function (obj) { + if (obj.name in session && session[obj.name] != null) { + sdp.push(makeLine(type, obj, session)); + } + else if (obj.push in session && session[obj.push] != null) { + session[obj.push].forEach(function (el) { + sdp.push(makeLine(type, obj, el)); + }); + } + }); + }); + + // then for each media line, follow the innerOrder + session.media.forEach(function (mLine) { + sdp.push(makeLine('m', grammar.m[0], mLine)); + + innerOrder.forEach(function (type) { + grammar[type].forEach(function (obj) { + if (obj.name in mLine && mLine[obj.name] != null) { + sdp.push(makeLine(type, obj, mLine)); + } + else if (obj.push in mLine && mLine[obj.push] != null) { + mLine[obj.push].forEach(function (el) { + sdp.push(makeLine(type, obj, el)); + }); + } + }); + }); + }); + + return sdp.join('\r\n') + '\r\n'; +}; + +},{"./grammar":13}],17:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +module.exports = function arrayEquals(array) { + // if the other array is a falsy value, return + if (!array) + return false; + + // compare lengths - can save a lot of time + if (this.length != array.length) + return false; + + for (var i = 0, l = this.length; i < l; i++) { + // Check if we have nested arrays + if (this[i] instanceof Array && array[i] instanceof Array) { + // recurse into the nested arrays + if (!arrayEquals.apply(this[i], [array[i]])) + return false; + } else if (this[i] != array[i]) { + // Warning - two different object instances will never be equal: + // {x:20} != {x:20} + return false; + } + } + return true; +}; + + +},{}],18:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +exports.Interop = require('./interop'); + +},{"./interop":19}],19:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/* global RTCSessionDescription */ +/* global RTCIceCandidate */ +/* jshint -W097 */ +"use strict"; + +var transform = require('./transform'); +var arrayEquals = require('./array-equals'); + +function Interop() { + + /** + * This map holds the most recent Unified Plan offer/answer SDP that was + * converted to Plan B, with the SDP type ('offer' or 'answer') as keys and + * the SDP string as values. + * + * @type {{}} + */ + this.cache = { + mlB2UMap : {}, + mlU2BMap : {} + }; +} + +module.exports = Interop; + +/** + * Changes the candidate args to match with the related Unified Plan + */ +Interop.prototype.candidateToUnifiedPlan = function(candidate) { + var cand = new RTCIceCandidate(candidate); + + cand.sdpMLineIndex = this.cache.mlB2UMap[cand.sdpMLineIndex]; + /* TODO: change sdpMid to (audio|video)-SSRC */ + + return cand; +}; + +/** + * Changes the candidate args to match with the related Plan B + */ +Interop.prototype.candidateToPlanB = function(candidate) { + var cand = new RTCIceCandidate(candidate); + + if (cand.sdpMid.indexOf('audio') === 0) { + cand.sdpMid = 'audio'; + } else if (cand.sdpMid.indexOf('video') === 0) { + cand.sdpMid = 'video'; + } else { + throw new Error('candidate with ' + cand.sdpMid + ' not allowed'); + } + + cand.sdpMLineIndex = this.cache.mlU2BMap[cand.sdpMLineIndex]; + + return cand; +}; + +/** + * Returns the index of the first m-line with the given media type and with a + * direction which allows sending, in the last Unified Plan description with + * type "answer" converted to Plan B. Returns {null} if there is no saved + * answer, or if none of its m-lines with the given type allow sending. + * @param type the media type ("audio" or "video"). + * @returns {*} + */ +Interop.prototype.getFirstSendingIndexFromAnswer = function(type) { + if (!this.cache.answer) { + return null; + } + + var session = transform.parse(this.cache.answer); + if (session && session.media && Array.isArray(session.media)){ + for (var i = 0; i < session.media.length; i++) { + if (session.media[i].type == type && + (!session.media[i].direction /* default to sendrecv */ || + session.media[i].direction === 'sendrecv' || + session.media[i].direction === 'sendonly')){ + return i; + } + } + } + + return null; +}; + +/** + * This method transforms a Unified Plan SDP to an equivalent Plan B SDP. A + * PeerConnection wrapper transforms the SDP to Plan B before passing it to the + * application. + * + * @param desc + * @returns {*} + */ +Interop.prototype.toPlanB = function(desc) { + var self = this; + //#region Preliminary input validation. + + if (typeof desc !== 'object' || desc === null || + typeof desc.sdp !== 'string') { + console.warn('An empty description was passed as an argument.'); + return desc; + } + + // Objectify the SDP for easier manipulation. + var session = transform.parse(desc.sdp); + + // If the SDP contains no media, there's nothing to transform. + if (typeof session.media === 'undefined' || + !Array.isArray(session.media) || session.media.length === 0) { + console.warn('The description has no media.'); + return desc; + } + + // Try some heuristics to "make sure" this is a Unified Plan SDP. Plan B + // SDP has a video, an audio and a data "channel" at most. + if (session.media.length <= 3 && session.media.every(function(m) { + return ['video', 'audio', 'data'].indexOf(m.mid) !== -1; + })) { + console.warn('This description does not look like Unified Plan.'); + return desc; + } + + //#endregion + + // HACK https://bugzilla.mozilla.org/show_bug.cgi?id=1113443 + var sdp = desc.sdp; + var rewrite = false; + for (var i = 0; i < session.media.length; i++) { + var uLine = session.media[i]; + uLine.rtp.forEach(function(rtp) { + if (rtp.codec === 'NULL') + { + rewrite = true; + var offer = transform.parse(self.cache.offer); + rtp.codec = offer.media[i].rtp[0].codec; + } + }); + } + if (rewrite) { + sdp = transform.write(session); + } + + // Unified Plan SDP is our "precious". Cache it for later use in the Plan B + // -> Unified Plan transformation. + this.cache[desc.type] = sdp; + + //#region Convert from Unified Plan to Plan B. + + // We rebuild the session.media array. + var media = session.media; + session.media = []; + + // Associative array that maps channel types to channel objects for fast + // access to channel objects by their type, e.g. type2bl['audio']->channel + // obj. + var type2bl = {}; + + // Used to build the group:BUNDLE value after the channels construction + // loop. + var types = []; + + media.forEach(function(uLine) { + // rtcp-mux is required in the Plan B SDP. + if ((typeof uLine.rtcpMux !== 'string' || + uLine.rtcpMux !== 'rtcp-mux') && + uLine.direction !== 'inactive') { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'without the rtcp-mux attribute were found.'); + } + + // If we don't have a channel for this uLine.type OR the selected is + // inactive, then select this uLine as the channel basis. + if (typeof type2bl[uLine.type] === 'undefined' || + type2bl[uLine.type].direction === 'inactive') { + type2bl[uLine.type] = uLine; + } + + if (uLine.protocol != type2bl[uLine.type].protocol) { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'have different protocols and this library does not have ' + + 'support for that'); + } + + if (uLine.payloads != type2bl[uLine.type].payloads) { + throw new Error('Cannot convert to Plan B because m-lines ' + + 'have different payloads and this library does not have ' + + 'support for that'); + } + + }); + + // Implode the Unified Plan m-lines/tracks into Plan B channels. + media.forEach(function(uLine) { + if (uLine.type === 'application') { + session.media.push(uLine); + types.push(uLine.mid); + return; + } + + // Add sources to the channel and handle a=msid. + if (typeof uLine.sources === 'object') { + Object.keys(uLine.sources).forEach(function(ssrc) { + if (typeof type2bl[uLine.type].sources !== 'object') + type2bl[uLine.type].sources = {}; + + // Assign the sources to the channel. + type2bl[uLine.type].sources[ssrc] = + uLine.sources[ssrc]; + + if (typeof uLine.msid !== 'undefined') { + // In Plan B the msid is an SSRC attribute. Also, we don't + // care about the obsolete label and mslabel attributes. + // + // Note that it is not guaranteed that the uLine will + // have an msid. recvonly channels in particular don't have + // one. + type2bl[uLine.type].sources[ssrc].msid = + uLine.msid; + } + // NOTE ssrcs in ssrc groups will share msids, as + // draft-uberti-rtcweb-plan-00 mandates. + }); + } + + // Add ssrc groups to the channel. + if (typeof uLine.ssrcGroups !== 'undefined' && + Array.isArray(uLine.ssrcGroups)) { + + // Create the ssrcGroups array, if it's not defined. + if (typeof type2bl[uLine.type].ssrcGroups === 'undefined' || + !Array.isArray(type2bl[uLine.type].ssrcGroups)) { + type2bl[uLine.type].ssrcGroups = []; + } + + type2bl[uLine.type].ssrcGroups = + type2bl[uLine.type].ssrcGroups.concat( + uLine.ssrcGroups); + } + + if (type2bl[uLine.type] === uLine) { + // Plan B mids are in ['audio', 'video', 'data'] + uLine.mid = uLine.type; + + // Plan B doesn't support/need the bundle-only attribute. + delete uLine.bundleOnly; + + // In Plan B the msid is an SSRC attribute. + delete uLine.msid; + + if (uLine.type == media[0].type) { + types.unshift(uLine.type); + // Add the channel to the new media array. + session.media.unshift(uLine); + } else { + types.push(uLine.type); + // Add the channel to the new media array. + session.media.push(uLine); + } + } + }); + + if (typeof session.groups !== 'undefined') { + // We regenerate the BUNDLE group with the new mids. + session.groups.some(function(group) { + if (group.type === 'BUNDLE') { + group.mids = types.join(' '); + return true; + } + }); + } + + // msid semantic + session.msidSemantic = { + semantic: 'WMS', + token: '*' + }; + + var resStr = transform.write(session); + + return new RTCSessionDescription({ + type: desc.type, + sdp: resStr + }); + + //#endregion +}; + +/* follow rules defined in RFC4145 */ +function addSetupAttr(uLine) { + if (typeof uLine.setup === 'undefined') { + return; + } + + if (uLine.setup === "active") { + uLine.setup = "passive"; + } else if (uLine.setup === "passive") { + uLine.setup = "active"; + } +} + +/** + * This method transforms a Plan B SDP to an equivalent Unified Plan SDP. A + * PeerConnection wrapper transforms the SDP to Unified Plan before passing it + * to FF. + * + * @param desc + * @returns {*} + */ +Interop.prototype.toUnifiedPlan = function(desc) { + var self = this; + //#region Preliminary input validation. + + if (typeof desc !== 'object' || desc === null || + typeof desc.sdp !== 'string') { + console.warn('An empty description was passed as an argument.'); + return desc; + } + + var session = transform.parse(desc.sdp); + + // If the SDP contains no media, there's nothing to transform. + if (typeof session.media === 'undefined' || + !Array.isArray(session.media) || session.media.length === 0) { + console.warn('The description has no media.'); + return desc; + } + + // Try some heuristics to "make sure" this is a Plan B SDP. Plan B SDP has + // a video, an audio and a data "channel" at most. + if (session.media.length > 3 || !session.media.every(function(m) { + return ['video', 'audio', 'data'].indexOf(m.mid) !== -1; + })) { + console.warn('This description does not look like Plan B.'); + return desc; + } + + // Make sure this Plan B SDP can be converted to a Unified Plan SDP. + var mids = []; + session.media.forEach(function(m) { + mids.push(m.mid); + }); + + var hasBundle = false; + if (typeof session.groups !== 'undefined' && + Array.isArray(session.groups)) { + hasBundle = session.groups.every(function(g) { + return g.type !== 'BUNDLE' || + arrayEquals.apply(g.mids.sort(), [mids.sort()]); + }); + } + + if (!hasBundle) { + var mustBeBundle = false; + + session.media.forEach(function(m) { + if (m.direction !== 'inactive') { + mustBeBundle = true; + } + }); + + if (mustBeBundle) { + throw new Error("Cannot convert to Unified Plan because m-lines that" + + " are not bundled were found."); + } + } + + //#endregion + + + //#region Convert from Plan B to Unified Plan. + + // Unfortunately, a Plan B offer/answer doesn't have enough information to + // rebuild an equivalent Unified Plan offer/answer. + // + // For example, if this is a local answer (in Unified Plan style) that we + // convert to Plan B prior to handing it over to the application (the + // PeerConnection wrapper called us, for instance, after a successful + // createAnswer), we want to remember the m-line at which we've seen the + // (local) SSRC. That's because when the application wants to do call the + // SLD method, forcing us to do the inverse transformation (from Plan B to + // Unified Plan), we need to know to which m-line to assign the (local) + // SSRC. We also need to know all the other m-lines that the original + // answer had and include them in the transformed answer as well. + // + // Another example is if this is a remote offer that we convert to Plan B + // prior to giving it to the application, we want to remember the mid at + // which we've seen the (remote) SSRC. + // + // In the iteration that follows, we use the cached Unified Plan (if it + // exists) to assign mids to ssrcs. + + var type; + if (desc.type === 'answer') { + type = 'offer'; + } else if (desc.type === 'offer') { + type = 'answer'; + } else { + throw new Error("Type '" + desc.type + "' not supported."); + } + + var cached; + if (typeof this.cache[type] !== 'undefined') { + cached = transform.parse(this.cache[type]); + } + + var recvonlySsrcs = { + audio: {}, + video: {} + }; + + // A helper map that sends mids to m-line objects. We use it later to + // rebuild the Unified Plan style session.media array. + var mid2ul = {}; + var bIdx = 0; + var uIdx = 0; + + var sources2ul = {}; + + var candidates; + var iceUfrag; + var icePwd; + var fingerprint; + var payloads = {}; + var rtcpFb = {}; + var rtp = {}; + + session.media.forEach(function(bLine) { + if ((typeof bLine.rtcpMux !== 'string' || + bLine.rtcpMux !== 'rtcp-mux') && + bLine.direction !== 'inactive') { + throw new Error("Cannot convert to Unified Plan because m-lines " + + "without the rtcp-mux attribute were found."); + } + + if (bLine.type === 'application') { + mid2ul[bLine.mid] = bLine; + return; + } + + // With rtcp-mux and bundle all the channels should have the same ICE + // stuff. + var sources = bLine.sources; + var ssrcGroups = bLine.ssrcGroups; + var port = bLine.port; + + /* Chrome adds different candidates even using bundle, so we concat the candidates list */ + if (typeof bLine.candidates != 'undefined') { + if (typeof candidates != 'undefined') { + candidates = candidates.concat(bLine.candidates); + } else { + candidates = bLine.candidates; + } + } + + if ((typeof iceUfrag != 'undefined') && (typeof bLine.iceUfrag != 'undefined') && (iceUfrag != bLine.iceUfrag)) { + throw new Error("Only BUNDLE supported, iceUfrag must be the same for all m-lines.\n" + + "\tLast iceUfrag: " + iceUfrag + "\n" + + "\tNew iceUfrag: " + bLine.iceUfrag + ); + } + + if (typeof bLine.iceUfrag != 'undefined') { + iceUfrag = bLine.iceUfrag; + } + + if ((typeof icePwd != 'undefined') && (typeof bLine.icePwd != 'undefined') && (icePwd != bLine.icePwd)) { + throw new Error("Only BUNDLE supported, icePwd must be the same for all m-lines.\n" + + "\tLast icePwd: " + icePwd + "\n" + + "\tNew icePwd: " + bLine.icePwd + ); + } + + if (typeof bLine.icePwd != 'undefined') { + icePwd = bLine.icePwd; + } + + if ((typeof fingerprint != 'undefined') && (typeof bLine.fingerprint != 'undefined') && + (fingerprint.type != bLine.fingerprint.type || fingerprint.hash != bLine.fingerprint.hash)) { + throw new Error("Only BUNDLE supported, fingerprint must be the same for all m-lines.\n" + + "\tLast fingerprint: " + JSON.stringify(fingerprint) + "\n" + + "\tNew fingerprint: " + JSON.stringify(bLine.fingerprint) + ); + } + + if (typeof bLine.fingerprint != 'undefined') { + fingerprint = bLine.fingerprint; + } + + payloads[bLine.type] = bLine.payloads; + rtcpFb[bLine.type] = bLine.rtcpFb; + rtp[bLine.type] = bLine.rtp; + + // inverted ssrc group map + var ssrc2group = {}; + if (typeof ssrcGroups !== 'undefined' && Array.isArray(ssrcGroups)) { + ssrcGroups.forEach(function (ssrcGroup) { + // XXX This might brake if an SSRC is in more than one group + // for some reason. + if (typeof ssrcGroup.ssrcs !== 'undefined' && + Array.isArray(ssrcGroup.ssrcs)) { + ssrcGroup.ssrcs.forEach(function (ssrc) { + if (typeof ssrc2group[ssrc] === 'undefined') { + ssrc2group[ssrc] = []; + } + + ssrc2group[ssrc].push(ssrcGroup); + }); + } + }); + } + + // ssrc to m-line index. + var ssrc2ml = {}; + + if (typeof sources === 'object') { + + // We'll use the "bLine" object as a prototype for each new "mLine" + // that we create, but first we need to clean it up a bit. + delete bLine.sources; + delete bLine.ssrcGroups; + delete bLine.candidates; + delete bLine.iceUfrag; + delete bLine.icePwd; + delete bLine.fingerprint; + delete bLine.port; + delete bLine.mid; + + // Explode the Plan B channel sources with one m-line per source. + Object.keys(sources).forEach(function(ssrc) { + + // The (unified) m-line for this SSRC. We either create it from + // scratch or, if it's a grouped SSRC, we re-use a related + // mline. In other words, if the source is grouped with another + // source, put the two together in the same m-line. + var uLine; + + // We assume here that we are the answerer in the O/A, so any + // offers which we translate come from the remote side, while + // answers are local. So the check below is to make that we + // handle receive-only SSRCs in a special way only if they come + // from the remote side. + if (desc.type==='offer') { + // We want to detect SSRCs which are used by a remote peer + // in an m-line with direction=recvonly (i.e. they are + // being used for RTCP only). + // This information would have gotten lost if the remote + // peer used Unified Plan and their local description was + // translated to Plan B. So we use the lack of an MSID + // attribute to deduce a "receive only" SSRC. + if (!sources[ssrc].msid) { + recvonlySsrcs[bLine.type][ssrc] = sources[ssrc]; + // Receive-only SSRCs must not create new m-lines. We + // will assign them to an existing m-line later. + return; + } + } + + if (typeof ssrc2group[ssrc] !== 'undefined' && + Array.isArray(ssrc2group[ssrc])) { + ssrc2group[ssrc].some(function (ssrcGroup) { + // ssrcGroup.ssrcs *is* an Array, no need to check + // again here. + return ssrcGroup.ssrcs.some(function (related) { + if (typeof ssrc2ml[related] === 'object') { + uLine = ssrc2ml[related]; + return true; + } + }); + }); + } + + if (typeof uLine === 'object') { + // the m-line already exists. Just add the source. + uLine.sources[ssrc] = sources[ssrc]; + delete sources[ssrc].msid; + } else { + // Use the "bLine" as a prototype for the "uLine". + uLine = Object.create(bLine); + ssrc2ml[ssrc] = uLine; + + if (typeof sources[ssrc].msid !== 'undefined') { + // Assign the msid of the source to the m-line. Note + // that it is not guaranteed that the source will have + // msid. In particular "recvonly" sources don't have an + // msid. Note that "recvonly" is a term only defined + // for m-lines. + uLine.msid = sources[ssrc].msid; + delete sources[ssrc].msid; + } + + // We assign one SSRC per media line. + uLine.sources = {}; + uLine.sources[ssrc] = sources[ssrc]; + uLine.ssrcGroups = ssrc2group[ssrc]; + + // Use the cached Unified Plan SDP (if it exists) to assign + // SSRCs to mids. + if (typeof cached !== 'undefined' && + typeof cached.media !== 'undefined' && + Array.isArray(cached.media)) { + + cached.media.forEach(function (m) { + if (typeof m.sources === 'object') { + Object.keys(m.sources).forEach(function (s) { + if (s === ssrc) { + uLine.mid = m.mid; + } + }); + } + }); + } + + if (typeof uLine.mid === 'undefined') { + + // If this is an SSRC that we see for the first time + // assign it a new mid. This is typically the case when + // this method is called to transform a remote + // description for the first time or when there is a + // new SSRC in the remote description because a new + // peer has joined the conference. Local SSRCs should + // have already been added to the map in the toPlanB + // method. + // + // Because FF generates answers in Unified Plan style, + // we MUST already have a cached answer with all the + // local SSRCs mapped to some m-line/mid. + + uLine.mid = [bLine.type, '-', ssrc].join(''); + } + + // Include the candidates in the 1st media line. + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + uLine.port = port; + + mid2ul[uLine.mid] = uLine; + sources2ul[uIdx] = uLine.sources; + + self.cache.mlU2BMap[uIdx] = bIdx; + if (typeof self.cache.mlB2UMap[bIdx] === 'undefined') { + self.cache.mlB2UMap[bIdx] = uIdx; + } + uIdx++; + } + }); + } else { + var uLine = bLine; + + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + uLine.port = port; + + mid2ul[uLine.mid] = uLine; + + self.cache.mlU2BMap[uIdx] = bIdx; + if (typeof self.cache.mlB2UMap[bIdx] === 'undefined') { + self.cache.mlB2UMap[bIdx] = uIdx; + } + } + + bIdx++; + }); + + // Rebuild the media array in the right order and add the missing mLines + // (missing from the Plan B SDP). + session.media = []; + mids = []; // reuse + + if (desc.type === 'answer') { + + // The media lines in the answer must match the media lines in the + // offer. The order is important too. Here we assume that Firefox is + // the answerer, so we merely have to use the reconstructed (unified) + // answer to update the cached (unified) answer accordingly. + // + // In the general case, one would have to use the cached (unified) + // offer to find the m-lines that are missing from the reconstructed + // answer, potentially grabbing them from the cached (unified) answer. + // One has to be careful with this approach because inactive m-lines do + // not always have an mid, making it tricky (impossible?) to find where + // exactly and which m-lines are missing from the reconstructed answer. + + for (var i = 0; i < cached.media.length; i++) { + var uLine = cached.media[i]; + + delete uLine.msid; + delete uLine.sources; + delete uLine.ssrcGroups; + + if (typeof sources2ul[i] === 'undefined') { + if (!uLine.direction + || uLine.direction === 'sendrecv') + uLine.direction = 'recvonly'; + else if (uLine.direction === 'sendonly') + uLine.direction = 'inactive'; + } else { + if (!uLine.direction + || uLine.direction === 'sendrecv') + uLine.direction = 'sendrecv'; + else if (uLine.direction === 'recvonly') + uLine.direction = 'sendonly'; + } + + uLine.sources = sources2ul[i]; + uLine.candidates = candidates; + uLine.iceUfrag = iceUfrag; + uLine.icePwd = icePwd; + uLine.fingerprint = fingerprint; + + uLine.rtp = rtp[uLine.type]; + uLine.payloads = payloads[uLine.type]; + uLine.rtcpFb = rtcpFb[uLine.type]; + + session.media.push(uLine); + + if (typeof uLine.mid === 'string') { + // inactive lines don't/may not have an mid. + mids.push(uLine.mid); + } + } + } else { + + // SDP offer/answer (and the JSEP spec) forbids removing an m-section + // under any circumstances. If we are no longer interested in sending a + // track, we just remove the msid and ssrc attributes and set it to + // either a=recvonly (as the reofferer, we must use recvonly if the + // other side was previously sending on the m-section, but we can also + // leave the possibility open if it wasn't previously in use), or + // a=inactive. + + if (typeof cached !== 'undefined' && + typeof cached.media !== 'undefined' && + Array.isArray(cached.media)) { + cached.media.forEach(function(uLine) { + mids.push(uLine.mid); + if (typeof mid2ul[uLine.mid] !== 'undefined') { + session.media.push(mid2ul[uLine.mid]); + } else { + delete uLine.msid; + delete uLine.sources; + delete uLine.ssrcGroups; + + if (!uLine.direction + || uLine.direction === 'sendrecv') { + uLine.direction = 'sendonly'; + } + if (!uLine.direction + || uLine.direction === 'recvonly') { + uLine.direction = 'inactive'; + } + + addSetupAttr (uLine); + session.media.push(uLine); + } + }); + } + + // Add all the remaining (new) m-lines of the transformed SDP. + Object.keys(mid2ul).forEach(function(mid) { + if (mids.indexOf(mid) === -1) { + mids.push(mid); + if (mid2ul[mid].direction === 'recvonly') { + // This is a remote recvonly channel. Add its SSRC to the + // appropriate sendrecv or sendonly channel. + // TODO(gp) what if we don't have sendrecv/sendonly + // channel? + + var done = false; + + session.media.some(function (uLine) { + if ((uLine.direction === 'sendrecv' || + uLine.direction === 'sendonly') && + uLine.type === mid2ul[mid].type) { + // mid2ul[mid] shouldn't have any ssrc-groups + Object.keys(mid2ul[mid].sources).forEach( + function (ssrc) { + uLine.sources[ssrc] = + mid2ul[mid].sources[ssrc]; + }); + + done = true; + return true; + } + }); + + if (!done) { + session.media.push(mid2ul[mid]); + } + } else { + session.media.push(mid2ul[mid]); + } + } + }); + } + + // After we have constructed the Plan Unified m-lines we can figure out + // where (in which m-line) to place the 'recvonly SSRCs'. + // Note: we assume here that we are the answerer in the O/A, so any offers + // which we translate come from the remote side, while answers are local + // (and so our last local description is cached as an 'answer'). + ["audio", "video"].forEach(function (type) { + if (!session || !session.media || !Array.isArray(session.media)) + return; + + var idx = null; + if (Object.keys(recvonlySsrcs[type]).length > 0) { + idx = self.getFirstSendingIndexFromAnswer(type); + if (idx === null){ + // If this is the first offer we receive, we don't have a + // cached answer. Assume that we will be sending media using + // the first m-line for each media type. + + for (var i = 0; i < session.media.length; i++) { + if (session.media[i].type === type) { + idx = i; + break; + } + } + } + } + + if (idx && session.media.length > idx) { + var mLine = session.media[idx]; + Object.keys(recvonlySsrcs[type]).forEach(function(ssrc) { + if (mLine.sources && mLine.sources[ssrc]) { + console.warn("Replacing an existing SSRC."); + } + if (!mLine.sources) { + mLine.sources = {}; + } + + mLine.sources[ssrc] = recvonlySsrcs[type][ssrc]; + }); + } + }); + + if (typeof session.groups !== 'undefined') { + // We regenerate the BUNDLE group (since we regenerated the mids) + session.groups.some(function(group) { + if (group.type === 'BUNDLE') { + group.mids = mids.join(' '); + return true; + } + }); + } + + // msid semantic + session.msidSemantic = { + semantic: 'WMS', + token: '*' + }; + + var resStr = transform.write(session); + + // Cache the transformed SDP (Unified Plan) for later re-use in this + // function. + this.cache[desc.type] = resStr; + + return new RTCSessionDescription({ + type: desc.type, + sdp: resStr + }); + + //#endregion +}; + +},{"./array-equals":17,"./transform":20}],20:[function(require,module,exports){ +/* Copyright @ 2015 Atlassian Pty Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +var transform = require('sdp-transform'); + +exports.write = function(session, opts) { + + if (typeof session !== 'undefined' && + typeof session.media !== 'undefined' && + Array.isArray(session.media)) { + + session.media.forEach(function (mLine) { + // expand sources to ssrcs + if (typeof mLine.sources !== 'undefined' && + Object.keys(mLine.sources).length !== 0) { + mLine.ssrcs = []; + Object.keys(mLine.sources).forEach(function (ssrc) { + var source = mLine.sources[ssrc]; + Object.keys(source).forEach(function (attribute) { + mLine.ssrcs.push({ + id: ssrc, + attribute: attribute, + value: source[attribute] + }); + }); + }); + delete mLine.sources; + } + + // join ssrcs in ssrc groups + if (typeof mLine.ssrcGroups !== 'undefined' && + Array.isArray(mLine.ssrcGroups)) { + mLine.ssrcGroups.forEach(function (ssrcGroup) { + if (typeof ssrcGroup.ssrcs !== 'undefined' && + Array.isArray(ssrcGroup.ssrcs)) { + ssrcGroup.ssrcs = ssrcGroup.ssrcs.join(' '); + } + }); + } + }); + } + + // join group mids + if (typeof session !== 'undefined' && + typeof session.groups !== 'undefined' && Array.isArray(session.groups)) { + + session.groups.forEach(function (g) { + if (typeof g.mids !== 'undefined' && Array.isArray(g.mids)) { + g.mids = g.mids.join(' '); + } + }); + } + + return transform.write(session, opts); +}; + +exports.parse = function(sdp) { + var session = transform.parse(sdp); + + if (typeof session !== 'undefined' && typeof session.media !== 'undefined' && + Array.isArray(session.media)) { + + session.media.forEach(function (mLine) { + // group sources attributes by ssrc + if (typeof mLine.ssrcs !== 'undefined' && Array.isArray(mLine.ssrcs)) { + mLine.sources = {}; + mLine.ssrcs.forEach(function (ssrc) { + if (!mLine.sources[ssrc.id]) + mLine.sources[ssrc.id] = {}; + mLine.sources[ssrc.id][ssrc.attribute] = ssrc.value; + }); + + delete mLine.ssrcs; + } + + // split ssrcs in ssrc groups + if (typeof mLine.ssrcGroups !== 'undefined' && + Array.isArray(mLine.ssrcGroups)) { + mLine.ssrcGroups.forEach(function (ssrcGroup) { + if (typeof ssrcGroup.ssrcs === 'string') { + ssrcGroup.ssrcs = ssrcGroup.ssrcs.split(' '); + } + }); + } + }); + } + // split group mids + if (typeof session !== 'undefined' && + typeof session.groups !== 'undefined' && Array.isArray(session.groups)) { + + session.groups.forEach(function (g) { + if (typeof g.mids === 'string') { + g.mids = g.mids.split(' '); + } + }); + } + + return session; +}; + + +},{"sdp-transform":14}],21:[function(require,module,exports){ +/** + * UAParser.js v0.7.17 + * Lightweight JavaScript-based User-Agent string parser + * https://github.com/faisalman/ua-parser-js + * + * Copyright © 2012-2016 Faisal Salman <fyzlman@gmail.com> + * Dual licensed under GPLv2 & MIT + */ + +(function (window, undefined) { + + 'use strict'; + + ////////////// + // Constants + ///////////// + + + var LIBVERSION = '0.7.17', + EMPTY = '', + UNKNOWN = '?', + FUNC_TYPE = 'function', + UNDEF_TYPE = 'undefined', + OBJ_TYPE = 'object', + STR_TYPE = 'string', + MAJOR = 'major', // deprecated + MODEL = 'model', + NAME = 'name', + TYPE = 'type', + VENDOR = 'vendor', + VERSION = 'version', + ARCHITECTURE= 'architecture', + CONSOLE = 'console', + MOBILE = 'mobile', + TABLET = 'tablet', + SMARTTV = 'smarttv', + WEARABLE = 'wearable', + EMBEDDED = 'embedded'; + + + /////////// + // Helper + ////////// + + + var util = { + extend : function (regexes, extensions) { + var margedRegexes = {}; + for (var i in regexes) { + if (extensions[i] && extensions[i].length % 2 === 0) { + margedRegexes[i] = extensions[i].concat(regexes[i]); + } else { + margedRegexes[i] = regexes[i]; + } + } + return margedRegexes; + }, + has : function (str1, str2) { + if (typeof str1 === "string") { + return str2.toLowerCase().indexOf(str1.toLowerCase()) !== -1; + } else { + return false; + } + }, + lowerize : function (str) { + return str.toLowerCase(); + }, + major : function (version) { + return typeof(version) === STR_TYPE ? version.replace(/[^\d\.]/g,'').split(".")[0] : undefined; + }, + trim : function (str) { + return str.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, ''); + } + }; + + + /////////////// + // Map helper + ////////////// + + + var mapper = { + + rgx : function (ua, arrays) { + + //var result = {}, + var i = 0, j, k, p, q, matches, match;//, args = arguments; + + /*// construct object barebones + for (p = 0; p < args[1].length; p++) { + q = args[1][p]; + result[typeof q === OBJ_TYPE ? q[0] : q] = undefined; + }*/ + + // loop through all regexes maps + while (i < arrays.length && !matches) { + + var regex = arrays[i], // even sequence (0,2,4,..) + props = arrays[i + 1]; // odd sequence (1,3,5,..) + j = k = 0; + + // try matching uastring with regexes + while (j < regex.length && !matches) { + + matches = regex[j++].exec(ua); + + if (!!matches) { + for (p = 0; p < props.length; p++) { + match = matches[++k]; + q = props[p]; + // check if given property is actually array + if (typeof q === OBJ_TYPE && q.length > 0) { + if (q.length == 2) { + if (typeof q[1] == FUNC_TYPE) { + // assign modified match + this[q[0]] = q[1].call(this, match); + } else { + // assign given value, ignore regex match + this[q[0]] = q[1]; + } + } else if (q.length == 3) { + // check whether function or regex + if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) { + // call function (usually string mapper) + this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined; + } else { + // sanitize match using given regex + this[q[0]] = match ? match.replace(q[1], q[2]) : undefined; + } + } else if (q.length == 4) { + this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined; + } + } else { + this[q] = match ? match : undefined; + } + } + } + } + i += 2; + } + // console.log(this); + //return this; + }, + + str : function (str, map) { + + for (var i in map) { + // check if array + if (typeof map[i] === OBJ_TYPE && map[i].length > 0) { + for (var j = 0; j < map[i].length; j++) { + if (util.has(map[i][j], str)) { + return (i === UNKNOWN) ? undefined : i; + } + } + } else if (util.has(map[i], str)) { + return (i === UNKNOWN) ? undefined : i; + } + } + return str; + } + }; + + + /////////////// + // String map + ////////////// + + + var maps = { + + browser : { + oldsafari : { + version : { + '1.0' : '/8', + '1.2' : '/1', + '1.3' : '/3', + '2.0' : '/412', + '2.0.2' : '/416', + '2.0.3' : '/417', + '2.0.4' : '/419', + '?' : '/' + } + } + }, + + device : { + amazon : { + model : { + 'Fire Phone' : ['SD', 'KF'] + } + }, + sprint : { + model : { + 'Evo Shift 4G' : '7373KT' + }, + vendor : { + 'HTC' : 'APA', + 'Sprint' : 'Sprint' + } + } + }, + + os : { + windows : { + version : { + 'ME' : '4.90', + 'NT 3.11' : 'NT3.51', + 'NT 4.0' : 'NT4.0', + '2000' : 'NT 5.0', + 'XP' : ['NT 5.1', 'NT 5.2'], + 'Vista' : 'NT 6.0', + '7' : 'NT 6.1', + '8' : 'NT 6.2', + '8.1' : 'NT 6.3', + '10' : ['NT 6.4', 'NT 10.0'], + 'RT' : 'ARM' + } + } + } + }; + + + ////////////// + // Regex map + ///////////// + + + var regexes = { + + browser : [[ + + // Presto based + /(opera\smini)\/([\w\.-]+)/i, // Opera Mini + /(opera\s[mobiletab]+).+version\/([\w\.-]+)/i, // Opera Mobi/Tablet + /(opera).+version\/([\w\.]+)/i, // Opera > 9.80 + /(opera)[\/\s]+([\w\.]+)/i // Opera < 9.80 + ], [NAME, VERSION], [ + + /(opios)[\/\s]+([\w\.]+)/i // Opera mini on iphone >= 8.0 + ], [[NAME, 'Opera Mini'], VERSION], [ + + /\s(opr)\/([\w\.]+)/i // Opera Webkit + ], [[NAME, 'Opera'], VERSION], [ + + // Mixed + /(kindle)\/([\w\.]+)/i, // Kindle + /(lunascape|maxthon|netfront|jasmine|blazer)[\/\s]?([\w\.]+)*/i, + // Lunascape/Maxthon/Netfront/Jasmine/Blazer + + // Trident based + /(avant\s|iemobile|slim|baidu)(?:browser)?[\/\s]?([\w\.]*)/i, + // Avant/IEMobile/SlimBrowser/Baidu + /(?:ms|\()(ie)\s([\w\.]+)/i, // Internet Explorer + + // Webkit/KHTML based + /(rekonq)\/([\w\.]+)*/i, // Rekonq + /(chromium|flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser)\/([\w\.-]+)/i + // Chromium/Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser + ], [NAME, VERSION], [ + + /(trident).+rv[:\s]([\w\.]+).+like\sgecko/i // IE11 + ], [[NAME, 'IE'], VERSION], [ + + /(edge)\/((\d+)?[\w\.]+)/i // Microsoft Edge + ], [NAME, VERSION], [ + + /(yabrowser)\/([\w\.]+)/i // Yandex + ], [[NAME, 'Yandex'], VERSION], [ + + /(puffin)\/([\w\.]+)/i // Puffin + ], [[NAME, 'Puffin'], VERSION], [ + + /((?:[\s\/])uc?\s?browser|(?:juc.+)ucweb)[\/\s]?([\w\.]+)/i + // UCBrowser + ], [[NAME, 'UCBrowser'], VERSION], [ + + /(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon + ], [[NAME, /_/g, ' '], VERSION], [ + + /(micromessenger)\/([\w\.]+)/i // WeChat + ], [[NAME, 'WeChat'], VERSION], [ + + /(QQ)\/([\d\.]+)/i // QQ, aka ShouQ + ], [NAME, VERSION], [ + + /m?(qqbrowser)[\/\s]?([\w\.]+)/i // QQBrowser + ], [NAME, VERSION], [ + + /xiaomi\/miuibrowser\/([\w\.]+)/i // MIUI Browser + ], [VERSION, [NAME, 'MIUI Browser']], [ + + /;fbav\/([\w\.]+);/i // Facebook App for iOS & Android + ], [VERSION, [NAME, 'Facebook']], [ + + /headlesschrome(?:\/([\w\.]+)|\s)/i // Chrome Headless + ], [VERSION, [NAME, 'Chrome Headless']], [ + + /\swv\).+(chrome)\/([\w\.]+)/i // Chrome WebView + ], [[NAME, /(.+)/, '$1 WebView'], VERSION], [ + + /((?:oculus|samsung)browser)\/([\w\.]+)/i + ], [[NAME, /(.+(?:g|us))(.+)/, '$1 $2'], VERSION], [ // Oculus / Samsung Browser + + /android.+version\/([\w\.]+)\s+(?:mobile\s?safari|safari)*/i // Android Browser + ], [VERSION, [NAME, 'Android Browser']], [ + + /(chrome|omniweb|arora|[tizenoka]{5}\s?browser)\/v?([\w\.]+)/i + // Chrome/OmniWeb/Arora/Tizen/Nokia + ], [NAME, VERSION], [ + + /(dolfin)\/([\w\.]+)/i // Dolphin + ], [[NAME, 'Dolphin'], VERSION], [ + + /((?:android.+)crmo|crios)\/([\w\.]+)/i // Chrome for Android/iOS + ], [[NAME, 'Chrome'], VERSION], [ + + /(coast)\/([\w\.]+)/i // Opera Coast + ], [[NAME, 'Opera Coast'], VERSION], [ + + /fxios\/([\w\.-]+)/i // Firefox for iOS + ], [VERSION, [NAME, 'Firefox']], [ + + /version\/([\w\.]+).+?mobile\/\w+\s(safari)/i // Mobile Safari + ], [VERSION, [NAME, 'Mobile Safari']], [ + + /version\/([\w\.]+).+?(mobile\s?safari|safari)/i // Safari & Safari Mobile + ], [VERSION, NAME], [ + + /webkit.+?(gsa)\/([\w\.]+).+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Google Search Appliance on iOS + ], [[NAME, 'GSA'], VERSION], [ + + /webkit.+?(mobile\s?safari|safari)(\/[\w\.]+)/i // Safari < 3.0 + ], [NAME, [VERSION, mapper.str, maps.browser.oldsafari.version]], [ + + /(konqueror)\/([\w\.]+)/i, // Konqueror + /(webkit|khtml)\/([\w\.]+)/i + ], [NAME, VERSION], [ + + // Gecko based + /(navigator|netscape)\/([\w\.-]+)/i // Netscape + ], [[NAME, 'Netscape'], VERSION], [ + /(swiftfox)/i, // Swiftfox + /(icedragon|iceweasel|camino|chimera|fennec|maemo\sbrowser|minimo|conkeror)[\/\s]?([\w\.\+]+)/i, + // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror + /(firefox|seamonkey|k-meleon|icecat|iceape|firebird|phoenix)\/([\w\.-]+)/i, + // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix + /(mozilla)\/([\w\.]+).+rv\:.+gecko\/\d+/i, // Mozilla + + // Other + /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir)[\/\s]?([\w\.]+)/i, + // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir + /(links)\s\(([\w\.]+)/i, // Links + /(gobrowser)\/?([\w\.]+)*/i, // GoBrowser + /(ice\s?browser)\/v?([\w\._]+)/i, // ICE Browser + /(mosaic)[\/\s]([\w\.]+)/i // Mosaic + ], [NAME, VERSION] + + /* ///////////////////// + // Media players BEGIN + //////////////////////// + + , [ + + /(apple(?:coremedia|))\/((\d+)[\w\._]+)/i, // Generic Apple CoreMedia + /(coremedia) v((\d+)[\w\._]+)/i + ], [NAME, VERSION], [ + + /(aqualung|lyssna|bsplayer)\/((\d+)?[\w\.-]+)/i // Aqualung/Lyssna/BSPlayer + ], [NAME, VERSION], [ + + /(ares|ossproxy)\s((\d+)[\w\.-]+)/i // Ares/OSSProxy + ], [NAME, VERSION], [ + + /(audacious|audimusicstream|amarok|bass|core|dalvik|gnomemplayer|music on console|nsplayer|psp-internetradioplayer|videos)\/((\d+)[\w\.-]+)/i, + // Audacious/AudiMusicStream/Amarok/BASS/OpenCORE/Dalvik/GnomeMplayer/MoC + // NSPlayer/PSP-InternetRadioPlayer/Videos + /(clementine|music player daemon)\s((\d+)[\w\.-]+)/i, // Clementine/MPD + /(lg player|nexplayer)\s((\d+)[\d\.]+)/i, + /player\/(nexplayer|lg player)\s((\d+)[\w\.-]+)/i // NexPlayer/LG Player + ], [NAME, VERSION], [ + /(nexplayer)\s((\d+)[\w\.-]+)/i // Nexplayer + ], [NAME, VERSION], [ + + /(flrp)\/((\d+)[\w\.-]+)/i // Flip Player + ], [[NAME, 'Flip Player'], VERSION], [ + + /(fstream|nativehost|queryseekspider|ia-archiver|facebookexternalhit)/i + // FStream/NativeHost/QuerySeekSpider/IA Archiver/facebookexternalhit + ], [NAME], [ + + /(gstreamer) souphttpsrc (?:\([^\)]+\)){0,1} libsoup\/((\d+)[\w\.-]+)/i + // Gstreamer + ], [NAME, VERSION], [ + + /(htc streaming player)\s[\w_]+\s\/\s((\d+)[\d\.]+)/i, // HTC Streaming Player + /(java|python-urllib|python-requests|wget|libcurl)\/((\d+)[\w\.-_]+)/i, + // Java/urllib/requests/wget/cURL + /(lavf)((\d+)[\d\.]+)/i // Lavf (FFMPEG) + ], [NAME, VERSION], [ + + /(htc_one_s)\/((\d+)[\d\.]+)/i // HTC One S + ], [[NAME, /_/g, ' '], VERSION], [ + + /(mplayer)(?:\s|\/)(?:(?:sherpya-){0,1}svn)(?:-|\s)(r\d+(?:-\d+[\w\.-]+){0,1})/i + // MPlayer SVN + ], [NAME, VERSION], [ + + /(mplayer)(?:\s|\/|[unkow-]+)((\d+)[\w\.-]+)/i // MPlayer + ], [NAME, VERSION], [ + + /(mplayer)/i, // MPlayer (no other info) + /(yourmuze)/i, // YourMuze + /(media player classic|nero showtime)/i // Media Player Classic/Nero ShowTime + ], [NAME], [ + + /(nero (?:home|scout))\/((\d+)[\w\.-]+)/i // Nero Home/Nero Scout + ], [NAME, VERSION], [ + + /(nokia\d+)\/((\d+)[\w\.-]+)/i // Nokia + ], [NAME, VERSION], [ + + /\s(songbird)\/((\d+)[\w\.-]+)/i // Songbird/Philips-Songbird + ], [NAME, VERSION], [ + + /(winamp)3 version ((\d+)[\w\.-]+)/i, // Winamp + /(winamp)\s((\d+)[\w\.-]+)/i, + /(winamp)mpeg\/((\d+)[\w\.-]+)/i + ], [NAME, VERSION], [ + + /(ocms-bot|tapinradio|tunein radio|unknown|winamp|inlight radio)/i // OCMS-bot/tap in radio/tunein/unknown/winamp (no other info) + // inlight radio + ], [NAME], [ + + /(quicktime|rma|radioapp|radioclientapplication|soundtap|totem|stagefright|streamium)\/((\d+)[\w\.-]+)/i + // QuickTime/RealMedia/RadioApp/RadioClientApplication/ + // SoundTap/Totem/Stagefright/Streamium + ], [NAME, VERSION], [ + + /(smp)((\d+)[\d\.]+)/i // SMP + ], [NAME, VERSION], [ + + /(vlc) media player - version ((\d+)[\w\.]+)/i, // VLC Videolan + /(vlc)\/((\d+)[\w\.-]+)/i, + /(xbmc|gvfs|xine|xmms|irapp)\/((\d+)[\w\.-]+)/i, // XBMC/gvfs/Xine/XMMS/irapp + /(foobar2000)\/((\d+)[\d\.]+)/i, // Foobar2000 + /(itunes)\/((\d+)[\d\.]+)/i // iTunes + ], [NAME, VERSION], [ + + /(wmplayer)\/((\d+)[\w\.-]+)/i, // Windows Media Player + /(windows-media-player)\/((\d+)[\w\.-]+)/i + ], [[NAME, /-/g, ' '], VERSION], [ + + /windows\/((\d+)[\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ (home media server)/i + // Windows Media Server + ], [VERSION, [NAME, 'Windows']], [ + + /(com\.riseupradioalarm)\/((\d+)[\d\.]*)/i // RiseUP Radio Alarm + ], [NAME, VERSION], [ + + /(rad.io)\s((\d+)[\d\.]+)/i, // Rad.io + /(radio.(?:de|at|fr))\s((\d+)[\d\.]+)/i + ], [[NAME, 'rad.io'], VERSION] + + ////////////////////// + // Media players END + ////////////////////*/ + + ], + + cpu : [[ + + /(?:(amd|x(?:(?:86|64)[_-])?|wow|win)64)[;\)]/i // AMD64 + ], [[ARCHITECTURE, 'amd64']], [ + + /(ia32(?=;))/i // IA32 (quicktime) + ], [[ARCHITECTURE, util.lowerize]], [ + + /((?:i[346]|x)86)[;\)]/i // IA32 + ], [[ARCHITECTURE, 'ia32']], [ + + // PocketPC mistakenly identified as PowerPC + /windows\s(ce|mobile);\sppc;/i + ], [[ARCHITECTURE, 'arm']], [ + + /((?:ppc|powerpc)(?:64)?)(?:\smac|;|\))/i // PowerPC + ], [[ARCHITECTURE, /ower/, '', util.lowerize]], [ + + /(sun4\w)[;\)]/i // SPARC + ], [[ARCHITECTURE, 'sparc']], [ + + /((?:avr32|ia64(?=;))|68k(?=\))|arm(?:64|(?=v\d+;))|(?=atmel\s)avr|(?:irix|mips|sparc)(?:64)?(?=;)|pa-risc)/i + // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC + ], [[ARCHITECTURE, util.lowerize]] + ], + + device : [[ + + /\((ipad|playbook);[\w\s\);-]+(rim|apple)/i // iPad/PlayBook + ], [MODEL, VENDOR, [TYPE, TABLET]], [ + + /applecoremedia\/[\w\.]+ \((ipad)/ // iPad + ], [MODEL, [VENDOR, 'Apple'], [TYPE, TABLET]], [ + + /(apple\s{0,1}tv)/i // Apple TV + ], [[MODEL, 'Apple TV'], [VENDOR, 'Apple']], [ + + /(archos)\s(gamepad2?)/i, // Archos + /(hp).+(touchpad)/i, // HP TouchPad + /(hp).+(tablet)/i, // HP Tablet + /(kindle)\/([\w\.]+)/i, // Kindle + /\s(nook)[\w\s]+build\/(\w+)/i, // Nook + /(dell)\s(strea[kpr\s\d]*[\dko])/i // Dell Streak + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /(kf[A-z]+)\sbuild\/[\w\.]+.*silk\//i // Kindle Fire HD + ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ + /(sd|kf)[0349hijorstuw]+\sbuild\/[\w\.]+.*silk\//i // Fire Phone + ], [[MODEL, mapper.str, maps.device.amazon.model], [VENDOR, 'Amazon'], [TYPE, MOBILE]], [ + + /\((ip[honed|\s\w*]+);.+(apple)/i // iPod/iPhone + ], [MODEL, VENDOR, [TYPE, MOBILE]], [ + /\((ip[honed|\s\w*]+);/i // iPod/iPhone + ], [MODEL, [VENDOR, 'Apple'], [TYPE, MOBILE]], [ + + /(blackberry)[\s-]?(\w+)/i, // BlackBerry + /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[\s_-]?([\w-]+)*/i, + // BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron + /(hp)\s([\w\s]+\w)/i, // HP iPAQ + /(asus)-?(\w+)/i // Asus + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /\(bb10;\s(\w+)/i // BlackBerry 10 + ], [MODEL, [VENDOR, 'BlackBerry'], [TYPE, MOBILE]], [ + // Asus Tablets + /android.+(transfo[prime\s]{4,10}\s\w+|eeepc|slider\s\w+|nexus 7|padfone)/i + ], [MODEL, [VENDOR, 'Asus'], [TYPE, TABLET]], [ + + /(sony)\s(tablet\s[ps])\sbuild\//i, // Sony + /(sony)?(?:sgp.+)\sbuild\//i + ], [[VENDOR, 'Sony'], [MODEL, 'Xperia Tablet'], [TYPE, TABLET]], [ + /android.+\s([c-g]\d{4}|so[-l]\w+)\sbuild\//i + ], [MODEL, [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + + /\s(ouya)\s/i, // Ouya + /(nintendo)\s([wids3u]+)/i // Nintendo + ], [VENDOR, MODEL, [TYPE, CONSOLE]], [ + + /android.+;\s(shield)\sbuild/i // Nvidia + ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, CONSOLE]], [ + + /(playstation\s[34portablevi]+)/i // Playstation + ], [MODEL, [VENDOR, 'Sony'], [TYPE, CONSOLE]], [ + + /(sprint\s(\w+))/i // Sprint Phones + ], [[VENDOR, mapper.str, maps.device.sprint.vendor], [MODEL, mapper.str, maps.device.sprint.model], [TYPE, MOBILE]], [ + + /(lenovo)\s?(S(?:5000|6000)+(?:[-][\w+]))/i // Lenovo tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /(htc)[;_\s-]+([\w\s]+(?=\))|\w+)*/i, // HTC + /(zte)-(\w+)*/i, // ZTE + /(alcatel|geeksphone|lenovo|nexian|panasonic|(?=;\s)sony)[_\s-]?([\w-]+)*/i + // Alcatel/GeeksPhone/Lenovo/Nexian/Panasonic/Sony + ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [ + + /(nexus\s9)/i // HTC Nexus 9 + ], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [ + + /d\/huawei([\w\s-]+)[;\)]/i, + /(nexus\s6p)/i // Huawei + ], [MODEL, [VENDOR, 'Huawei'], [TYPE, MOBILE]], [ + + /(microsoft);\s(lumia[\s\w]+)/i // Microsoft Lumia + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /[\s\(;](xbox(?:\sone)?)[\s\);]/i // Microsoft Xbox + ], [MODEL, [VENDOR, 'Microsoft'], [TYPE, CONSOLE]], [ + /(kin\.[onetw]{3})/i // Microsoft Kin + ], [[MODEL, /\./g, ' '], [VENDOR, 'Microsoft'], [TYPE, MOBILE]], [ + + // Motorola + /\s(milestone|droid(?:[2-4x]|\s(?:bionic|x2|pro|razr))?(:?\s4g)?)[\w\s]+build\//i, + /mot[\s-]?(\w+)*/i, + /(XT\d{3,4}) build\//i, + /(nexus\s6)/i + ], [MODEL, [VENDOR, 'Motorola'], [TYPE, MOBILE]], [ + /android.+\s(mz60\d|xoom[\s2]{0,2})\sbuild\//i + ], [MODEL, [VENDOR, 'Motorola'], [TYPE, TABLET]], [ + + /hbbtv\/\d+\.\d+\.\d+\s+\([\w\s]*;\s*(\w[^;]*);([^;]*)/i // HbbTV devices + ], [[VENDOR, util.trim], [MODEL, util.trim], [TYPE, SMARTTV]], [ + + /hbbtv.+maple;(\d+)/i + ], [[MODEL, /^/, 'SmartTV'], [VENDOR, 'Samsung'], [TYPE, SMARTTV]], [ + + /\(dtv[\);].+(aquos)/i // Sharp + ], [MODEL, [VENDOR, 'Sharp'], [TYPE, SMARTTV]], [ + + /android.+((sch-i[89]0\d|shw-m380s|gt-p\d{4}|gt-n\d+|sgh-t8[56]9|nexus 10))/i, + /((SM-T\w+))/i + ], [[VENDOR, 'Samsung'], MODEL, [TYPE, TABLET]], [ // Samsung + /smart-tv.+(samsung)/i + ], [VENDOR, [TYPE, SMARTTV], MODEL], [ + /((s[cgp]h-\w+|gt-\w+|galaxy\snexus|sm-\w[\w\d]+))/i, + /(sam[sung]*)[\s-]*(\w+-?[\w-]*)*/i, + /sec-((sgh\w+))/i + ], [[VENDOR, 'Samsung'], MODEL, [TYPE, MOBILE]], [ + + /sie-(\w+)*/i // Siemens + ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [ + + /(maemo|nokia).*(n900|lumia\s\d+)/i, // Nokia + /(nokia)[\s_-]?([\w-]+)*/i + ], [[VENDOR, 'Nokia'], MODEL, [TYPE, MOBILE]], [ + + /android\s3\.[\s\w;-]{10}(a\d{3})/i // Acer + ], [MODEL, [VENDOR, 'Acer'], [TYPE, TABLET]], [ + + /android.+([vl]k\-?\d{3})\s+build/i // LG Tablet + ], [MODEL, [VENDOR, 'LG'], [TYPE, TABLET]], [ + /android\s3\.[\s\w;-]{10}(lg?)-([06cv9]{3,4})/i // LG Tablet + ], [[VENDOR, 'LG'], MODEL, [TYPE, TABLET]], [ + /(lg) netcast\.tv/i // LG SmartTV + ], [VENDOR, MODEL, [TYPE, SMARTTV]], [ + /(nexus\s[45])/i, // LG + /lg[e;\s\/-]+(\w+)*/i, + /android.+lg(\-?[\d\w]+)\s+build/i + ], [MODEL, [VENDOR, 'LG'], [TYPE, MOBILE]], [ + + /android.+(ideatab[a-z0-9\-\s]+)/i // Lenovo + ], [MODEL, [VENDOR, 'Lenovo'], [TYPE, TABLET]], [ + + /linux;.+((jolla));/i // Jolla + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /((pebble))app\/[\d\.]+\s/i // Pebble + ], [VENDOR, MODEL, [TYPE, WEARABLE]], [ + + /android.+;\s(oppo)\s?([\w\s]+)\sbuild/i // OPPO + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + + /crkey/i // Google Chromecast + ], [[MODEL, 'Chromecast'], [VENDOR, 'Google']], [ + + /android.+;\s(glass)\s\d/i // Google Glass + ], [MODEL, [VENDOR, 'Google'], [TYPE, WEARABLE]], [ + + /android.+;\s(pixel c)\s/i // Google Pixel C + ], [MODEL, [VENDOR, 'Google'], [TYPE, TABLET]], [ + + /android.+;\s(pixel xl|pixel)\s/i // Google Pixel + ], [MODEL, [VENDOR, 'Google'], [TYPE, MOBILE]], [ + + /android.+(\w+)\s+build\/hm\1/i, // Xiaomi Hongmi 'numeric' models + /android.+(hm[\s\-_]*note?[\s_]*(?:\d\w)?)\s+build/i, // Xiaomi Hongmi + /android.+(mi[\s\-_]*(?:one|one[\s_]plus|note lte)?[\s_]*(?:\d\w)?)\s+build/i, // Xiaomi Mi + /android.+(redmi[\s\-_]*(?:note)?(?:[\s_]*[\w\s]+)?)\s+build/i // Redmi Phones + ], [[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, MOBILE]], [ + /android.+(mi[\s\-_]*(?:pad)?(?:[\s_]*[\w\s]+)?)\s+build/i // Mi Pad tablets + ],[[MODEL, /_/g, ' '], [VENDOR, 'Xiaomi'], [TYPE, TABLET]], [ + /android.+;\s(m[1-5]\snote)\sbuild/i // Meizu Tablet + ], [MODEL, [VENDOR, 'Meizu'], [TYPE, TABLET]], [ + + /android.+a000(1)\s+build/i // OnePlus + ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(RCT[\d\w]+)\s+build/i // RCA Tablets + ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Venue[\d\s]*)\s+build/i // Dell Venue Tablets + ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Q[T|M][\d\w]+)\s+build/i // Verizon Tablet + ], [MODEL, [VENDOR, 'Verizon'], [TYPE, TABLET]], [ + + /android.+[;\/]\s+(Barnes[&\s]+Noble\s+|BN[RT])(V?.*)\s+build/i // Barnes & Noble Tablet + ], [[VENDOR, 'Barnes & Noble'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s+(TM\d{3}.*\b)\s+build/i // Barnes & Noble Tablet + ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(zte)?.+(k\d{2})\s+build/i // ZTE K Series Tablet + ], [[VENDOR, 'ZTE'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(gen\d{3})\s+build.*49h/i // Swiss GEN Mobile + ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(zur\d{3})\s+build/i // Swiss ZUR Tablet + ], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*((Zeki)?TB.*\b)\s+build/i // Zeki Tablets + ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [ + + /(android).+[;\/]\s+([YR]\d{2}x?.*)\s+build/i, + /android.+[;\/]\s+(Dragon[\-\s]+Touch\s+|DT)(.+)\s+build/i // Dragon Touch Tablet + ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(NS-?.+)\s+build/i // Insignia Tablets + ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*((NX|Next)-?.+)\s+build/i // NextBook Tablets + ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Xtreme\_?)?(V(1[045]|2[015]|30|40|60|7[05]|90))\s+build/i + ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [ // Voice Xtreme Phones + + /android.+[;\/]\s*(LVTEL\-?)?(V1[12])\s+build/i // LvTel Phones + ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [ + + /android.+[;\/]\s*(V(100MD|700NA|7011|917G).*\b)\s+build/i // Envizen Tablets + ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Le[\s\-]+Pan)[\s\-]+(.*\b)\s+build/i // Le Pan Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Trio[\s\-]*.*)\s+build/i // MachSpeed Tablets + ], [MODEL, [VENDOR, 'MachSpeed'], [TYPE, TABLET]], [ + + /android.+[;\/]\s*(Trinity)[\-\s]*(T\d{3})\s+build/i // Trinity Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /android.+[;\/]\s*TU_(1491)\s+build/i // Rotor Tablets + ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [ + + /android.+(KS(.+))\s+build/i // Amazon Kindle Tablets + ], [MODEL, [VENDOR, 'Amazon'], [TYPE, TABLET]], [ + + /android.+(Gigaset)[\s\-]+(Q.+)\s+build/i // Gigaset Tablets + ], [VENDOR, MODEL, [TYPE, TABLET]], [ + + /\s(tablet|tab)[;\/]/i, // Unidentifiable Tablet + /\s(mobile)(?:[;\/]|\ssafari)/i // Unidentifiable Mobile + ], [[TYPE, util.lowerize], VENDOR, MODEL], [ + + /(android.+)[;\/].+build/i // Generic Android Device + ], [MODEL, [VENDOR, 'Generic']] + + + /*////////////////////////// + // TODO: move to string map + //////////////////////////// + + /(C6603)/i // Sony Xperia Z C6603 + ], [[MODEL, 'Xperia Z C6603'], [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + /(C6903)/i // Sony Xperia Z 1 + ], [[MODEL, 'Xperia Z 1'], [VENDOR, 'Sony'], [TYPE, MOBILE]], [ + + /(SM-G900[F|H])/i // Samsung Galaxy S5 + ], [[MODEL, 'Galaxy S5'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G7102)/i // Samsung Galaxy Grand 2 + ], [[MODEL, 'Galaxy Grand 2'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G530H)/i // Samsung Galaxy Grand Prime + ], [[MODEL, 'Galaxy Grand Prime'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-G313HZ)/i // Samsung Galaxy V + ], [[MODEL, 'Galaxy V'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-T805)/i // Samsung Galaxy Tab S 10.5 + ], [[MODEL, 'Galaxy Tab S 10.5'], [VENDOR, 'Samsung'], [TYPE, TABLET]], [ + /(SM-G800F)/i // Samsung Galaxy S5 Mini + ], [[MODEL, 'Galaxy S5 Mini'], [VENDOR, 'Samsung'], [TYPE, MOBILE]], [ + /(SM-T311)/i // Samsung Galaxy Tab 3 8.0 + ], [[MODEL, 'Galaxy Tab 3 8.0'], [VENDOR, 'Samsung'], [TYPE, TABLET]], [ + + /(T3C)/i // Advan Vandroid T3C + ], [MODEL, [VENDOR, 'Advan'], [TYPE, TABLET]], [ + /(ADVAN T1J\+)/i // Advan Vandroid T1J+ + ], [[MODEL, 'Vandroid T1J+'], [VENDOR, 'Advan'], [TYPE, TABLET]], [ + /(ADVAN S4A)/i // Advan Vandroid S4A + ], [[MODEL, 'Vandroid S4A'], [VENDOR, 'Advan'], [TYPE, MOBILE]], [ + + /(V972M)/i // ZTE V972M + ], [MODEL, [VENDOR, 'ZTE'], [TYPE, MOBILE]], [ + + /(i-mobile)\s(IQ\s[\d\.]+)/i // i-mobile IQ + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /(IQ6.3)/i // i-mobile IQ IQ 6.3 + ], [[MODEL, 'IQ 6.3'], [VENDOR, 'i-mobile'], [TYPE, MOBILE]], [ + /(i-mobile)\s(i-style\s[\d\.]+)/i // i-mobile i-STYLE + ], [VENDOR, MODEL, [TYPE, MOBILE]], [ + /(i-STYLE2.1)/i // i-mobile i-STYLE 2.1 + ], [[MODEL, 'i-STYLE 2.1'], [VENDOR, 'i-mobile'], [TYPE, MOBILE]], [ + + /(mobiistar touch LAI 512)/i // mobiistar touch LAI 512 + ], [[MODEL, 'Touch LAI 512'], [VENDOR, 'mobiistar'], [TYPE, MOBILE]], [ + + ///////////// + // END TODO + ///////////*/ + + ], + + engine : [[ + + /windows.+\sedge\/([\w\.]+)/i // EdgeHTML + ], [VERSION, [NAME, 'EdgeHTML']], [ + + /(presto)\/([\w\.]+)/i, // Presto + /(webkit|trident|netfront|netsurf|amaya|lynx|w3m)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m + /(khtml|tasman|links)[\/\s]\(?([\w\.]+)/i, // KHTML/Tasman/Links + /(icab)[\/\s]([23]\.[\d\.]+)/i // iCab + ], [NAME, VERSION], [ + + /rv\:([\w\.]+).*(gecko)/i // Gecko + ], [VERSION, NAME] + ], + + os : [[ + + // Windows based + /microsoft\s(windows)\s(vista|xp)/i // Windows (iTunes) + ], [NAME, VERSION], [ + /(windows)\snt\s6\.2;\s(arm)/i, // Windows RT + /(windows\sphone(?:\sos)*)[\s\/]?([\d\.\s]+\w)*/i, // Windows Phone + /(windows\smobile|windows)[\s\/]?([ntce\d\.\s]+\w)/i + ], [NAME, [VERSION, mapper.str, maps.os.windows.version]], [ + /(win(?=3|9|n)|win\s9x\s)([nt\d\.]+)/i + ], [[NAME, 'Windows'], [VERSION, mapper.str, maps.os.windows.version]], [ + + // Mobile/Embedded OS + /\((bb)(10);/i // BlackBerry 10 + ], [[NAME, 'BlackBerry'], VERSION], [ + /(blackberry)\w*\/?([\w\.]+)*/i, // Blackberry + /(tizen)[\/\s]([\w\.]+)/i, // Tizen + /(android|webos|palm\sos|qnx|bada|rim\stablet\sos|meego|contiki)[\/\s-]?([\w\.]+)*/i, + // Android/WebOS/Palm/QNX/Bada/RIM/MeeGo/Contiki + /linux;.+(sailfish);/i // Sailfish OS + ], [NAME, VERSION], [ + /(symbian\s?os|symbos|s60(?=;))[\/\s-]?([\w\.]+)*/i // Symbian + ], [[NAME, 'Symbian'], VERSION], [ + /\((series40);/i // Series 40 + ], [NAME], [ + /mozilla.+\(mobile;.+gecko.+firefox/i // Firefox OS + ], [[NAME, 'Firefox OS'], VERSION], [ + + // Console + /(nintendo|playstation)\s([wids34portablevu]+)/i, // Nintendo/Playstation + + // GNU/Linux based + /(mint)[\/\s\(]?(\w+)*/i, // Mint + /(mageia|vectorlinux)[;\s]/i, // Mageia/VectorLinux + /(joli|[kxln]?ubuntu|debian|[open]*suse|gentoo|(?=\s)arch|slackware|fedora|mandriva|centos|pclinuxos|redhat|zenwalk|linpus)[\/\s-]?(?!chrom)([\w\.-]+)*/i, + // Joli/Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware + // Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus + /(hurd|linux)\s?([\w\.]+)*/i, // Hurd/Linux + /(gnu)\s?([\w\.]+)*/i // GNU + ], [NAME, VERSION], [ + + /(cros)\s[\w]+\s([\w\.]+\w)/i // Chromium OS + ], [[NAME, 'Chromium OS'], VERSION],[ + + // Solaris + /(sunos)\s?([\w\.]+\d)*/i // Solaris + ], [[NAME, 'Solaris'], VERSION], [ + + // BSD based + /\s([frentopc-]{0,4}bsd|dragonfly)\s?([\w\.]+)*/i // FreeBSD/NetBSD/OpenBSD/PC-BSD/DragonFly + ], [NAME, VERSION],[ + + /(haiku)\s(\w+)/i // Haiku + ], [NAME, VERSION],[ + + /cfnetwork\/.+darwin/i, + /ip[honead]+(?:.*os\s([\w]+)\slike\smac|;\sopera)/i // iOS + ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [ + + /(mac\sos\sx)\s?([\w\s\.]+\w)*/i, + /(macintosh|mac(?=_powerpc)\s)/i // Mac OS + ], [[NAME, 'Mac OS'], [VERSION, /_/g, '.']], [ + + // Other + /((?:open)?solaris)[\/\s-]?([\w\.]+)*/i, // Solaris + /(aix)\s((\d)(?=\.|\)|\s)[\w\.]*)*/i, // AIX + /(plan\s9|minix|beos|os\/2|amigaos|morphos|risc\sos|openvms)/i, + // Plan9/Minix/BeOS/OS2/AmigaOS/MorphOS/RISCOS/OpenVMS + /(unix)\s?([\w\.]+)*/i // UNIX + ], [NAME, VERSION] + ] + }; + + + ///////////////// + // Constructor + //////////////// + /* + var Browser = function (name, version) { + this[NAME] = name; + this[VERSION] = version; + }; + var CPU = function (arch) { + this[ARCHITECTURE] = arch; + }; + var Device = function (vendor, model, type) { + this[VENDOR] = vendor; + this[MODEL] = model; + this[TYPE] = type; + }; + var Engine = Browser; + var OS = Browser; + */ + var UAParser = function (uastring, extensions) { + + if (typeof uastring === 'object') { + extensions = uastring; + uastring = undefined; + } + + if (!(this instanceof UAParser)) { + return new UAParser(uastring, extensions).getResult(); + } + + var ua = uastring || ((window && window.navigator && window.navigator.userAgent) ? window.navigator.userAgent : EMPTY); + var rgxmap = extensions ? util.extend(regexes, extensions) : regexes; + //var browser = new Browser(); + //var cpu = new CPU(); + //var device = new Device(); + //var engine = new Engine(); + //var os = new OS(); + + this.getBrowser = function () { + var browser = { name: undefined, version: undefined }; + mapper.rgx.call(browser, ua, rgxmap.browser); + browser.major = util.major(browser.version); // deprecated + return browser; + }; + this.getCPU = function () { + var cpu = { architecture: undefined }; + mapper.rgx.call(cpu, ua, rgxmap.cpu); + return cpu; + }; + this.getDevice = function () { + var device = { vendor: undefined, model: undefined, type: undefined }; + mapper.rgx.call(device, ua, rgxmap.device); + return device; + }; + this.getEngine = function () { + var engine = { name: undefined, version: undefined }; + mapper.rgx.call(engine, ua, rgxmap.engine); + return engine; + }; + this.getOS = function () { + var os = { name: undefined, version: undefined }; + mapper.rgx.call(os, ua, rgxmap.os); + return os; + }; + this.getResult = function () { + return { + ua : this.getUA(), + browser : this.getBrowser(), + engine : this.getEngine(), + os : this.getOS(), + device : this.getDevice(), + cpu : this.getCPU() + }; + }; + this.getUA = function () { + return ua; + }; + this.setUA = function (uastring) { + ua = uastring; + //browser = new Browser(); + //cpu = new CPU(); + //device = new Device(); + //engine = new Engine(); + //os = new OS(); + return this; + }; + return this; + }; + + UAParser.VERSION = LIBVERSION; + UAParser.BROWSER = { + NAME : NAME, + MAJOR : MAJOR, // deprecated + VERSION : VERSION + }; + UAParser.CPU = { + ARCHITECTURE : ARCHITECTURE + }; + UAParser.DEVICE = { + MODEL : MODEL, + VENDOR : VENDOR, + TYPE : TYPE, + CONSOLE : CONSOLE, + MOBILE : MOBILE, + SMARTTV : SMARTTV, + TABLET : TABLET, + WEARABLE: WEARABLE, + EMBEDDED: EMBEDDED + }; + UAParser.ENGINE = { + NAME : NAME, + VERSION : VERSION + }; + UAParser.OS = { + NAME : NAME, + VERSION : VERSION + }; + //UAParser.Utils = util; + + /////////// + // Export + ////////// + + + // check js environment + if (typeof(exports) !== UNDEF_TYPE) { + // nodejs env + if (typeof module !== UNDEF_TYPE && module.exports) { + exports = module.exports = UAParser; + } + // TODO: test!!!!!!!! + /* + if (require && require.main === module && process) { + // cli + var jsonize = function (arr) { + var res = []; + for (var i in arr) { + res.push(new UAParser(arr[i]).getResult()); + } + process.stdout.write(JSON.stringify(res, null, 2) + '\n'); + }; + if (process.stdin.isTTY) { + // via args + jsonize(process.argv.slice(2)); + } else { + // via pipe + var str = ''; + process.stdin.on('readable', function() { + var read = process.stdin.read(); + if (read !== null) { + str += read; + } + }); + process.stdin.on('end', function () { + jsonize(str.replace(/\n$/, '').split('\n')); + }); + } + } + */ + exports.UAParser = UAParser; + } else { + // requirejs env (optional) + if (typeof(define) === FUNC_TYPE && define.amd) { + define(function () { + return UAParser; + }); + } else if (window) { + // browser env + window.UAParser = UAParser; + } + } + + // jQuery/Zepto specific (optional) + // Note: + // In AMD env the global scope should be kept clean, but jQuery is an exception. + // jQuery always exports to global scope, unless jQuery.noConflict(true) is used, + // and we should catch that. + var $ = window && (window.jQuery || window.Zepto); + if (typeof $ !== UNDEF_TYPE) { + var parser = new UAParser(); + $.ua = parser.getResult(); + $.ua.get = function () { + return parser.getUA(); + }; + $.ua.set = function (uastring) { + parser.setUA(uastring); + var result = parser.getResult(); + for (var prop in result) { + $.ua[prop] = result[prop]; + } + }; + } + +})(typeof window === 'object' ? window : this); + +},{}],22:[function(require,module,exports){ +(function (global){ + +var rng; + +var crypto = global.crypto || global.msCrypto; // for IE 11 +if (crypto && crypto.getRandomValues) { + // WHATWG crypto-based RNG - http://wiki.whatwg.org/wiki/Crypto + // Moderately fast, high quality + var _rnds8 = new Uint8Array(16); + rng = function whatwgRNG() { + crypto.getRandomValues(_rnds8); + return _rnds8; + }; +} + +if (!rng) { + // Math.random()-based (RNG) + // + // If all else fails, use Math.random(). It's fast, but is of unspecified + // quality. + var _rnds = new Array(16); + rng = function() { + for (var i = 0, r; i < 16; i++) { + if ((i & 0x03) === 0) r = Math.random() * 0x100000000; + _rnds[i] = r >>> ((i & 0x03) << 3) & 0xff; + } + + return _rnds; + }; +} + +module.exports = rng; + + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],23:[function(require,module,exports){ +// uuid.js +// +// Copyright (c) 2010-2012 Robert Kieffer +// MIT License - http://opensource.org/licenses/mit-license.php + +// Unique ID creation requires a high quality random # generator. We feature +// detect to determine the best RNG source, normalizing to a function that +// returns 128-bits of randomness, since that's what's usually required +var _rng = require('./rng'); + +// Maps for number <-> hex string conversion +var _byteToHex = []; +var _hexToByte = {}; +for (var i = 0; i < 256; i++) { + _byteToHex[i] = (i + 0x100).toString(16).substr(1); + _hexToByte[_byteToHex[i]] = i; +} + +// **`parse()` - Parse a UUID into it's component bytes** +function parse(s, buf, offset) { + var i = (buf && offset) || 0, ii = 0; + + buf = buf || []; + s.toLowerCase().replace(/[0-9a-f]{2}/g, function(oct) { + if (ii < 16) { // Don't overflow! + buf[i + ii++] = _hexToByte[oct]; + } + }); + + // Zero out remaining bytes if string was short + while (ii < 16) { + buf[i + ii++] = 0; + } + + return buf; +} + +// **`unparse()` - Convert UUID byte array (ala parse()) into a string** +function unparse(buf, offset) { + var i = offset || 0, bth = _byteToHex; + return bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + '-' + + bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]] + + bth[buf[i++]] + bth[buf[i++]]; +} + +// **`v1()` - Generate time-based UUID** +// +// Inspired by https://github.com/LiosK/UUID.js +// and http://docs.python.org/library/uuid.html + +// random #'s we need to init node and clockseq +var _seedBytes = _rng(); + +// Per 4.5, create and 48-bit node id, (47 random bits + multicast bit = 1) +var _nodeId = [ + _seedBytes[0] | 0x01, + _seedBytes[1], _seedBytes[2], _seedBytes[3], _seedBytes[4], _seedBytes[5] +]; + +// Per 4.2.2, randomize (14 bit) clockseq +var _clockseq = (_seedBytes[6] << 8 | _seedBytes[7]) & 0x3fff; + +// Previous uuid creation time +var _lastMSecs = 0, _lastNSecs = 0; + +// See https://github.com/broofa/node-uuid for API details +function v1(options, buf, offset) { + var i = buf && offset || 0; + var b = buf || []; + + options = options || {}; + + var clockseq = options.clockseq !== undefined ? options.clockseq : _clockseq; + + // UUID timestamps are 100 nano-second units since the Gregorian epoch, + // (1582-10-15 00:00). JSNumbers aren't precise enough for this, so + // time is handled internally as 'msecs' (integer milliseconds) and 'nsecs' + // (100-nanoseconds offset from msecs) since unix epoch, 1970-01-01 00:00. + var msecs = options.msecs !== undefined ? options.msecs : new Date().getTime(); + + // Per 4.2.1.2, use count of uuid's generated during the current clock + // cycle to simulate higher resolution clock + var nsecs = options.nsecs !== undefined ? options.nsecs : _lastNSecs + 1; + + // Time since last uuid creation (in msecs) + var dt = (msecs - _lastMSecs) + (nsecs - _lastNSecs)/10000; + + // Per 4.2.1.2, Bump clockseq on clock regression + if (dt < 0 && options.clockseq === undefined) { + clockseq = clockseq + 1 & 0x3fff; + } + + // Reset nsecs if clock regresses (new clockseq) or we've moved onto a new + // time interval + if ((dt < 0 || msecs > _lastMSecs) && options.nsecs === undefined) { + nsecs = 0; + } + + // Per 4.2.1.2 Throw error if too many uuids are requested + if (nsecs >= 10000) { + throw new Error('uuid.v1(): Can\'t create more than 10M uuids/sec'); + } + + _lastMSecs = msecs; + _lastNSecs = nsecs; + _clockseq = clockseq; + + // Per 4.1.4 - Convert from unix epoch to Gregorian epoch + msecs += 12219292800000; + + // `time_low` + var tl = ((msecs & 0xfffffff) * 10000 + nsecs) % 0x100000000; + b[i++] = tl >>> 24 & 0xff; + b[i++] = tl >>> 16 & 0xff; + b[i++] = tl >>> 8 & 0xff; + b[i++] = tl & 0xff; + + // `time_mid` + var tmh = (msecs / 0x100000000 * 10000) & 0xfffffff; + b[i++] = tmh >>> 8 & 0xff; + b[i++] = tmh & 0xff; + + // `time_high_and_version` + b[i++] = tmh >>> 24 & 0xf | 0x10; // include version + b[i++] = tmh >>> 16 & 0xff; + + // `clock_seq_hi_and_reserved` (Per 4.2.2 - include variant) + b[i++] = clockseq >>> 8 | 0x80; + + // `clock_seq_low` + b[i++] = clockseq & 0xff; + + // `node` + var node = options.node || _nodeId; + for (var n = 0; n < 6; n++) { + b[i + n] = node[n]; + } + + return buf ? buf : unparse(b); +} + +// **`v4()` - Generate random UUID** + +// See https://github.com/broofa/node-uuid for API details +function v4(options, buf, offset) { + // Deprecated - 'format' argument, as supported in v1.2 + var i = buf && offset || 0; + + if (typeof(options) == 'string') { + buf = options == 'binary' ? new Array(16) : null; + options = null; + } + options = options || {}; + + var rnds = options.random || (options.rng || _rng)(); + + // Per 4.4, set bits for version and `clock_seq_hi_and_reserved` + rnds[6] = (rnds[6] & 0x0f) | 0x40; + rnds[8] = (rnds[8] & 0x3f) | 0x80; + + // Copy bytes to buffer, if provided + if (buf) { + for (var ii = 0; ii < 16; ii++) { + buf[i + ii] = rnds[ii]; + } + } + + return buf || unparse(rnds); +} + +// Export public API +var uuid = v4; +uuid.v1 = v1; +uuid.v4 = v4; +uuid.parse = parse; +uuid.unparse = unparse; + +module.exports = uuid; + +},{"./rng":22}],24:[function(require,module,exports){ +/* +WildEmitter.js is a slim little event emitter by @henrikjoreteg largely based +on @visionmedia's Emitter from UI Kit. + +Why? I wanted it standalone. + +I also wanted support for wildcard emitters like this: + +emitter.on('*', function (eventName, other, event, payloads) { + +}); + +emitter.on('somenamespace*', function (eventName, payloads) { + +}); + +Please note that callbacks triggered by wildcard registered events also get +the event name as the first argument. +*/ + +module.exports = WildEmitter; + +function WildEmitter() { } + +WildEmitter.mixin = function (constructor) { + var prototype = constructor.prototype || constructor; + + prototype.isWildEmitter= true; + + // Listen on the given `event` with `fn`. Store a group name if present. + prototype.on = function (event, groupName, fn) { + this.callbacks = this.callbacks || {}; + var hasGroup = (arguments.length === 3), + group = hasGroup ? arguments[1] : undefined, + func = hasGroup ? arguments[2] : arguments[1]; + func._groupName = group; + (this.callbacks[event] = this.callbacks[event] || []).push(func); + return this; + }; + + // Adds an `event` listener that will be invoked a single + // time then automatically removed. + prototype.once = function (event, groupName, fn) { + var self = this, + hasGroup = (arguments.length === 3), + group = hasGroup ? arguments[1] : undefined, + func = hasGroup ? arguments[2] : arguments[1]; + function on() { + self.off(event, on); + func.apply(this, arguments); + } + this.on(event, group, on); + return this; + }; + + // Unbinds an entire group + prototype.releaseGroup = function (groupName) { + this.callbacks = this.callbacks || {}; + var item, i, len, handlers; + for (item in this.callbacks) { + handlers = this.callbacks[item]; + for (i = 0, len = handlers.length; i < len; i++) { + if (handlers[i]._groupName === groupName) { + //console.log('removing'); + // remove it and shorten the array we're looping through + handlers.splice(i, 1); + i--; + len--; + } + } + } + return this; + }; + + // Remove the given callback for `event` or all + // registered callbacks. + prototype.off = function (event, fn) { + this.callbacks = this.callbacks || {}; + var callbacks = this.callbacks[event], + i; + + if (!callbacks) return this; + + // remove all handlers + if (arguments.length === 1) { + delete this.callbacks[event]; + return this; + } + + // remove specific handler + i = callbacks.indexOf(fn); + callbacks.splice(i, 1); + if (callbacks.length === 0) { + delete this.callbacks[event]; + } + return this; + }; + + /// Emit `event` with the given args. + // also calls any `*` handlers + prototype.emit = function (event) { + this.callbacks = this.callbacks || {}; + var args = [].slice.call(arguments, 1), + callbacks = this.callbacks[event], + specialCallbacks = this.getWildcardCallbacks(event), + i, + len, + item, + listeners; + + if (callbacks) { + listeners = callbacks.slice(); + for (i = 0, len = listeners.length; i < len; ++i) { + if (!listeners[i]) { + break; + } + listeners[i].apply(this, args); + } + } + + if (specialCallbacks) { + len = specialCallbacks.length; + listeners = specialCallbacks.slice(); + for (i = 0, len = listeners.length; i < len; ++i) { + if (!listeners[i]) { + break; + } + listeners[i].apply(this, [event].concat(args)); + } + } + + return this; + }; + + // Helper for for finding special wildcard event handlers that match the event + prototype.getWildcardCallbacks = function (eventName) { + this.callbacks = this.callbacks || {}; + var item, + split, + result = []; + + for (item in this.callbacks) { + split = item.split('*'); + if (item === '*' || (split.length === 2 && eventName.slice(0, split[0].length) === split[0])) { + result = result.concat(this.callbacks[item]); + } + } + return result; + }; + +}; + +WildEmitter.mixin(WildEmitter); + +},{}]},{},[2])(2) +}); \ No newline at end of file diff --git a/bigbluebutton-html5/client/compatibility/reconnecting-websocket.min.js b/bigbluebutton-html5/client/compatibility/reconnecting-websocket.min.js new file mode 100644 index 0000000000000000000000000000000000000000..3015099ac17bb3ec057e545e21a4db524265d74f --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/reconnecting-websocket.min.js @@ -0,0 +1 @@ +!function(a,b){"function"==typeof define&&define.amd?define([],b):"undefined"!=typeof module&&module.exports?module.exports=b():a.ReconnectingWebSocket=b()}(this,function(){function a(b,c,d){function l(a,b){var c=document.createEvent("CustomEvent");return c.initCustomEvent(a,!1,!1,b),c}var e={debug:!1,automaticOpen:!0,reconnectInterval:1e3,maxReconnectInterval:3e4,reconnectDecay:1.5,timeoutInterval:2e3};d||(d={});for(var f in e)this[f]="undefined"!=typeof d[f]?d[f]:e[f];this.url=b,this.reconnectAttempts=0,this.readyState=WebSocket.CONNECTING,this.protocol=null;var h,g=this,i=!1,j=!1,k=document.createElement("div");k.addEventListener("open",function(a){g.onopen(a)}),k.addEventListener("close",function(a){g.onclose(a)}),k.addEventListener("connecting",function(a){g.onconnecting(a)}),k.addEventListener("message",function(a){g.onmessage(a)}),k.addEventListener("error",function(a){g.onerror(a)}),this.addEventListener=k.addEventListener.bind(k),this.removeEventListener=k.removeEventListener.bind(k),this.dispatchEvent=k.dispatchEvent.bind(k),this.open=function(b){h=new WebSocket(g.url,c||[]),b||k.dispatchEvent(l("connecting")),(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","attempt-connect",g.url);var d=h,e=setTimeout(function(){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","connection-timeout",g.url),j=!0,d.close(),j=!1},g.timeoutInterval);h.onopen=function(){clearTimeout(e),(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onopen",g.url),g.protocol=h.protocol,g.readyState=WebSocket.OPEN,g.reconnectAttempts=0;var d=l("open");d.isReconnect=b,b=!1,k.dispatchEvent(d)},h.onclose=function(c){if(clearTimeout(e),h=null,i)g.readyState=WebSocket.CLOSED,k.dispatchEvent(l("close"));else{g.readyState=WebSocket.CONNECTING;var d=l("connecting");d.code=c.code,d.reason=c.reason,d.wasClean=c.wasClean,k.dispatchEvent(d),b||j||((g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onclose",g.url),k.dispatchEvent(l("close")));var e=g.reconnectInterval*Math.pow(g.reconnectDecay,g.reconnectAttempts);setTimeout(function(){g.reconnectAttempts++,g.open(!0)},e>g.maxReconnectInterval?g.maxReconnectInterval:e)}},h.onmessage=function(b){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onmessage",g.url,b.data);var c=l("message");c.data=b.data,k.dispatchEvent(c)},h.onerror=function(b){(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","onerror",g.url,b),k.dispatchEvent(l("error"))}},1==this.automaticOpen&&this.open(!1),this.send=function(b){if(h)return(g.debug||a.debugAll)&&console.debug("ReconnectingWebSocket","send",g.url,b),h.send(b);throw"INVALID_STATE_ERR : Pausing to reconnect websocket"},this.close=function(a,b){"undefined"==typeof a&&(a=1e3),i=!0,h&&h.close(a,b)},this.refresh=function(){h&&h.close()}}return a.prototype.onopen=function(){},a.prototype.onclose=function(){},a.prototype.onconnecting=function(){},a.prototype.onmessage=function(){},a.prototype.onerror=function(){},a.debugAll=!1,a.CONNECTING=WebSocket.CONNECTING,a.OPEN=WebSocket.OPEN,a.CLOSING=WebSocket.CLOSING,a.CLOSED=WebSocket.CLOSED,a}); diff --git a/bigbluebutton-html5/client/compatibility/sip.js b/bigbluebutton-html5/client/compatibility/sip.js new file mode 100644 index 0000000000000000000000000000000000000000..e57c90c2bc1294e6a21680358c176674396d143e --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/sip.js @@ -0,0 +1,11860 @@ +/* + * SIP version 0.7.8 + * Copyright (c) 2014-2017 Junction Networks, Inc <http://www.onsip.com> + * Homepage: http://sipjs.com + * License: http://sipjs.com/license/ + * + * + * ~~~SIP.js contains substantial portions of JsSIP under the following license~~~ + * Homepage: http://jssip.net + * Copyright (c) 2012-2013 José Luis Millán - Versatica <http://www.versatica.com> + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the + * "Software"), to deal in the Software without restriction, including + * without limitation the rights to use, copy, modify, merge, publish, + * distribute, sublicense, and/or sell copies of the Software, and to + * permit persons to whom the Software is furnished to do so, subject to + * the following conditions: + * + * The above copyright notice and this permission notice shall be + * included in all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * + * ~~~ end JsSIP license ~~~ + */ + + +(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.SIP = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){ +// Copyright Joyent, Inc. and other Node contributors. +// +// Permission is hereby granted, free of charge, to any person obtaining a +// copy of this software and associated documentation files (the +// "Software"), to deal in the Software without restriction, including +// without limitation the rights to use, copy, modify, merge, publish, +// distribute, sublicense, and/or sell copies of the Software, and to permit +// persons to whom the Software is furnished to do so, subject to the +// following conditions: +// +// The above copyright notice and this permission notice shall be included +// in all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN +// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, +// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE +// USE OR OTHER DEALINGS IN THE SOFTWARE. + +function EventEmitter() { + this._events = this._events || {}; + this._maxListeners = this._maxListeners || undefined; +} +module.exports = EventEmitter; + +// Backwards-compat with node 0.10.x +EventEmitter.EventEmitter = EventEmitter; + +EventEmitter.prototype._events = undefined; +EventEmitter.prototype._maxListeners = undefined; + +// By default EventEmitters will print a warning if more than 10 listeners are +// added to it. This is a useful default which helps finding memory leaks. +EventEmitter.defaultMaxListeners = 10; + +// Obviously not all Emitters should be limited to 10. This function allows +// that to be increased. Set to zero for unlimited. +EventEmitter.prototype.setMaxListeners = function(n) { + if (!isNumber(n) || n < 0 || isNaN(n)) + throw TypeError('n must be a positive number'); + this._maxListeners = n; + return this; +}; + +EventEmitter.prototype.emit = function(type) { + var er, handler, len, args, i, listeners; + + if (!this._events) + this._events = {}; + + // If there is no 'error' event listener then throw. + if (type === 'error') { + if (!this._events.error || + (isObject(this._events.error) && !this._events.error.length)) { + er = arguments[1]; + if (er instanceof Error) { + throw er; // Unhandled 'error' event + } + throw TypeError('Uncaught, unspecified "error" event.'); + } + } + + handler = this._events[type]; + + if (isUndefined(handler)) + return false; + + if (isFunction(handler)) { + switch (arguments.length) { + // fast cases + case 1: + handler.call(this); + break; + case 2: + handler.call(this, arguments[1]); + break; + case 3: + handler.call(this, arguments[1], arguments[2]); + break; + // slower + default: + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + handler.apply(this, args); + } + } else if (isObject(handler)) { + len = arguments.length; + args = new Array(len - 1); + for (i = 1; i < len; i++) + args[i - 1] = arguments[i]; + + listeners = handler.slice(); + len = listeners.length; + for (i = 0; i < len; i++) + listeners[i].apply(this, args); + } + + return true; +}; + +EventEmitter.prototype.addListener = function(type, listener) { + var m; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events) + this._events = {}; + + // To avoid recursion in the case that type === "newListener"! Before + // adding it to the listeners, first emit "newListener". + if (this._events.newListener) + this.emit('newListener', type, + isFunction(listener.listener) ? + listener.listener : listener); + + if (!this._events[type]) + // Optimize the case of one listener. Don't need the extra array object. + this._events[type] = listener; + else if (isObject(this._events[type])) + // If we've already got an array, just append. + this._events[type].push(listener); + else + // Adding the second element, need to change to array. + this._events[type] = [this._events[type], listener]; + + // Check for listener leak + if (isObject(this._events[type]) && !this._events[type].warned) { + var m; + if (!isUndefined(this._maxListeners)) { + m = this._maxListeners; + } else { + m = EventEmitter.defaultMaxListeners; + } + + if (m && m > 0 && this._events[type].length > m) { + this._events[type].warned = true; + console.error('(node) warning: possible EventEmitter memory ' + + 'leak detected. %d listeners added. ' + + 'Use emitter.setMaxListeners() to increase limit.', + this._events[type].length); + if (typeof console.trace === 'function') { + // not supported in IE 10 + console.trace(); + } + } + } + + return this; +}; + +EventEmitter.prototype.on = EventEmitter.prototype.addListener; + +EventEmitter.prototype.once = function(type, listener) { + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + var fired = false; + + function g() { + this.removeListener(type, g); + + if (!fired) { + fired = true; + listener.apply(this, arguments); + } + } + + g.listener = listener; + this.on(type, g); + + return this; +}; + +// emits a 'removeListener' event iff the listener was removed +EventEmitter.prototype.removeListener = function(type, listener) { + var list, position, length, i; + + if (!isFunction(listener)) + throw TypeError('listener must be a function'); + + if (!this._events || !this._events[type]) + return this; + + list = this._events[type]; + length = list.length; + position = -1; + + if (list === listener || + (isFunction(list.listener) && list.listener === listener)) { + delete this._events[type]; + if (this._events.removeListener) + this.emit('removeListener', type, listener); + + } else if (isObject(list)) { + for (i = length; i-- > 0;) { + if (list[i] === listener || + (list[i].listener && list[i].listener === listener)) { + position = i; + break; + } + } + + if (position < 0) + return this; + + if (list.length === 1) { + list.length = 0; + delete this._events[type]; + } else { + list.splice(position, 1); + } + + if (this._events.removeListener) + this.emit('removeListener', type, listener); + } + + return this; +}; + +EventEmitter.prototype.removeAllListeners = function(type) { + var key, listeners; + + if (!this._events) + return this; + + // not listening for removeListener, no need to emit + if (!this._events.removeListener) { + if (arguments.length === 0) + this._events = {}; + else if (this._events[type]) + delete this._events[type]; + return this; + } + + // emit removeListener for all listeners on all events + if (arguments.length === 0) { + for (key in this._events) { + if (key === 'removeListener') continue; + this.removeAllListeners(key); + } + this.removeAllListeners('removeListener'); + this._events = {}; + return this; + } + + listeners = this._events[type]; + + if (isFunction(listeners)) { + this.removeListener(type, listeners); + } else { + // LIFO order + while (listeners.length) + this.removeListener(type, listeners[listeners.length - 1]); + } + delete this._events[type]; + + return this; +}; + +EventEmitter.prototype.listeners = function(type) { + var ret; + if (!this._events || !this._events[type]) + ret = []; + else if (isFunction(this._events[type])) + ret = [this._events[type]]; + else + ret = this._events[type].slice(); + return ret; +}; + +EventEmitter.listenerCount = function(emitter, type) { + var ret; + if (!emitter._events || !emitter._events[type]) + ret = 0; + else if (isFunction(emitter._events[type])) + ret = 1; + else + ret = emitter._events[type].length; + return ret; +}; + +function isFunction(arg) { + return typeof arg === 'function'; +} + +function isNumber(arg) { + return typeof arg === 'number'; +} + +function isObject(arg) { + return typeof arg === 'object' && arg !== null; +} + +function isUndefined(arg) { + return arg === void 0; +} + +},{}],2:[function(require,module,exports){ +module.exports={ + "name": "sip.js", + "title": "SIP.js", + "description": "A simple, intuitive, and powerful JavaScript signaling library", + "version": "0.7.8", + "main": "src/index.js", + "browser": { + "./src/environment.js": "./src/environment_browser.js" + }, + "homepage": "http://sipjs.com", + "author": "OnSIP <developer@onsip.com> (http://sipjs.com/authors/)", + "contributors": [ + { + "url": "https://github.com/onsip/SIP.js/blob/master/THANKS.md" + } + ], + "repository": { + "type": "git", + "url": "https://github.com/onsip/SIP.js.git" + }, + "keywords": [ + "sip", + "websocket", + "webrtc", + "library", + "javascript" + ], + "devDependencies": { + "beefy": "^2.1.5", + "browserify": "^4.1.8", + "grunt": "~0.4.0", + "grunt-browserify": "^4.0.1", + "grunt-cli": "~0.1.6", + "grunt-contrib-copy": "^0.5.0", + "grunt-contrib-jasmine": "^1.0.3", + "grunt-contrib-jshint": ">0.5.0", + "grunt-contrib-uglify": "~0.2.0", + "grunt-peg": "~1.3.1", + "grunt-trimtrailingspaces": "^0.4.0", + "pegjs": "^0.8.0" + }, + "engines": { + "node": ">=0.12" + }, + "license": "MIT", + "scripts": { + "repl": "beefy test/repl.js --open", + "build": "grunt build", + "prepublish": "cd src/Grammar && mkdir -p dist && pegjs --extra-options-file peg.json src/Grammar.pegjs dist/Grammar.js", + "test": "grunt travis --verbose" + }, + "dependencies": { + "ws": "^1.0.1" + }, + "optionalDependencies": { + "promiscuous": "^0.6.0" + } +} + +},{}],3:[function(require,module,exports){ +"use strict"; +module.exports = function (SIP) { +var ClientContext; + +ClientContext = function (ua, method, target, options) { + var originalTarget = target; + + // Validate arguments + if (target === undefined) { + throw new TypeError('Not enough arguments'); + } + + this.ua = ua; + this.logger = ua.getLogger('sip.clientcontext'); + this.method = method; + target = ua.normalizeTarget(target); + if (!target) { + throw new TypeError('Invalid target: ' + originalTarget); + } + + /* Options + * - extraHeaders + * - params + * - contentType + * - body + */ + options = Object.create(options || Object.prototype); + options.extraHeaders = (options.extraHeaders || []).slice(); + + // Build the request + this.request = new SIP.OutgoingRequest(this.method, + target, + this.ua, + options.params, + options.extraHeaders); + if (options.body) { + this.body = {}; + this.body.body = options.body; + if (options.contentType) { + this.body.contentType = options.contentType; + } + this.request.body = this.body; + } + + /* Set other properties from the request */ + this.localIdentity = this.request.from; + this.remoteIdentity = this.request.to; + + this.data = {}; +}; +ClientContext.prototype = Object.create(SIP.EventEmitter.prototype); + +ClientContext.prototype.send = function () { + (new SIP.RequestSender(this, this.ua)).send(); + return this; +}; + +ClientContext.prototype.cancel = function (options) { + options = options || {}; + + options.extraHeaders = (options.extraHeaders || []).slice(); + + var cancel_reason = SIP.Utils.getCancelReason(options.status_code, options.reason_phrase); + this.request.cancel(cancel_reason, options.extraHeaders); + + this.emit('cancel'); +}; + +ClientContext.prototype.receiveResponse = function (response) { + var cause = SIP.Utils.getReasonPhrase(response.status_code); + + switch(true) { + case /^1[0-9]{2}$/.test(response.status_code): + this.emit('progress', response, cause); + break; + + case /^2[0-9]{2}$/.test(response.status_code): + if(this.ua.applicants[this]) { + delete this.ua.applicants[this]; + } + this.emit('accepted', response, cause); + break; + + default: + if(this.ua.applicants[this]) { + delete this.ua.applicants[this]; + } + this.emit('rejected', response, cause); + this.emit('failed', response, cause); + break; + } + +}; + +ClientContext.prototype.onRequestTimeout = function () { + this.emit('failed', null, SIP.C.causes.REQUEST_TIMEOUT); +}; + +ClientContext.prototype.onTransportError = function () { + this.emit('failed', null, SIP.C.causes.CONNECTION_ERROR); +}; + +SIP.ClientContext = ClientContext; +}; + +},{}],4:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP Constants + */ + +/** + * SIP Constants. + * @augments SIP + */ + +module.exports = function (name, version) { +return { + USER_AGENT: name +'/'+ version, + + // SIP scheme + SIP: 'sip', + SIPS: 'sips', + + // End and Failure causes + causes: { + // Generic error causes + CONNECTION_ERROR: 'Connection Error', + REQUEST_TIMEOUT: 'Request Timeout', + SIP_FAILURE_CODE: 'SIP Failure Code', + INTERNAL_ERROR: 'Internal Error', + + // SIP error causes + BUSY: 'Busy', + REJECTED: 'Rejected', + REDIRECTED: 'Redirected', + UNAVAILABLE: 'Unavailable', + NOT_FOUND: 'Not Found', + ADDRESS_INCOMPLETE: 'Address Incomplete', + INCOMPATIBLE_SDP: 'Incompatible SDP', + AUTHENTICATION_ERROR: 'Authentication Error', + DIALOG_ERROR: 'Dialog Error', + + // Session error causes + WEBRTC_NOT_SUPPORTED: 'WebRTC Not Supported', + WEBRTC_ERROR: 'WebRTC Error', + CANCELED: 'Canceled', + NO_ANSWER: 'No Answer', + EXPIRES: 'Expires', + NO_ACK: 'No ACK', + NO_PRACK: 'No PRACK', + USER_DENIED_MEDIA_ACCESS: 'User Denied Media Access', + BAD_MEDIA_DESCRIPTION: 'Bad Media Description', + RTP_TIMEOUT: 'RTP Timeout' + }, + + supported: { + UNSUPPORTED: 'none', + SUPPORTED: 'supported', + REQUIRED: 'required' + }, + + SIP_ERROR_CAUSES: { + REDIRECTED: [300,301,302,305,380], + BUSY: [486,600], + REJECTED: [403,603], + NOT_FOUND: [404,604], + UNAVAILABLE: [480,410,408,430], + ADDRESS_INCOMPLETE: [484], + INCOMPATIBLE_SDP: [488,606], + AUTHENTICATION_ERROR:[401,407] + }, + + // SIP Methods + ACK: 'ACK', + BYE: 'BYE', + CANCEL: 'CANCEL', + INFO: 'INFO', + INVITE: 'INVITE', + MESSAGE: 'MESSAGE', + NOTIFY: 'NOTIFY', + OPTIONS: 'OPTIONS', + REGISTER: 'REGISTER', + UPDATE: 'UPDATE', + SUBSCRIBE: 'SUBSCRIBE', + REFER: 'REFER', + PRACK: 'PRACK', + + /* SIP Response Reasons + * DOC: http://www.iana.org/assignments/sip-parameters + * Copied from https://github.com/versatica/OverSIP/blob/master/lib/oversip/sip/constants.rb#L7 + */ + REASON_PHRASE: { + 100: 'Trying', + 180: 'Ringing', + 181: 'Call Is Being Forwarded', + 182: 'Queued', + 183: 'Session Progress', + 199: 'Early Dialog Terminated', // draft-ietf-sipcore-199 + 200: 'OK', + 202: 'Accepted', // RFC 3265 + 204: 'No Notification', //RFC 5839 + 300: 'Multiple Choices', + 301: 'Moved Permanently', + 302: 'Moved Temporarily', + 305: 'Use Proxy', + 380: 'Alternative Service', + 400: 'Bad Request', + 401: 'Unauthorized', + 402: 'Payment Required', + 403: 'Forbidden', + 404: 'Not Found', + 405: 'Method Not Allowed', + 406: 'Not Acceptable', + 407: 'Proxy Authentication Required', + 408: 'Request Timeout', + 410: 'Gone', + 412: 'Conditional Request Failed', // RFC 3903 + 413: 'Request Entity Too Large', + 414: 'Request-URI Too Long', + 415: 'Unsupported Media Type', + 416: 'Unsupported URI Scheme', + 417: 'Unknown Resource-Priority', // RFC 4412 + 420: 'Bad Extension', + 421: 'Extension Required', + 422: 'Session Interval Too Small', // RFC 4028 + 423: 'Interval Too Brief', + 428: 'Use Identity Header', // RFC 4474 + 429: 'Provide Referrer Identity', // RFC 3892 + 430: 'Flow Failed', // RFC 5626 + 433: 'Anonymity Disallowed', // RFC 5079 + 436: 'Bad Identity-Info', // RFC 4474 + 437: 'Unsupported Certificate', // RFC 4744 + 438: 'Invalid Identity Header', // RFC 4744 + 439: 'First Hop Lacks Outbound Support', // RFC 5626 + 440: 'Max-Breadth Exceeded', // RFC 5393 + 469: 'Bad Info Package', // draft-ietf-sipcore-info-events + 470: 'Consent Needed', // RFC 5360 + 478: 'Unresolvable Destination', // Custom code copied from Kamailio. + 480: 'Temporarily Unavailable', + 481: 'Call/Transaction Does Not Exist', + 482: 'Loop Detected', + 483: 'Too Many Hops', + 484: 'Address Incomplete', + 485: 'Ambiguous', + 486: 'Busy Here', + 487: 'Request Terminated', + 488: 'Not Acceptable Here', + 489: 'Bad Event', // RFC 3265 + 491: 'Request Pending', + 493: 'Undecipherable', + 494: 'Security Agreement Required', // RFC 3329 + 500: 'Internal Server Error', + 501: 'Not Implemented', + 502: 'Bad Gateway', + 503: 'Service Unavailable', + 504: 'Server Time-out', + 505: 'Version Not Supported', + 513: 'Message Too Large', + 580: 'Precondition Failure', // RFC 3312 + 600: 'Busy Everywhere', + 603: 'Decline', + 604: 'Does Not Exist Anywhere', + 606: 'Not Acceptable' + }, + + /* SIP Option Tags + * DOC: http://www.iana.org/assignments/sip-parameters/sip-parameters.xhtml#sip-parameters-4 + */ + OPTION_TAGS: { + '100rel': true, // RFC 3262 + 199: true, // RFC 6228 + answermode: true, // RFC 5373 + 'early-session': true, // RFC 3959 + eventlist: true, // RFC 4662 + explicitsub: true, // RFC-ietf-sipcore-refer-explicit-subscription-03 + 'from-change': true, // RFC 4916 + 'geolocation-http': true, // RFC 6442 + 'geolocation-sip': true, // RFC 6442 + gin: true, // RFC 6140 + gruu: true, // RFC 5627 + histinfo: true, // RFC 7044 + ice: true, // RFC 5768 + join: true, // RFC 3911 + 'multiple-refer': true, // RFC 5368 + norefersub: true, // RFC 4488 + nosub: true, // RFC-ietf-sipcore-refer-explicit-subscription-03 + outbound: true, // RFC 5626 + path: true, // RFC 3327 + policy: true, // RFC 6794 + precondition: true, // RFC 3312 + pref: true, // RFC 3840 + privacy: true, // RFC 3323 + 'recipient-list-invite': true, // RFC 5366 + 'recipient-list-message': true, // RFC 5365 + 'recipient-list-subscribe': true, // RFC 5367 + replaces: true, // RFC 3891 + 'resource-priority': true, // RFC 4412 + 'sdp-anat': true, // RFC 4092 + 'sec-agree': true, // RFC 3329 + tdialog: true, // RFC 4538 + timer: true, // RFC 4028 + uui: true // RFC 7433 + } +}; +}; + +},{}],5:[function(require,module,exports){ +"use strict"; + +/** + * @fileoverview In-Dialog Request Sender + */ + +/** + * @augments SIP.Dialog + * @class Class creating an In-dialog request sender. + * @param {SIP.Dialog} dialog + * @param {Object} applicant + * @param {SIP.OutgoingRequest} request + */ +/** + * @fileoverview in-Dialog Request Sender + */ + +module.exports = function (SIP) { +var RequestSender; + +RequestSender = function(dialog, applicant, request) { + + this.dialog = dialog; + this.applicant = applicant; + this.request = request; + + // RFC3261 14.1 Modifying an Existing Session. UAC Behavior. + this.reattempt = false; + this.reattemptTimer = null; +}; + +RequestSender.prototype = { + send: function() { + var self = this, + request_sender = new SIP.RequestSender(this, this.dialog.owner.ua); + + request_sender.send(); + + // RFC3261 14.2 Modifying an Existing Session -UAC BEHAVIOR- + if (this.request.method === SIP.C.INVITE && request_sender.clientTransaction.state !== SIP.Transactions.C.STATUS_TERMINATED) { + this.dialog.uac_pending_reply = true; + request_sender.clientTransaction.on('stateChanged', function stateChanged(){ + if (this.state === SIP.Transactions.C.STATUS_ACCEPTED || + this.state === SIP.Transactions.C.STATUS_COMPLETED || + this.state === SIP.Transactions.C.STATUS_TERMINATED) { + + this.removeListener('stateChanged', stateChanged); + self.dialog.uac_pending_reply = false; + + if (self.dialog.uas_pending_reply === false) { + self.dialog.owner.onReadyToReinvite(); + } + } + }); + } + }, + + onRequestTimeout: function() { + this.applicant.onRequestTimeout(); + }, + + onTransportError: function() { + this.applicant.onTransportError(); + }, + + receiveResponse: function(response) { + var self = this; + + // RFC3261 12.2.1.2 408 or 481 is received for a request within a dialog. + if (response.status_code === 408 || response.status_code === 481) { + this.applicant.onDialogError(response); + } else if (response.method === SIP.C.INVITE && response.status_code === 491) { + if (this.reattempt) { + this.applicant.receiveResponse(response); + } else { + this.request.cseq.value = this.dialog.local_seqnum += 1; + this.reattemptTimer = SIP.Timers.setTimeout( + function() { + if (self.applicant.owner.status !== SIP.Session.C.STATUS_TERMINATED) { + self.reattempt = true; + self.request_sender.send(); + } + }, + this.getReattemptTimeout() + ); + } + } else { + this.applicant.receiveResponse(response); + } + } +}; + +return RequestSender; +}; + +},{}],6:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP Dialog + */ + +/** + * @augments SIP + * @class Class creating a SIP dialog. + * @param {SIP.RTCSession} owner + * @param {SIP.IncomingRequest|SIP.IncomingResponse} message + * @param {Enum} type UAC / UAS + * @param {Enum} state SIP.Dialog.C.STATUS_EARLY / SIP.Dialog.C.STATUS_CONFIRMED + */ +module.exports = function (SIP) { + +var RequestSender = require('./Dialog/RequestSender')(SIP); + +var Dialog, + C = { + // Dialog states + STATUS_EARLY: 1, + STATUS_CONFIRMED: 2 + }; + +// RFC 3261 12.1 +Dialog = function(owner, message, type, state) { + var contact; + + this.uac_pending_reply = false; + this.uas_pending_reply = false; + + if(!message.hasHeader('contact')) { + return { + error: 'unable to create a Dialog without Contact header field' + }; + } + + if(message instanceof SIP.IncomingResponse) { + state = (message.status_code < 200) ? C.STATUS_EARLY : C.STATUS_CONFIRMED; + } else { + // Create confirmed dialog if state is not defined + state = state || C.STATUS_CONFIRMED; + } + + contact = message.parseHeader('contact'); + + // RFC 3261 12.1.1 + if(type === 'UAS') { + this.id = { + call_id: message.call_id, + local_tag: message.to_tag, + remote_tag: message.from_tag, + toString: function() { + return this.call_id + this.local_tag + this.remote_tag; + } + }; + this.state = state; + this.remote_seqnum = message.cseq; + this.local_uri = message.parseHeader('to').uri; + this.remote_uri = message.parseHeader('from').uri; + this.remote_target = contact.uri; + this.route_set = message.getHeaders('record-route'); + this.invite_seqnum = message.cseq; + this.local_seqnum = message.cseq; + } + // RFC 3261 12.1.2 + else if(type === 'UAC') { + this.id = { + call_id: message.call_id, + local_tag: message.from_tag, + remote_tag: message.to_tag, + toString: function() { + return this.call_id + this.local_tag + this.remote_tag; + } + }; + this.state = state; + this.invite_seqnum = message.cseq; + this.local_seqnum = message.cseq; + this.local_uri = message.parseHeader('from').uri; + this.pracked = []; + this.remote_uri = message.parseHeader('to').uri; + this.remote_target = contact.uri; + this.route_set = message.getHeaders('record-route').reverse(); + + //RENDERBODY + if (this.state === C.STATUS_EARLY && (!owner.hasOffer)) { + this.mediaHandler = owner.mediaHandlerFactory(owner); + } + } + + this.logger = owner.ua.getLogger('sip.dialog', this.id.toString()); + this.owner = owner; + owner.ua.dialogs[this.id.toString()] = this; + this.logger.log('new ' + type + ' dialog created with status ' + (this.state === C.STATUS_EARLY ? 'EARLY': 'CONFIRMED')); + owner.emit('dialog', this); +}; + +Dialog.prototype = { + /** + * @param {SIP.IncomingMessage} message + * @param {Enum} UAC/UAS + */ + update: function(message, type) { + this.state = C.STATUS_CONFIRMED; + + this.logger.log('dialog '+ this.id.toString() +' changed to CONFIRMED state'); + + if(type === 'UAC') { + // RFC 3261 13.2.2.4 + this.route_set = message.getHeaders('record-route').reverse(); + } + }, + + terminate: function() { + this.logger.log('dialog ' + this.id.toString() + ' deleted'); + if (this.mediaHandler && this.state !== C.STATUS_CONFIRMED) { + this.mediaHandler.peerConnection.close(); + } + delete this.owner.ua.dialogs[this.id.toString()]; + }, + + /** + * @param {String} method request method + * @param {Object} extraHeaders extra headers + * @returns {SIP.OutgoingRequest} + */ + + // RFC 3261 12.2.1.1 + createRequest: function(method, extraHeaders, body) { + var cseq, request; + extraHeaders = (extraHeaders || []).slice(); + + if(!this.local_seqnum) { this.local_seqnum = Math.floor(Math.random() * 10000); } + + cseq = (method === SIP.C.CANCEL || method === SIP.C.ACK) ? this.invite_seqnum : this.local_seqnum += 1; + + request = new SIP.OutgoingRequest( + method, + this.remote_target, + this.owner.ua, { + 'cseq': cseq, + 'call_id': this.id.call_id, + 'from_uri': this.local_uri, + 'from_tag': this.id.local_tag, + 'to_uri': this.remote_uri, + 'to_tag': this.id.remote_tag, + 'route_set': this.route_set + }, extraHeaders, body); + + request.dialog = this; + + return request; + }, + + /** + * @param {SIP.IncomingRequest} request + * @returns {Boolean} + */ + + // RFC 3261 12.2.2 + checkInDialogRequest: function(request) { + var self = this; + + if(!this.remote_seqnum) { + this.remote_seqnum = request.cseq; + } else if(request.cseq < this.remote_seqnum) { + //Do not try to reply to an ACK request. + if (request.method !== SIP.C.ACK) { + request.reply(500); + } + if (request.cseq === this.invite_seqnum) { + return true; + } + return false; + } else if(request.cseq > this.remote_seqnum) { + this.remote_seqnum = request.cseq; + } + + switch(request.method) { + // RFC3261 14.2 Modifying an Existing Session -UAS BEHAVIOR- + case SIP.C.INVITE: + if (this.uac_pending_reply === true) { + request.reply(491); + } else if (this.uas_pending_reply === true) { + var retryAfter = (Math.random() * 10 | 0) + 1; + request.reply(500, null, ['Retry-After:' + retryAfter]); + return false; + } else { + this.uas_pending_reply = true; + request.server_transaction.on('stateChanged', function stateChanged(){ + if (this.state === SIP.Transactions.C.STATUS_ACCEPTED || + this.state === SIP.Transactions.C.STATUS_COMPLETED || + this.state === SIP.Transactions.C.STATUS_TERMINATED) { + + this.removeListener('stateChanged', stateChanged); + self.uas_pending_reply = false; + + if (self.uac_pending_reply === false) { + self.owner.onReadyToReinvite(); + } + } + }); + } + + // RFC3261 12.2.2 Replace the dialog`s remote target URI if the request is accepted + if(request.hasHeader('contact')) { + request.server_transaction.on('stateChanged', function(){ + if (this.state === SIP.Transactions.C.STATUS_ACCEPTED) { + self.remote_target = request.parseHeader('contact').uri; + } + }); + } + break; + case SIP.C.NOTIFY: + // RFC6665 3.2 Replace the dialog`s remote target URI if the request is accepted + if(request.hasHeader('contact')) { + request.server_transaction.on('stateChanged', function(){ + if (this.state === SIP.Transactions.C.STATUS_COMPLETED) { + self.remote_target = request.parseHeader('contact').uri; + } + }); + } + break; + } + + return true; + }, + + sendRequest: function(applicant, method, options) { + options = options || {}; + + var extraHeaders = (options.extraHeaders || []).slice(); + + var body = null; + if (options.body) { + if (options.body.body) { + body = options.body; + } else { + body = {}; + body.body = options.body; + if (options.contentType) { + body.contentType = options.contentType; + } + } + } + + var request = this.createRequest(method, extraHeaders, body), + request_sender = new RequestSender(this, applicant, request); + + request_sender.send(); + + return request; + }, + + /** + * @param {SIP.IncomingRequest} request + */ + receiveRequest: function(request) { + //Check in-dialog request + if(!this.checkInDialogRequest(request)) { + return; + } + + this.owner.receiveRequest(request); + } +}; + +Dialog.C = C; +SIP.Dialog = Dialog; +}; + +},{"./Dialog/RequestSender":5}],7:[function(require,module,exports){ +"use strict"; + +/** + * @fileoverview SIP Digest Authentication + */ + +/** + * SIP Digest Authentication. + * @augments SIP. + * @function Digest Authentication + * @param {SIP.UA} ua + */ +module.exports = function (Utils) { +var DigestAuthentication; + +DigestAuthentication = function(ua) { + this.logger = ua.getLogger('sipjs.digestauthentication'); + this.username = ua.configuration.authorizationUser; + this.password = ua.configuration.password; + this.cnonce = null; + this.nc = 0; + this.ncHex = '00000000'; + this.response = null; +}; + + +/** +* Performs Digest authentication given a SIP request and the challenge +* received in a response to that request. +* Returns true if credentials were successfully generated, false otherwise. +* +* @param {SIP.OutgoingRequest} request +* @param {Object} challenge +*/ +DigestAuthentication.prototype.authenticate = function(request, challenge) { + // Inspect and validate the challenge. + + this.algorithm = challenge.algorithm; + this.realm = challenge.realm; + this.nonce = challenge.nonce; + this.opaque = challenge.opaque; + this.stale = challenge.stale; + + if (this.algorithm) { + if (this.algorithm !== 'MD5') { + this.logger.warn('challenge with Digest algorithm different than "MD5", authentication aborted'); + return false; + } + } else { + this.algorithm = 'MD5'; + } + + if (! this.realm) { + this.logger.warn('challenge without Digest realm, authentication aborted'); + return false; + } + + if (! this.nonce) { + this.logger.warn('challenge without Digest nonce, authentication aborted'); + return false; + } + + // 'qop' can contain a list of values (Array). Let's choose just one. + if (challenge.qop) { + if (challenge.qop.indexOf('auth') > -1) { + this.qop = 'auth'; + } else if (challenge.qop.indexOf('auth-int') > -1) { + this.qop = 'auth-int'; + } else { + // Otherwise 'qop' is present but does not contain 'auth' or 'auth-int', so abort here. + this.logger.warn('challenge without Digest qop different than "auth" or "auth-int", authentication aborted'); + return false; + } + } else { + this.qop = null; + } + + // Fill other attributes. + + this.method = request.method; + this.uri = request.ruri; + this.cnonce = Utils.createRandomToken(12); + this.nc += 1; + this.updateNcHex(); + + // nc-value = 8LHEX. Max value = 'FFFFFFFF'. + if (this.nc === 4294967296) { + this.nc = 1; + this.ncHex = '00000001'; + } + + // Calculate the Digest "response" value. + this.calculateResponse(); + + return true; +}; + + +/** +* Generate Digest 'response' value. +* @private +*/ +DigestAuthentication.prototype.calculateResponse = function() { + var ha1, ha2; + + // HA1 = MD5(A1) = MD5(username:realm:password) + ha1 = Utils.calculateMD5(this.username + ":" + this.realm + ":" + this.password); + + if (this.qop === 'auth') { + // HA2 = MD5(A2) = MD5(method:digestURI) + ha2 = Utils.calculateMD5(this.method + ":" + this.uri); + // response = MD5(HA1:nonce:nonceCount:credentialsNonce:qop:HA2) + this.response = Utils.calculateMD5(ha1 + ":" + this.nonce + ":" + this.ncHex + ":" + this.cnonce + ":auth:" + ha2); + + } else if (this.qop === 'auth-int') { + // HA2 = MD5(A2) = MD5(method:digestURI:MD5(entityBody)) + ha2 = Utils.calculateMD5(this.method + ":" + this.uri + ":" + Utils.calculateMD5(this.body ? this.body : "")); + // response = MD5(HA1:nonce:nonceCount:credentialsNonce:qop:HA2) + this.response = Utils.calculateMD5(ha1 + ":" + this.nonce + ":" + this.ncHex + ":" + this.cnonce + ":auth-int:" + ha2); + + } else if (this.qop === null) { + // HA2 = MD5(A2) = MD5(method:digestURI) + ha2 = Utils.calculateMD5(this.method + ":" + this.uri); + // response = MD5(HA1:nonce:HA2) + this.response = Utils.calculateMD5(ha1 + ":" + this.nonce + ":" + ha2); + } +}; + + +/** +* Return the Proxy-Authorization or WWW-Authorization header value. +*/ +DigestAuthentication.prototype.toString = function() { + var auth_params = []; + + if (! this.response) { + throw new Error('response field does not exist, cannot generate Authorization header'); + } + + auth_params.push('algorithm=' + this.algorithm); + auth_params.push('username="' + this.username + '"'); + auth_params.push('realm="' + this.realm + '"'); + auth_params.push('nonce="' + this.nonce + '"'); + auth_params.push('uri="' + this.uri + '"'); + auth_params.push('response="' + this.response + '"'); + if (this.opaque) { + auth_params.push('opaque="' + this.opaque + '"'); + } + if (this.qop) { + auth_params.push('qop=' + this.qop); + auth_params.push('cnonce="' + this.cnonce + '"'); + auth_params.push('nc=' + this.ncHex); + } + + return 'Digest ' + auth_params.join(', '); +}; + + +/** +* Generate the 'nc' value as required by Digest in this.ncHex by reading this.nc. +* @private +*/ +DigestAuthentication.prototype.updateNcHex = function() { + var hex = Number(this.nc).toString(16); + this.ncHex = '00000000'.substr(0, 8-hex.length) + hex; +}; + +return DigestAuthentication; +}; + +},{}],8:[function(require,module,exports){ +"use strict"; +var NodeEventEmitter = require('events').EventEmitter; + +module.exports = function (console) { + +// Don't use `new SIP.EventEmitter()` for inheriting. +// Use Object.create(SIP.EventEmitter.prototoype); +function EventEmitter () { + NodeEventEmitter.call(this); +} + +EventEmitter.prototype = Object.create(NodeEventEmitter.prototype, { + constructor: { + value: EventEmitter, + enumerable: false, + writable: true, + configurable: true + } +}); + +EventEmitter.prototype.off = function off (eventName, listener) { + var warning = ''; + warning += 'SIP.EventEmitter#off is deprecated and may be removed in future SIP.js versions.\n'; + warning += 'Please use removeListener or removeAllListeners instead.\n'; + warning += 'See here for more details:\n'; + warning += 'http://nodejs.org/api/events.html#events_emitter_removelistener_event_listener'; + console.warn(warning); + + if (arguments.length < 2) { + return this.removeAllListeners.apply(this, arguments); + } else { + return this.removeListener(eventName, listener); + } +}; + +return EventEmitter; + +}; + +},{"events":1}],9:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview Exceptions + */ + +/** + * SIP Exceptions. + * @augments SIP + */ +module.exports = { + ConfigurationError: (function(){ + var exception = function(parameter, value) { + this.code = 1; + this.name = 'CONFIGURATION_ERROR'; + this.parameter = parameter; + this.value = value; + this.message = (!this.value)? 'Missing parameter: '+ this.parameter : 'Invalid value '+ JSON.stringify(this.value) +' for parameter "'+ this.parameter +'"'; + }; + exception.prototype = new Error(); + return exception; + }()), + + InvalidStateError: (function(){ + var exception = function(status) { + this.code = 2; + this.name = 'INVALID_STATE_ERROR'; + this.status = status; + this.message = 'Invalid status: ' + status; + }; + exception.prototype = new Error(); + return exception; + }()), + + NotSupportedError: (function(){ + var exception = function(message) { + this.code = 3; + this.name = 'NOT_SUPPORTED_ERROR'; + this.message = message; + }; + exception.prototype = new Error(); + return exception; + }()), + + GetDescriptionError: (function(){ + var exception = function(message) { + this.code = 4; + this.name = 'GET_DESCRIPTION_ERROR'; + this.message = message; + }; + exception.prototype = new Error(); + return exception; + }()) +}; + +},{}],10:[function(require,module,exports){ +"use strict"; +var Grammar = require('./Grammar/dist/Grammar'); + +module.exports = function (SIP) { + +return { + parse: function parseCustom (input, startRule) { + var options = {startRule: startRule, SIP: SIP}; + try { + Grammar.parse(input, options); + } catch (e) { + options.data = -1; + } + return options.data; + } +}; + +}; + +},{"./Grammar/dist/Grammar":11}],11:[function(require,module,exports){ +module.exports = (function() { + /* + * Generated by PEG.js 0.8.0. + * + * http://pegjs.majda.cz/ + */ + + function peg$subclass(child, parent) { + function ctor() { this.constructor = child; } + ctor.prototype = parent.prototype; + child.prototype = new ctor(); + } + + function SyntaxError(message, expected, found, offset, line, column) { + this.message = message; + this.expected = expected; + this.found = found; + this.offset = offset; + this.line = line; + this.column = column; + + this.name = "SyntaxError"; + } + + peg$subclass(SyntaxError, Error); + + function parse(input) { + var options = arguments.length > 1 ? arguments[1] : {}, + + peg$FAILED = {}, + + peg$startRuleIndices = { Contact: 118, Name_Addr_Header: 155, Record_Route: 175, Request_Response: 81, SIP_URI: 45, Subscription_State: 185, Supported: 190, Require: 181, Via: 193, absoluteURI: 84, Call_ID: 117, Content_Disposition: 129, Content_Length: 134, Content_Type: 135, CSeq: 145, displayName: 121, Event: 148, From: 150, host: 52, Max_Forwards: 153, Min_SE: 212, Proxy_Authenticate: 156, quoted_string: 40, Refer_To: 177, Replaces: 178, Session_Expires: 209, stun_URI: 216, To: 191, turn_URI: 223, uuid: 226, WWW_Authenticate: 208, challenge: 157 }, + peg$startRuleIndex = 118, + + peg$consts = [ + "\r\n", + { type: "literal", value: "\r\n", description: "\"\\r\\n\"" }, + /^[0-9]/, + { type: "class", value: "[0-9]", description: "[0-9]" }, + /^[a-zA-Z]/, + { type: "class", value: "[a-zA-Z]", description: "[a-zA-Z]" }, + /^[0-9a-fA-F]/, + { type: "class", value: "[0-9a-fA-F]", description: "[0-9a-fA-F]" }, + /^[\0-\xFF]/, + { type: "class", value: "[\\0-\\xFF]", description: "[\\0-\\xFF]" }, + /^["]/, + { type: "class", value: "[\"]", description: "[\"]" }, + " ", + { type: "literal", value: " ", description: "\" \"" }, + "\t", + { type: "literal", value: "\t", description: "\"\\t\"" }, + /^[a-zA-Z0-9]/, + { type: "class", value: "[a-zA-Z0-9]", description: "[a-zA-Z0-9]" }, + ";", + { type: "literal", value: ";", description: "\";\"" }, + "/", + { type: "literal", value: "/", description: "\"/\"" }, + "?", + { type: "literal", value: "?", description: "\"?\"" }, + ":", + { type: "literal", value: ":", description: "\":\"" }, + "@", + { type: "literal", value: "@", description: "\"@\"" }, + "&", + { type: "literal", value: "&", description: "\"&\"" }, + "=", + { type: "literal", value: "=", description: "\"=\"" }, + "+", + { type: "literal", value: "+", description: "\"+\"" }, + "$", + { type: "literal", value: "$", description: "\"$\"" }, + ",", + { type: "literal", value: ",", description: "\",\"" }, + "-", + { type: "literal", value: "-", description: "\"-\"" }, + "_", + { type: "literal", value: "_", description: "\"_\"" }, + ".", + { type: "literal", value: ".", description: "\".\"" }, + "!", + { type: "literal", value: "!", description: "\"!\"" }, + "~", + { type: "literal", value: "~", description: "\"~\"" }, + "*", + { type: "literal", value: "*", description: "\"*\"" }, + "'", + { type: "literal", value: "'", description: "\"'\"" }, + "(", + { type: "literal", value: "(", description: "\"(\"" }, + ")", + { type: "literal", value: ")", description: "\")\"" }, + peg$FAILED, + "%", + { type: "literal", value: "%", description: "\"%\"" }, + null, + [], + function() {return " "; }, + function() {return ':'; }, + /^[!-~]/, + { type: "class", value: "[!-~]", description: "[!-~]" }, + /^[\x80-\uFFFF]/, + { type: "class", value: "[\\x80-\\uFFFF]", description: "[\\x80-\\uFFFF]" }, + /^[\x80-\xBF]/, + { type: "class", value: "[\\x80-\\xBF]", description: "[\\x80-\\xBF]" }, + /^[a-f]/, + { type: "class", value: "[a-f]", description: "[a-f]" }, + "`", + { type: "literal", value: "`", description: "\"`\"" }, + "<", + { type: "literal", value: "<", description: "\"<\"" }, + ">", + { type: "literal", value: ">", description: "\">\"" }, + "\\", + { type: "literal", value: "\\", description: "\"\\\\\"" }, + "[", + { type: "literal", value: "[", description: "\"[\"" }, + "]", + { type: "literal", value: "]", description: "\"]\"" }, + "{", + { type: "literal", value: "{", description: "\"{\"" }, + "}", + { type: "literal", value: "}", description: "\"}\"" }, + function() {return "*"; }, + function() {return "/"; }, + function() {return "="; }, + function() {return "("; }, + function() {return ")"; }, + function() {return ">"; }, + function() {return "<"; }, + function() {return ","; }, + function() {return ";"; }, + function() {return ":"; }, + function() {return "\""; }, + /^[!-']/, + { type: "class", value: "[!-']", description: "[!-']" }, + /^[*-[]/, + { type: "class", value: "[*-[]", description: "[*-[]" }, + /^[\]-~]/, + { type: "class", value: "[\\]-~]", description: "[\\]-~]" }, + function(contents) { + return contents; }, + /^[#-[]/, + { type: "class", value: "[#-[]", description: "[#-[]" }, + /^[\0-\t]/, + { type: "class", value: "[\\0-\\t]", description: "[\\0-\\t]" }, + /^[\x0B-\f]/, + { type: "class", value: "[\\x0B-\\f]", description: "[\\x0B-\\f]" }, + /^[\x0E-]/, + { type: "class", value: "[\\x0E-]", description: "[\\x0E-]" }, + function() { + options.data.uri = new options.SIP.URI(options.data.scheme, options.data.user, options.data.host, options.data.port); + delete options.data.scheme; + delete options.data.user; + delete options.data.host; + delete options.data.host_type; + delete options.data.port; + }, + function() { + options.data.uri = new options.SIP.URI(options.data.scheme, options.data.user, options.data.host, options.data.port, options.data.uri_params, options.data.uri_headers); + delete options.data.scheme; + delete options.data.user; + delete options.data.host; + delete options.data.host_type; + delete options.data.port; + delete options.data.uri_params; + + if (options.startRule === 'SIP_URI') { options.data = options.data.uri;} + }, + "sips", + { type: "literal", value: "sips", description: "\"sips\"" }, + "sip", + { type: "literal", value: "sip", description: "\"sip\"" }, + function(uri_scheme) { + options.data.scheme = uri_scheme; }, + function() { + options.data.user = decodeURIComponent(text().slice(0, -1));}, + function() { + options.data.password = text(); }, + function() { + options.data.host = text(); + return options.data.host; }, + function() { + options.data.host_type = 'domain'; + return text(); }, + /^[a-zA-Z0-9_\-]/, + { type: "class", value: "[a-zA-Z0-9_\\-]", description: "[a-zA-Z0-9_\\-]" }, + /^[a-zA-Z0-9\-]/, + { type: "class", value: "[a-zA-Z0-9\\-]", description: "[a-zA-Z0-9\\-]" }, + function() { + options.data.host_type = 'IPv6'; + return text(); }, + "::", + { type: "literal", value: "::", description: "\"::\"" }, + function() { + options.data.host_type = 'IPv6'; + return text(); }, + function() { + options.data.host_type = 'IPv4'; + return text(); }, + "25", + { type: "literal", value: "25", description: "\"25\"" }, + /^[0-5]/, + { type: "class", value: "[0-5]", description: "[0-5]" }, + "2", + { type: "literal", value: "2", description: "\"2\"" }, + /^[0-4]/, + { type: "class", value: "[0-4]", description: "[0-4]" }, + "1", + { type: "literal", value: "1", description: "\"1\"" }, + /^[1-9]/, + { type: "class", value: "[1-9]", description: "[1-9]" }, + function(port) { + port = parseInt(port.join('')); + options.data.port = port; + return port; }, + "transport=", + { type: "literal", value: "transport=", description: "\"transport=\"" }, + "udp", + { type: "literal", value: "udp", description: "\"udp\"" }, + "tcp", + { type: "literal", value: "tcp", description: "\"tcp\"" }, + "sctp", + { type: "literal", value: "sctp", description: "\"sctp\"" }, + "tls", + { type: "literal", value: "tls", description: "\"tls\"" }, + function(transport) { + if(!options.data.uri_params) options.data.uri_params={}; + options.data.uri_params['transport'] = transport.toLowerCase(); }, + "user=", + { type: "literal", value: "user=", description: "\"user=\"" }, + "phone", + { type: "literal", value: "phone", description: "\"phone\"" }, + "ip", + { type: "literal", value: "ip", description: "\"ip\"" }, + function(user) { + if(!options.data.uri_params) options.data.uri_params={}; + options.data.uri_params['user'] = user.toLowerCase(); }, + "method=", + { type: "literal", value: "method=", description: "\"method=\"" }, + function(method) { + if(!options.data.uri_params) options.data.uri_params={}; + options.data.uri_params['method'] = method; }, + "ttl=", + { type: "literal", value: "ttl=", description: "\"ttl=\"" }, + function(ttl) { + if(!options.data.params) options.data.params={}; + options.data.params['ttl'] = ttl; }, + "maddr=", + { type: "literal", value: "maddr=", description: "\"maddr=\"" }, + function(maddr) { + if(!options.data.uri_params) options.data.uri_params={}; + options.data.uri_params['maddr'] = maddr; }, + "lr", + { type: "literal", value: "lr", description: "\"lr\"" }, + function() { + if(!options.data.uri_params) options.data.uri_params={}; + options.data.uri_params['lr'] = undefined; }, + function(param, value) { + if(!options.data.uri_params) options.data.uri_params = {}; + if (value === null){ + value = undefined; + } + else { + value = value[1]; + } + options.data.uri_params[param.toLowerCase()] = value && value.toLowerCase();}, + function(hname, hvalue) { + hname = hname.join('').toLowerCase(); + hvalue = hvalue.join(''); + if(!options.data.uri_headers) options.data.uri_headers = {}; + if (!options.data.uri_headers[hname]) { + options.data.uri_headers[hname] = [hvalue]; + } else { + options.data.uri_headers[hname].push(hvalue); + }}, + function() { + // lots of tests fail if this isn't guarded... + if (options.startRule === 'Refer_To') { + options.data.uri = new options.SIP.URI(options.data.scheme, options.data.user, options.data.host, options.data.port, options.data.uri_params, options.data.uri_headers); + delete options.data.scheme; + delete options.data.user; + delete options.data.host; + delete options.data.host_type; + delete options.data.port; + delete options.data.uri_params; + } + }, + "//", + { type: "literal", value: "//", description: "\"//\"" }, + function() { + options.data.scheme= text(); }, + { type: "literal", value: "SIP", description: "\"SIP\"" }, + function() { + options.data.sip_version = text(); }, + "INVITE", + { type: "literal", value: "INVITE", description: "\"INVITE\"" }, + "ACK", + { type: "literal", value: "ACK", description: "\"ACK\"" }, + "VXACH", + { type: "literal", value: "VXACH", description: "\"VXACH\"" }, + "OPTIONS", + { type: "literal", value: "OPTIONS", description: "\"OPTIONS\"" }, + "BYE", + { type: "literal", value: "BYE", description: "\"BYE\"" }, + "CANCEL", + { type: "literal", value: "CANCEL", description: "\"CANCEL\"" }, + "REGISTER", + { type: "literal", value: "REGISTER", description: "\"REGISTER\"" }, + "SUBSCRIBE", + { type: "literal", value: "SUBSCRIBE", description: "\"SUBSCRIBE\"" }, + "NOTIFY", + { type: "literal", value: "NOTIFY", description: "\"NOTIFY\"" }, + "REFER", + { type: "literal", value: "REFER", description: "\"REFER\"" }, + function() { + + options.data.method = text(); + return options.data.method; }, + function(status_code) { + options.data.status_code = parseInt(status_code.join('')); }, + function() { + options.data.reason_phrase = text(); }, + function() { + options.data = text(); }, + function() { + var idx, length; + length = options.data.multi_header.length; + for (idx = 0; idx < length; idx++) { + if (options.data.multi_header[idx].parsed === null) { + options.data = null; + break; + } + } + if (options.data !== null) { + options.data = options.data.multi_header; + } else { + options.data = -1; + }}, + function() { + var header; + if(!options.data.multi_header) options.data.multi_header = []; + try { + header = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + delete options.data.uri; + delete options.data.displayName; + delete options.data.params; + } catch(e) { + header = null; + } + options.data.multi_header.push( { 'position': peg$currPos, + 'offset': offset(), + 'parsed': header + });}, + function(displayName) { + displayName = text().trim(); + if (displayName[0] === '\"') { + displayName = displayName.substring(1, displayName.length-1); + } + options.data.displayName = displayName; }, + "q", + { type: "literal", value: "q", description: "\"q\"" }, + function(q) { + if(!options.data.params) options.data.params = {}; + options.data.params['q'] = q; }, + "expires", + { type: "literal", value: "expires", description: "\"expires\"" }, + function(expires) { + if(!options.data.params) options.data.params = {}; + options.data.params['expires'] = expires; }, + function(delta_seconds) { + return parseInt(delta_seconds.join('')); }, + "0", + { type: "literal", value: "0", description: "\"0\"" }, + function() { + return parseFloat(text()); }, + function(param, value) { + if(!options.data.params) options.data.params = {}; + if (value === null){ + value = undefined; + } + else { + value = value[1]; + } + options.data.params[param.toLowerCase()] = value;}, + "render", + { type: "literal", value: "render", description: "\"render\"" }, + "session", + { type: "literal", value: "session", description: "\"session\"" }, + "icon", + { type: "literal", value: "icon", description: "\"icon\"" }, + "alert", + { type: "literal", value: "alert", description: "\"alert\"" }, + function() { + if (options.startRule === 'Content_Disposition') { + options.data.type = text().toLowerCase(); + } + }, + "handling", + { type: "literal", value: "handling", description: "\"handling\"" }, + "optional", + { type: "literal", value: "optional", description: "\"optional\"" }, + "required", + { type: "literal", value: "required", description: "\"required\"" }, + function(length) { + options.data = parseInt(length.join('')); }, + function() { + options.data = text(); }, + "text", + { type: "literal", value: "text", description: "\"text\"" }, + "image", + { type: "literal", value: "image", description: "\"image\"" }, + "audio", + { type: "literal", value: "audio", description: "\"audio\"" }, + "video", + { type: "literal", value: "video", description: "\"video\"" }, + "application", + { type: "literal", value: "application", description: "\"application\"" }, + "message", + { type: "literal", value: "message", description: "\"message\"" }, + "multipart", + { type: "literal", value: "multipart", description: "\"multipart\"" }, + "x-", + { type: "literal", value: "x-", description: "\"x-\"" }, + function(cseq_value) { + options.data.value=parseInt(cseq_value.join('')); }, + function(expires) {options.data = expires; }, + function(event_type) { + options.data.event = event_type.toLowerCase(); }, + function() { + var tag = options.data.tag; + options.data = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + if (tag) {options.data.setParam('tag',tag)} + }, + "tag", + { type: "literal", value: "tag", description: "\"tag\"" }, + function(tag) {options.data.tag = tag; }, + function(forwards) { + options.data = parseInt(forwards.join('')); }, + function(min_expires) {options.data = min_expires; }, + function() { + options.data = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + }, + "digest", + { type: "literal", value: "Digest", description: "\"Digest\"" }, + "realm", + { type: "literal", value: "realm", description: "\"realm\"" }, + function(realm) { options.data.realm = realm; }, + "domain", + { type: "literal", value: "domain", description: "\"domain\"" }, + "nonce", + { type: "literal", value: "nonce", description: "\"nonce\"" }, + function(nonce) { options.data.nonce=nonce; }, + "opaque", + { type: "literal", value: "opaque", description: "\"opaque\"" }, + function(opaque) { options.data.opaque=opaque; }, + "stale", + { type: "literal", value: "stale", description: "\"stale\"" }, + "true", + { type: "literal", value: "true", description: "\"true\"" }, + function() { options.data.stale=true; }, + "false", + { type: "literal", value: "false", description: "\"false\"" }, + function() { options.data.stale=false; }, + "algorithm", + { type: "literal", value: "algorithm", description: "\"algorithm\"" }, + "md5", + { type: "literal", value: "MD5", description: "\"MD5\"" }, + "md5-sess", + { type: "literal", value: "MD5-sess", description: "\"MD5-sess\"" }, + function(algorithm) { + options.data.algorithm=algorithm.toUpperCase(); }, + "qop", + { type: "literal", value: "qop", description: "\"qop\"" }, + "auth-int", + { type: "literal", value: "auth-int", description: "\"auth-int\"" }, + "auth", + { type: "literal", value: "auth", description: "\"auth\"" }, + function(qop_value) { + options.data.qop || (options.data.qop=[]); + options.data.qop.push(qop_value.toLowerCase()); }, + function(rack_value) { + options.data.value=parseInt(rack_value.join('')); }, + function() { + var idx, length; + length = options.data.multi_header.length; + for (idx = 0; idx < length; idx++) { + if (options.data.multi_header[idx].parsed === null) { + options.data = null; + break; + } + } + if (options.data !== null) { + options.data = options.data.multi_header; + } else { + options.data = -1; + }}, + function() { + var header; + if(!options.data.multi_header) options.data.multi_header = []; + try { + header = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + delete options.data.uri; + delete options.data.displayName; + delete options.data.params; + } catch(e) { + header = null; + } + options.data.multi_header.push( { 'position': peg$currPos, + 'offset': offset(), + 'parsed': header + });}, + function() { + options.data = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + }, + function() { + if (!(options.data.replaces_from_tag && options.data.replaces_to_tag)) { + options.data = -1; + } + }, + function() { + options.data = { + call_id: options.data + }; + }, + "from-tag", + { type: "literal", value: "from-tag", description: "\"from-tag\"" }, + function(from_tag) { + options.data.replaces_from_tag = from_tag; + }, + "to-tag", + { type: "literal", value: "to-tag", description: "\"to-tag\"" }, + function(to_tag) { + options.data.replaces_to_tag = to_tag; + }, + "early-only", + { type: "literal", value: "early-only", description: "\"early-only\"" }, + function() { + options.data.early_only = true; + }, + function(r) {return r;}, + function(first, rest) { return list(first, rest); }, + function(value) { + if (options.startRule === 'Require') { + options.data = value || []; + } + }, + function(rseq_value) { + options.data.value=parseInt(rseq_value.join('')); }, + "active", + { type: "literal", value: "active", description: "\"active\"" }, + "pending", + { type: "literal", value: "pending", description: "\"pending\"" }, + "terminated", + { type: "literal", value: "terminated", description: "\"terminated\"" }, + function() { + options.data.state = text(); }, + "reason", + { type: "literal", value: "reason", description: "\"reason\"" }, + function(reason) { + if (typeof reason !== 'undefined') options.data.reason = reason; }, + function(expires) { + if (typeof expires !== 'undefined') options.data.expires = expires; }, + "retry_after", + { type: "literal", value: "retry_after", description: "\"retry_after\"" }, + function(retry_after) { + if (typeof retry_after !== 'undefined') options.data.retry_after = retry_after; }, + "deactivated", + { type: "literal", value: "deactivated", description: "\"deactivated\"" }, + "probation", + { type: "literal", value: "probation", description: "\"probation\"" }, + "rejected", + { type: "literal", value: "rejected", description: "\"rejected\"" }, + "timeout", + { type: "literal", value: "timeout", description: "\"timeout\"" }, + "giveup", + { type: "literal", value: "giveup", description: "\"giveup\"" }, + "noresource", + { type: "literal", value: "noresource", description: "\"noresource\"" }, + "invariant", + { type: "literal", value: "invariant", description: "\"invariant\"" }, + function(value) { + if (options.startRule === 'Supported') { + options.data = value || []; + } + }, + function() { + var tag = options.data.tag; + options.data = new options.SIP.NameAddrHeader(options.data.uri, options.data.displayName, options.data.params); + if (tag) {options.data.setParam('tag',tag)} + }, + "ttl", + { type: "literal", value: "ttl", description: "\"ttl\"" }, + function(via_ttl_value) { + options.data.ttl = via_ttl_value; }, + "maddr", + { type: "literal", value: "maddr", description: "\"maddr\"" }, + function(via_maddr) { + options.data.maddr = via_maddr; }, + "received", + { type: "literal", value: "received", description: "\"received\"" }, + function(via_received) { + options.data.received = via_received; }, + "branch", + { type: "literal", value: "branch", description: "\"branch\"" }, + function(via_branch) { + options.data.branch = via_branch; }, + "rport", + { type: "literal", value: "rport", description: "\"rport\"" }, + function() { + if(typeof response_port !== 'undefined') + options.data.rport = response_port.join(''); }, + function(via_protocol) { + options.data.protocol = via_protocol; }, + { type: "literal", value: "UDP", description: "\"UDP\"" }, + { type: "literal", value: "TCP", description: "\"TCP\"" }, + { type: "literal", value: "TLS", description: "\"TLS\"" }, + { type: "literal", value: "SCTP", description: "\"SCTP\"" }, + function(via_transport) { + options.data.transport = via_transport; }, + function() { + options.data.host = text(); }, + function(via_sent_by_port) { + options.data.port = parseInt(via_sent_by_port.join('')); }, + function(ttl) { + return parseInt(ttl.join('')); }, + function(deltaSeconds) { + if (options.startRule === 'Session_Expires') { + options.data.deltaSeconds = deltaSeconds; + } + }, + "refresher", + { type: "literal", value: "refresher", description: "\"refresher\"" }, + "uas", + { type: "literal", value: "uas", description: "\"uas\"" }, + "uac", + { type: "literal", value: "uac", description: "\"uac\"" }, + function(endpoint) { + if (options.startRule === 'Session_Expires') { + options.data.refresher = endpoint; + } + }, + function(deltaSeconds) { + if (options.startRule === 'Min_SE') { + options.data = deltaSeconds; + } + }, + "stuns", + { type: "literal", value: "stuns", description: "\"stuns\"" }, + "stun", + { type: "literal", value: "stun", description: "\"stun\"" }, + function(scheme) { + options.data.scheme = scheme; }, + function(host) { + options.data.host = host; }, + "?transport=", + { type: "literal", value: "?transport=", description: "\"?transport=\"" }, + "turns", + { type: "literal", value: "turns", description: "\"turns\"" }, + "turn", + { type: "literal", value: "turn", description: "\"turn\"" }, + function() { + options.data.transport = transport; }, + function() { + options.data = text(); } + ], + + peg$bytecode = [ + peg$decode(". \"\"2 3!"), + peg$decode("0\"\"\"1!3#"), + peg$decode("0$\"\"1!3%"), + peg$decode("0&\"\"1!3'"), + peg$decode("7'*# \"7("), + peg$decode("0(\"\"1!3)"), + peg$decode("0*\"\"1!3+"), + peg$decode(".,\"\"2,3-"), + peg$decode("..\"\"2.3/"), + peg$decode("00\"\"1!31"), + peg$decode(".2\"\"2233*\x89 \".4\"\"2435*} \".6\"\"2637*q \".8\"\"2839*e \".:\"\"2:3;*Y \".<\"\"2<3=*M \".>\"\"2>3?*A \".@\"\"2@3A*5 \".B\"\"2B3C*) \".D\"\"2D3E"), + peg$decode("7)*# \"7,"), + peg$decode(".F\"\"2F3G*} \".H\"\"2H3I*q \".J\"\"2J3K*e \".L\"\"2L3M*Y \".N\"\"2N3O*M \".P\"\"2P3Q*A \".R\"\"2R3S*5 \".T\"\"2T3U*) \".V\"\"2V3W"), + peg$decode("!!.Y\"\"2Y3Z+7$7#+-%7#+#%'#%$## X$\"# X\"# X+! (%"), + peg$decode("!! \\7$,#&7$\"+-$7 +#%'\"%$\"# X\"# X*# \" [+@$ \\7$+&$,#&7$\"\"\" X+'%4\"6]\" %$\"# X\"# X"), + peg$decode("7.*# \" ["), + peg$decode("! \\7'*# \"7(,)&7'*# \"7(\"+A$.8\"\"2839+1%7/+'%4#6^# %$## X$\"# X\"# X"), + peg$decode("!! \\72+&$,#&72\"\"\" X+o$ \\! \\7.,#&7.\"+-$72+#%'\"%$\"# X\"# X,@&! \\7.,#&7.\"+-$72+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X+! (%"), + peg$decode("0_\"\"1!3`*# \"73"), + peg$decode("0a\"\"1!3b"), + peg$decode("0c\"\"1!3d"), + peg$decode("7!*) \"0e\"\"1!3f"), + peg$decode("! \\7)*\x95 \".F\"\"2F3G*\x89 \".J\"\"2J3K*} \".L\"\"2L3M*q \".Y\"\"2Y3Z*e \".P\"\"2P3Q*Y \".H\"\"2H3I*M \".@\"\"2@3A*A \".g\"\"2g3h*5 \".R\"\"2R3S*) \".N\"\"2N3O+\x9E$,\x9B&7)*\x95 \".F\"\"2F3G*\x89 \".J\"\"2J3K*} \".L\"\"2L3M*q \".Y\"\"2Y3Z*e \".P\"\"2P3Q*Y \".H\"\"2H3I*M \".@\"\"2@3A*A \".g\"\"2g3h*5 \".R\"\"2R3S*) \".N\"\"2N3O\"\"\" X+! (%"), + peg$decode("! \\7)*\x89 \".F\"\"2F3G*} \".L\"\"2L3M*q \".Y\"\"2Y3Z*e \".P\"\"2P3Q*Y \".H\"\"2H3I*M \".@\"\"2@3A*A \".g\"\"2g3h*5 \".R\"\"2R3S*) \".N\"\"2N3O+\x92$,\x8F&7)*\x89 \".F\"\"2F3G*} \".L\"\"2L3M*q \".Y\"\"2Y3Z*e \".P\"\"2P3Q*Y \".H\"\"2H3I*M \".@\"\"2@3A*A \".g\"\"2g3h*5 \".R\"\"2R3S*) \".N\"\"2N3O\"\"\" X+! (%"), + peg$decode(".T\"\"2T3U*\xE3 \".V\"\"2V3W*\xD7 \".i\"\"2i3j*\xCB \".k\"\"2k3l*\xBF \".:\"\"2:3;*\xB3 \".D\"\"2D3E*\xA7 \".2\"\"2233*\x9B \".8\"\"2839*\x8F \".m\"\"2m3n*\x83 \"7&*} \".4\"\"2435*q \".o\"\"2o3p*e \".q\"\"2q3r*Y \".6\"\"2637*M \".>\"\"2>3?*A \".s\"\"2s3t*5 \".u\"\"2u3v*) \"7'*# \"7("), + peg$decode("! \\7)*\u012B \".F\"\"2F3G*\u011F \".J\"\"2J3K*\u0113 \".L\"\"2L3M*\u0107 \".Y\"\"2Y3Z*\xFB \".P\"\"2P3Q*\xEF \".H\"\"2H3I*\xE3 \".@\"\"2@3A*\xD7 \".g\"\"2g3h*\xCB \".R\"\"2R3S*\xBF \".N\"\"2N3O*\xB3 \".T\"\"2T3U*\xA7 \".V\"\"2V3W*\x9B \".i\"\"2i3j*\x8F \".k\"\"2k3l*\x83 \".8\"\"2839*w \".m\"\"2m3n*k \"7&*e \".4\"\"2435*Y \".o\"\"2o3p*M \".q\"\"2q3r*A \".6\"\"2637*5 \".s\"\"2s3t*) \".u\"\"2u3v+\u0134$,\u0131&7)*\u012B \".F\"\"2F3G*\u011F \".J\"\"2J3K*\u0113 \".L\"\"2L3M*\u0107 \".Y\"\"2Y3Z*\xFB \".P\"\"2P3Q*\xEF \".H\"\"2H3I*\xE3 \".@\"\"2@3A*\xD7 \".g\"\"2g3h*\xCB \".R\"\"2R3S*\xBF \".N\"\"2N3O*\xB3 \".T\"\"2T3U*\xA7 \".V\"\"2V3W*\x9B \".i\"\"2i3j*\x8F \".k\"\"2k3l*\x83 \".8\"\"2839*w \".m\"\"2m3n*k \"7&*e \".4\"\"2435*Y \".o\"\"2o3p*M \".q\"\"2q3r*A \".6\"\"2637*5 \".s\"\"2s3t*) \".u\"\"2u3v\"\"\" X+! (%"), + peg$decode("!7/+A$.P\"\"2P3Q+1%7/+'%4#6w# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.4\"\"2435+1%7/+'%4#6x# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.>\"\"2>3?+1%7/+'%4#6y# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.T\"\"2T3U+1%7/+'%4#6z# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.V\"\"2V3W+1%7/+'%4#6{# %$## X$\"# X\"# X"), + peg$decode("!.k\"\"2k3l+1$7/+'%4\"6|\" %$\"# X\"# X"), + peg$decode("!7/+7$.i\"\"2i3j+'%4\"6}\" %$\"# X\"# X"), + peg$decode("!7/+A$.D\"\"2D3E+1%7/+'%4#6~# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.2\"\"2233+1%7/+'%4#6# %$## X$\"# X\"# X"), + peg$decode("!7/+A$.8\"\"2839+1%7/+'%4#6\x80# %$## X$\"# X\"# X"), + peg$decode("!7/+1$7&+'%4\"6\x81\" %$\"# X\"# X"), + peg$decode("!7&+1$7/+'%4\"6\x81\" %$\"# X\"# X"), + peg$decode("!7=+W$ \\7G*) \"7K*# \"7F,/&7G*) \"7K*# \"7F\"+-%7>+#%'#%$## X$\"# X\"# X"), + peg$decode("0\x82\"\"1!3\x83*A \"0\x84\"\"1!3\x85*5 \"0\x86\"\"1!3\x87*) \"73*# \"7."), + peg$decode("!!7/+U$7&+K% \\7J*# \"7K,)&7J*# \"7K\"+-%7&+#%'$%$$# X$## X$\"# X\"# X+! (%"), + peg$decode("!7/+`$7&+V%! \\7J*# \"7K,)&7J*# \"7K\"+! (%+2%7&+(%4$6\x88$!!%$$# X$## X$\"# X\"# X"), + peg$decode("7.*G \".L\"\"2L3M*; \"0\x89\"\"1!3\x8A*/ \"0\x86\"\"1!3\x87*# \"73"), + peg$decode("!.m\"\"2m3n+K$0\x8B\"\"1!3\x8C*5 \"0\x8D\"\"1!3\x8E*) \"0\x8F\"\"1!3\x90+#%'\"%$\"# X\"# X"), + peg$decode("!7N+Q$.8\"\"2839+A%7O*# \" [+1%7S+'%4$6\x91$ %$$# X$## X$\"# X\"# X"), + peg$decode("!7N+k$.8\"\"2839+[%7O*# \" [+K%7S+A%7_+7%7l*# \" [+'%4&6\x92& %$&# X$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!/\x93\"\"1$3\x94*) \"/\x95\"\"1#3\x96+' 4!6\x97!! %"), + peg$decode("!7P+b$!.8\"\"2839+-$7R+#%'\"%$\"# X\"# X*# \" [+7%.:\"\"2:3;+'%4#6\x98# %$## X$\"# X\"# X"), + peg$decode(" \\7+*) \"7-*# \"7Q+2$,/&7+*) \"7-*# \"7Q\"\"\" X"), + peg$decode(".<\"\"2<3=*q \".>\"\"2>3?*e \".@\"\"2@3A*Y \".B\"\"2B3C*M \".D\"\"2D3E*A \".2\"\"2233*5 \".6\"\"2637*) \".4\"\"2435"), + peg$decode("! \\7+*_ \"7-*Y \".<\"\"2<3=*M \".>\"\"2>3?*A \".@\"\"2@3A*5 \".B\"\"2B3C*) \".D\"\"2D3E,e&7+*_ \"7-*Y \".<\"\"2<3=*M \".>\"\"2>3?*A \".@\"\"2@3A*5 \".B\"\"2B3C*) \".D\"\"2D3E\"+& 4!6\x99! %"), + peg$decode("!7T+N$!.8\"\"2839+-$7^+#%'\"%$\"# X\"# X*# \" [+#%'\"%$\"# X\"# X"), + peg$decode("!7U*) \"7\\*# \"7X+& 4!6\x9A! %"), + peg$decode("! \\!7V+3$.J\"\"2J3K+#%'\"%$\"# X\"# X,>&!7V+3$.J\"\"2J3K+#%'\"%$\"# X\"# X\"+G$7W+=%.J\"\"2J3K*# \" [+'%4#6\x9B# %$## X$\"# X\"# X"), + peg$decode(" \\0\x9C\"\"1!3\x9D+,$,)&0\x9C\"\"1!3\x9D\"\"\" X"), + peg$decode("!0$\"\"1!3%+A$ \\0\x9E\"\"1!3\x9F,)&0\x9E\"\"1!3\x9F\"+#%'\"%$\"# X\"# X"), + peg$decode("!.o\"\"2o3p+A$7Y+7%.q\"\"2q3r+'%4#6\xA0# %$## X$\"# X\"# X"), + peg$decode("!!7Z+\xBF$.8\"\"2839+\xAF%7Z+\xA5%.8\"\"2839+\x95%7Z+\x8B%.8\"\"2839+{%7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'-%$-# X$,# X$+# X$*# X$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0838 \"!.\xA1\"\"2\xA13\xA2+\xAF$7Z+\xA5%.8\"\"2839+\x95%7Z+\x8B%.8\"\"2839+{%7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%',%$,# X$+# X$*# X$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0795 \"!.\xA1\"\"2\xA13\xA2+\x95$7Z+\x8B%.8\"\"2839+{%7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'*%$*# X$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u070C \"!.\xA1\"\"2\xA13\xA2+{$7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'(%$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u069D \"!.\xA1\"\"2\xA13\xA2+a$7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'&%$&# X$%# X$$# X$## X$\"# X\"# X*\u0648 \"!.\xA1\"\"2\xA13\xA2+G$7Z+=%.8\"\"2839+-%7[+#%'$%$$# X$## X$\"# X\"# X*\u060D \"!.\xA1\"\"2\xA13\xA2+-$7[+#%'\"%$\"# X\"# X*\u05EC \"!.\xA1\"\"2\xA13\xA2+-$7Z+#%'\"%$\"# X\"# X*\u05CB \"!7Z+\xA5$.\xA1\"\"2\xA13\xA2+\x95%7Z+\x8B%.8\"\"2839+{%7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'+%$+# X$*# X$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0538 \"!7Z+\xB6$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x8B%.\xA1\"\"2\xA13\xA2+{%7Z+q%.8\"\"2839+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%'*%$*# X$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0494 \"!7Z+\xC7$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x9C%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+q%.\xA1\"\"2\xA13\xA2+a%7Z+W%.8\"\"2839+G%7Z+=%.8\"\"2839+-%7[+#%')%$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u03DF \"!7Z+\xD8$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xAD%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x82%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+W%.\xA1\"\"2\xA13\xA2+G%7Z+=%.8\"\"2839+-%7[+#%'(%$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0319 \"!7Z+\xE9$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xBE%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x93%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+h%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+=%.\xA1\"\"2\xA13\xA2+-%7[+#%''%$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0242 \"!7Z+\u0114$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xE9%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xBE%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x93%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+h%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+=%.\xA1\"\"2\xA13\xA2+-%7Z+#%'(%$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X*\u0140 \"!7Z+\u0135$!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\u010A%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xDF%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\xB4%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+\x89%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+^%!.8\"\"2839+-$7Z+#%'\"%$\"# X\"# X*# \" [+3%.\xA1\"\"2\xA13\xA2+#%'(%$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X+& 4!6\xA3! %"), + peg$decode("!7#+S$7#*# \" [+C%7#*# \" [+3%7#*# \" [+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("!7Z+=$.8\"\"2839+-%7Z+#%'#%$## X$\"# X\"# X*# \"7\\"), + peg$decode("!7]+u$.J\"\"2J3K+e%7]+[%.J\"\"2J3K+K%7]+A%.J\"\"2J3K+1%7]+'%4'6\xA4' %$'# X$&# X$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!.\xA5\"\"2\xA53\xA6+3$0\xA7\"\"1!3\xA8+#%'\"%$\"# X\"# X*\xA0 \"!.\xA9\"\"2\xA93\xAA+=$0\xAB\"\"1!3\xAC+-%7!+#%'#%$## X$\"# X\"# X*o \"!.\xAD\"\"2\xAD3\xAE+7$7!+-%7!+#%'#%$## X$\"# X\"# X*D \"!0\xAF\"\"1!3\xB0+-$7!+#%'\"%$\"# X\"# X*# \"7!"), + peg$decode("!!7!*# \" [+c$7!*# \" [+S%7!*# \" [+C%7!*# \" [+3%7!*# \" [+#%'%%$%# X$$# X$## X$\"# X\"# X+' 4!6\xB1!! %"), + peg$decode(" \\!.2\"\"2233+-$7`+#%'\"%$\"# X\"# X,>&!.2\"\"2233+-$7`+#%'\"%$\"# X\"# X\""), + peg$decode("7a*A \"7b*; \"7c*5 \"7d*/ \"7e*) \"7f*# \"7g"), + peg$decode("!/\xB2\"\"1*3\xB3+b$/\xB4\"\"1#3\xB5*G \"/\xB6\"\"1#3\xB7*; \"/\xB8\"\"1$3\xB9*/ \"/\xBA\"\"1#3\xBB*# \"76+(%4\"6\xBC\"! %$\"# X\"# X"), + peg$decode("!/\xBD\"\"1%3\xBE+J$/\xBF\"\"1%3\xC0*/ \"/\xC1\"\"1\"3\xC2*# \"76+(%4\"6\xC3\"! %$\"# X\"# X"), + peg$decode("!/\xC4\"\"1'3\xC5+2$7\x8F+(%4\"6\xC6\"! %$\"# X\"# X"), + peg$decode("!/\xC7\"\"1$3\xC8+2$7\xEF+(%4\"6\xC9\"! %$\"# X\"# X"), + peg$decode("!/\xCA\"\"1&3\xCB+2$7T+(%4\"6\xCC\"! %$\"# X\"# X"), + peg$decode("!/\xCD\"\"1\"3\xCE+R$!.>\"\"2>3?+-$76+#%'\"%$\"# X\"# X*# \" [+'%4\"6\xCF\" %$\"# X\"# X"), + peg$decode("!7h+T$!.>\"\"2>3?+-$7i+#%'\"%$\"# X\"# X*# \" [+)%4\"6\xD0\"\"! %$\"# X\"# X"), + peg$decode("! \\7j+&$,#&7j\"\"\" X+! (%"), + peg$decode("! \\7j+&$,#&7j\"\"\" X+! (%"), + peg$decode("7k*) \"7+*# \"7-"), + peg$decode(".o\"\"2o3p*e \".q\"\"2q3r*Y \".4\"\"2435*M \".8\"\"2839*A \".<\"\"2<3=*5 \".@\"\"2@3A*) \".B\"\"2B3C"), + peg$decode("!.6\"\"2637+u$7m+k% \\!.<\"\"2<3=+-$7m+#%'\"%$\"# X\"# X,>&!.<\"\"2<3=+-$7m+#%'\"%$\"# X\"# X\"+#%'#%$## X$\"# X\"# X"), + peg$decode("!7n+C$.>\"\"2>3?+3%7o+)%4#6\xD1#\"\" %$## X$\"# X\"# X"), + peg$decode(" \\7p*) \"7+*# \"7-+2$,/&7p*) \"7+*# \"7-\"\"\" X"), + peg$decode(" \\7p*) \"7+*# \"7-,/&7p*) \"7+*# \"7-\""), + peg$decode(".o\"\"2o3p*e \".q\"\"2q3r*Y \".4\"\"2435*M \".6\"\"2637*A \".8\"\"2839*5 \".@\"\"2@3A*) \".B\"\"2B3C"), + peg$decode("7\x90*# \"7r"), + peg$decode("!7\x8F+K$7'+A%7s+7%7'+-%7\x84+#%'%%$%# X$$# X$## X$\"# X\"# X"), + peg$decode("7M*# \"7t"), + peg$decode("!7+G$.8\"\"2839+7%7u*# \"7x+'%4#6\xD2# %$## X$\"# X\"# X"), + peg$decode("!7v*# \"7w+N$!.6\"\"2637+-$7\x83+#%'\"%$\"# X\"# X*# \" [+#%'\"%$\"# X\"# X"), + peg$decode("!.\xD3\"\"2\xD33\xD4+=$7\x80+3%7w*# \" [+#%'#%$## X$\"# X\"# X"), + peg$decode("!.4\"\"2435+-$7{+#%'\"%$\"# X\"# X"), + peg$decode("!7z+5$ \\7y,#&7y\"+#%'\"%$\"# X\"# X"), + peg$decode("7**) \"7+*# \"7-"), + peg$decode("7+*\x8F \"7-*\x89 \".2\"\"2233*} \".6\"\"2637*q \".8\"\"2839*e \".:\"\"2:3;*Y \".<\"\"2<3=*M \".>\"\"2>3?*A \".@\"\"2@3A*5 \".B\"\"2B3C*) \".D\"\"2D3E"), + peg$decode("!7|+k$ \\!.4\"\"2435+-$7|+#%'\"%$\"# X\"# X,>&!.4\"\"2435+-$7|+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("! \\7~,#&7~\"+k$ \\!.2\"\"2233+-$7}+#%'\"%$\"# X\"# X,>&!.2\"\"2233+-$7}+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode(" \\7~,#&7~\""), + peg$decode("7+*w \"7-*q \".8\"\"2839*e \".:\"\"2:3;*Y \".<\"\"2<3=*M \".>\"\"2>3?*A \".@\"\"2@3A*5 \".B\"\"2B3C*) \".D\"\"2D3E"), + peg$decode("!7\"+\x8D$ \\7\"*G \"7!*A \".@\"\"2@3A*5 \".F\"\"2F3G*) \".J\"\"2J3K,M&7\"*G \"7!*A \".@\"\"2@3A*5 \".F\"\"2F3G*) \".J\"\"2J3K\"+'%4\"6\xD5\" %$\"# X\"# X"), + peg$decode("7\x81*# \"7\x82"), + peg$decode("!!7O+3$.:\"\"2:3;+#%'\"%$\"# X\"# X*# \" [+-$7S+#%'\"%$\"# X\"# X*# \" ["), + peg$decode(" \\7+*\x83 \"7-*} \".B\"\"2B3C*q \".D\"\"2D3E*e \".2\"\"2233*Y \".8\"\"2839*M \".:\"\"2:3;*A \".<\"\"2<3=*5 \".>\"\"2>3?*) \".@\"\"2@3A+\x8C$,\x89&7+*\x83 \"7-*} \".B\"\"2B3C*q \".D\"\"2D3E*e \".2\"\"2233*Y \".8\"\"2839*M \".:\"\"2:3;*A \".<\"\"2<3=*5 \".>\"\"2>3?*) \".@\"\"2@3A\"\"\" X"), + peg$decode(" \\7y,#&7y\""), + peg$decode("!/\x95\"\"1#3\xD6+y$.4\"\"2435+i% \\7!+&$,#&7!\"\"\" X+P%.J\"\"2J3K+@% \\7!+&$,#&7!\"\"\" X+'%4%6\xD7% %$%# X$$# X$## X$\"# X\"# X"), + peg$decode(".\xD8\"\"2\xD83\xD9"), + peg$decode(".\xDA\"\"2\xDA3\xDB"), + peg$decode(".\xDC\"\"2\xDC3\xDD"), + peg$decode(".\xDE\"\"2\xDE3\xDF"), + peg$decode(".\xE0\"\"2\xE03\xE1"), + peg$decode(".\xE2\"\"2\xE23\xE3"), + peg$decode(".\xE4\"\"2\xE43\xE5"), + peg$decode(".\xE6\"\"2\xE63\xE7"), + peg$decode(".\xE8\"\"2\xE83\xE9"), + peg$decode(".\xEA\"\"2\xEA3\xEB"), + peg$decode("!7\x85*S \"7\x86*M \"7\x88*G \"7\x89*A \"7\x8A*; \"7\x8B*5 \"7\x8C*/ \"7\x8D*) \"7\x8E*# \"76+& 4!6\xEC! %"), + peg$decode("!7\x84+K$7'+A%7\x91+7%7'+-%7\x93+#%'%%$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!7\x92+' 4!6\xED!! %"), + peg$decode("!7!+7$7!+-%7!+#%'#%$## X$\"# X\"# X"), + peg$decode("! \\7**A \"7+*; \"7-*5 \"73*/ \"74*) \"7'*# \"7(,G&7**A \"7+*; \"7-*5 \"73*/ \"74*) \"7'*# \"7(\"+& 4!6\xEE! %"), + peg$decode("!7\xB5+_$ \\!7A+-$7\xB5+#%'\"%$\"# X\"# X,8&!7A+-$7\xB5+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!79+R$!.:\"\"2:3;+-$79+#%'\"%$\"# X\"# X*# \" [+'%4\"6\xEF\" %$\"# X\"# X"), + peg$decode("!7:*j \"!7\x97+_$ \\!7A+-$7\x97+#%'\"%$\"# X\"# X,8&!7A+-$7\x97+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X+& 4!6\xF0! %"), + peg$decode("!7L*# \"7\x98+c$ \\!7B+-$7\x9A+#%'\"%$\"# X\"# X,8&!7B+-$7\x9A+#%'\"%$\"# X\"# X\"+'%4\"6\xF1\" %$\"# X\"# X"), + peg$decode("!7\x99*# \" [+A$7@+7%7M+-%7?+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("!!76+_$ \\!7.+-$76+#%'\"%$\"# X\"# X,8&!7.+-$76+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X*# \"7H+' 4!6\xF2!! %"), + peg$decode("7\x9B*) \"7\x9C*# \"7\x9F"), + peg$decode("!/\xF3\"\"1!3\xF4+<$7<+2%7\x9E+(%4#6\xF5#! %$## X$\"# X\"# X"), + peg$decode("!/\xF6\"\"1'3\xF7+<$7<+2%7\x9D+(%4#6\xF8#! %$## X$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\xF9!! %"), + peg$decode("!.\xFA\"\"2\xFA3\xFB+x$!.J\"\"2J3K+S$7!*# \" [+C%7!*# \" [+3%7!*# \" [+#%'$%$$# X$## X$\"# X\"# X*# \" [+'%4\"6\xFC\" %$\"# X\"# X"), + peg$decode("!76+N$!7<+-$7\xA0+#%'\"%$\"# X\"# X*# \" [+)%4\"6\xFD\"\"! %$\"# X\"# X"), + peg$decode("76*) \"7T*# \"7H"), + peg$decode("!7\xA2+_$ \\!7B+-$7\xA3+#%'\"%$\"# X\"# X,8&!7B+-$7\xA3+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!/\xFE\"\"1&3\xFF*G \"/\u0100\"\"1'3\u0101*; \"/\u0102\"\"1$3\u0103*/ \"/\u0104\"\"1%3\u0105*# \"76+& 4!6\u0106! %"), + peg$decode("7\xA4*# \"7\x9F"), + peg$decode("!/\u0107\"\"1(3\u0108+O$7<+E%/\u0109\"\"1(3\u010A*/ \"/\u010B\"\"1(3\u010C*# \"76+#%'#%$## X$\"# X\"# X"), + peg$decode("!76+_$ \\!7A+-$76+#%'\"%$\"# X\"# X,8&!7A+-$76+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\u010D!! %"), + peg$decode("!7\xA8+& 4!6\u010E! %"), + peg$decode("!7\xA9+s$7;+i%7\xAE+_% \\!7B+-$7\xAF+#%'\"%$\"# X\"# X,8&!7B+-$7\xAF+#%'\"%$\"# X\"# X\"+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("7\xAA*# \"7\xAB"), + peg$decode("/\u010F\"\"1$3\u0110*S \"/\u0111\"\"1%3\u0112*G \"/\u0113\"\"1%3\u0114*; \"/\u0115\"\"1%3\u0116*/ \"/\u0117\"\"1+3\u0118*# \"7\xAC"), + peg$decode("/\u0119\"\"1'3\u011A*/ \"/\u011B\"\"1)3\u011C*# \"7\xAC"), + peg$decode("76*# \"7\xAD"), + peg$decode("!/\u011D\"\"1\"3\u011E+-$76+#%'\"%$\"# X\"# X"), + peg$decode("7\xAC*# \"76"), + peg$decode("!76+7$7<+-%7\xB0+#%'#%$## X$\"# X\"# X"), + peg$decode("76*# \"7H"), + peg$decode("!7\xB2+7$7.+-%7\x8F+#%'#%$## X$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\u011F!! %"), + peg$decode("!7\x9D+' 4!6\u0120!! %"), + peg$decode("!7\xB5+d$ \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+(%4\"6\u0121\"!!%$\"# X\"# X"), + peg$decode("!!77+k$ \\!.J\"\"2J3K+-$77+#%'\"%$\"# X\"# X,>&!.J\"\"2J3K+-$77+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X+! (%"), + peg$decode("!7L*# \"7\x98+c$ \\!7B+-$7\xB7+#%'\"%$\"# X\"# X,8&!7B+-$7\xB7+#%'\"%$\"# X\"# X\"+'%4\"6\u0122\" %$\"# X\"# X"), + peg$decode("7\xB8*# \"7\x9F"), + peg$decode("!/\u0123\"\"1#3\u0124+<$7<+2%76+(%4#6\u0125#! %$## X$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\u0126!! %"), + peg$decode("!7\x9D+' 4!6\u0127!! %"), + peg$decode("! \\7\x99,#&7\x99\"+\x81$7@+w%7M+m%7?+c% \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+'%4%6\u0128% %$%# X$$# X$## X$\"# X\"# X"), + peg$decode("7\xBD"), + peg$decode("!/\u0129\"\"1&3\u012A+s$7.+i%7\xC0+_% \\!7A+-$7\xC0+#%'\"%$\"# X\"# X,8&!7A+-$7\xC0+#%'\"%$\"# X\"# X\"+#%'$%$$# X$## X$\"# X\"# X*# \"7\xBE"), + peg$decode("!76+s$7.+i%7\xBF+_% \\!7A+-$7\xBF+#%'\"%$\"# X\"# X,8&!7A+-$7\xBF+#%'\"%$\"# X\"# X\"+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("!76+=$7<+3%76*# \"7H+#%'#%$## X$\"# X\"# X"), + peg$decode("7\xC1*G \"7\xC3*A \"7\xC5*; \"7\xC7*5 \"7\xC8*/ \"7\xC9*) \"7\xCA*# \"7\xBF"), + peg$decode("!/\u012B\"\"1%3\u012C+7$7<+-%7\xC2+#%'#%$## X$\"# X\"# X"), + peg$decode("!7I+' 4!6\u012D!! %"), + peg$decode("!/\u012E\"\"1&3\u012F+\xA5$7<+\x9B%7D+\x91%7\xC4+\x87% \\! \\7'+&$,#&7'\"\"\" X+-$7\xC4+#%'\"%$\"# X\"# X,G&! \\7'+&$,#&7'\"\"\" X+-$7\xC4+#%'\"%$\"# X\"# X\"+-%7E+#%'&%$&# X$%# X$$# X$## X$\"# X\"# X"), + peg$decode("7t*# \"7w"), + peg$decode("!/\u0130\"\"1%3\u0131+7$7<+-%7\xC6+#%'#%$## X$\"# X\"# X"), + peg$decode("!7I+' 4!6\u0132!! %"), + peg$decode("!/\u0133\"\"1&3\u0134+<$7<+2%7I+(%4#6\u0135#! %$## X$\"# X\"# X"), + peg$decode("!/\u0136\"\"1%3\u0137+_$7<+U%!/\u0138\"\"1$3\u0139+& 4!6\u013A! %*4 \"!/\u013B\"\"1%3\u013C+& 4!6\u013D! %+#%'#%$## X$\"# X\"# X"), + peg$decode("!/\u013E\"\"1)3\u013F+T$7<+J%/\u0140\"\"1#3\u0141*/ \"/\u0142\"\"1(3\u0143*# \"76+(%4#6\u0144#! %$## X$\"# X\"# X"), + peg$decode("!/\u0145\"\"1#3\u0146+\x9E$7<+\x94%7D+\x8A%!7\xCB+k$ \\!.D\"\"2D3E+-$7\xCB+#%'\"%$\"# X\"# X,>&!.D\"\"2D3E+-$7\xCB+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X+-%7E+#%'%%$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!/\u0147\"\"1(3\u0148*/ \"/\u0149\"\"1$3\u014A*# \"76+' 4!6\u014B!! %"), + peg$decode("!76+_$ \\!7A+-$76+#%'\"%$\"# X\"# X,8&!7A+-$76+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!7\xCE+K$7.+A%7\xCE+7%7.+-%7\x8F+#%'%%$%# X$$# X$## X$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\u014C!! %"), + peg$decode("!7\xD0+c$ \\!7A+-$7\xD0+#%'\"%$\"# X\"# X,8&!7A+-$7\xD0+#%'\"%$\"# X\"# X\"+'%4\"6\u014D\" %$\"# X\"# X"), + peg$decode("!7\x98+c$ \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+'%4\"6\u014E\" %$\"# X\"# X"), + peg$decode("!7L*T \"7\x98*N \"!7@*# \" [+=$7t+3%7?*# \" [+#%'#%$## X$\"# X\"# X+c$ \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+'%4\"6\u014F\" %$\"# X\"# X"), + peg$decode("!7\xD3+c$ \\!7B+-$7\xD4+#%'\"%$\"# X\"# X,8&!7B+-$7\xD4+#%'\"%$\"# X\"# X\"+'%4\"6\u0150\" %$\"# X\"# X"), + peg$decode("!7\x95+& 4!6\u0151! %"), + peg$decode("!/\u0152\"\"1(3\u0153+<$7<+2%76+(%4#6\u0154#! %$## X$\"# X\"# X*j \"!/\u0155\"\"1&3\u0156+<$7<+2%76+(%4#6\u0157#! %$## X$\"# X\"# X*: \"!/\u0158\"\"1*3\u0159+& 4!6\u015A! %*# \"7\x9F"), + peg$decode("!!76+o$ \\!7A+2$76+(%4\"6\u015B\"! %$\"# X\"# X,=&!7A+2$76+(%4\"6\u015B\"! %$\"# X\"# X\"+)%4\"6\u015C\"\"! %$\"# X\"# X*# \" [+' 4!6\u015D!! %"), + peg$decode("!7\xD7+_$ \\!7A+-$7\xD7+#%'\"%$\"# X\"# X,8&!7A+-$7\xD7+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!7\x98+_$ \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("! \\7!+&$,#&7!\"\"\" X+' 4!6\u015E!! %"), + peg$decode("!7\xDA+_$ \\!7B+-$7\xDB+#%'\"%$\"# X\"# X,8&!7B+-$7\xDB+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!/\u015F\"\"1&3\u0160*; \"/\u0161\"\"1'3\u0162*/ \"/\u0163\"\"1*3\u0164*# \"76+& 4!6\u0165! %"), + peg$decode("!/\u0166\"\"1&3\u0167+<$7<+2%7\xDC+(%4#6\u0168#! %$## X$\"# X\"# X*\x83 \"!/\xF6\"\"1'3\xF7+<$7<+2%7\x9D+(%4#6\u0169#! %$## X$\"# X\"# X*S \"!/\u016A\"\"1+3\u016B+<$7<+2%7\x9D+(%4#6\u016C#! %$## X$\"# X\"# X*# \"7\x9F"), + peg$decode("/\u016D\"\"1+3\u016E*k \"/\u016F\"\"1)3\u0170*_ \"/\u0171\"\"1(3\u0172*S \"/\u0173\"\"1'3\u0174*G \"/\u0175\"\"1&3\u0176*; \"/\u0177\"\"1*3\u0178*/ \"/\u0179\"\"1)3\u017A*# \"76"), + peg$decode("71*# \" ["), + peg$decode("!!76+o$ \\!7A+2$76+(%4\"6\u015B\"! %$\"# X\"# X,=&!7A+2$76+(%4\"6\u015B\"! %$\"# X\"# X\"+)%4\"6\u015C\"\"! %$\"# X\"# X*# \" [+' 4!6\u017B!! %"), + peg$decode("!7L*# \"7\x98+c$ \\!7B+-$7\xE0+#%'\"%$\"# X\"# X,8&!7B+-$7\xE0+#%'\"%$\"# X\"# X\"+'%4\"6\u017C\" %$\"# X\"# X"), + peg$decode("7\xB8*# \"7\x9F"), + peg$decode("!7\xE2+_$ \\!7A+-$7\xE2+#%'\"%$\"# X\"# X,8&!7A+-$7\xE2+#%'\"%$\"# X\"# X\"+#%'\"%$\"# X\"# X"), + peg$decode("!7\xE9+s$7.+i%7\xEC+_% \\!7B+-$7\xE3+#%'\"%$\"# X\"# X,8&!7B+-$7\xE3+#%'\"%$\"# X\"# X\"+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("7\xE4*; \"7\xE5*5 \"7\xE6*/ \"7\xE7*) \"7\xE8*# \"7\x9F"), + peg$decode("!/\u017D\"\"1#3\u017E+<$7<+2%7\xEF+(%4#6\u017F#! %$## X$\"# X\"# X"), + peg$decode("!/\u0180\"\"1%3\u0181+<$7<+2%7T+(%4#6\u0182#! %$## X$\"# X\"# X"), + peg$decode("!/\u0183\"\"1(3\u0184+B$7<+8%7\\*# \"7Y+(%4#6\u0185#! %$## X$\"# X\"# X"), + peg$decode("!/\u0186\"\"1&3\u0187+<$7<+2%76+(%4#6\u0188#! %$## X$\"# X\"# X"), + peg$decode("!/\u0189\"\"1%3\u018A+T$!7<+5$ \\7!,#&7!\"+#%'\"%$\"# X\"# X*# \" [+'%4\"6\u018B\" %$\"# X\"# X"), + peg$decode("!7\xEA+K$7;+A%76+7%7;+-%7\xEB+#%'%%$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!/\x95\"\"1#3\xD6*# \"76+' 4!6\u018C!! %"), + peg$decode("!/\xB4\"\"1#3\u018D*G \"/\xB6\"\"1#3\u018E*; \"/\xBA\"\"1#3\u018F*/ \"/\xB8\"\"1$3\u0190*# \"76+' 4!6\u0191!! %"), + peg$decode("!7\xED+H$!7C+-$7\xEE+#%'\"%$\"# X\"# X*# \" [+#%'\"%$\"# X\"# X"), + peg$decode("!7U*) \"7\\*# \"7X+& 4!6\u0192! %"), + peg$decode("!!7!*# \" [+c$7!*# \" [+S%7!*# \" [+C%7!*# \" [+3%7!*# \" [+#%'%%$%# X$$# X$## X$\"# X\"# X+' 4!6\u0193!! %"), + peg$decode("!!7!+C$7!*# \" [+3%7!*# \" [+#%'#%$## X$\"# X\"# X+' 4!6\u0194!! %"), + peg$decode("7\xBD"), + peg$decode("!7\x9D+d$ \\!7B+-$7\xF2+#%'\"%$\"# X\"# X,8&!7B+-$7\xF2+#%'\"%$\"# X\"# X\"+(%4\"6\u0195\"!!%$\"# X\"# X"), + peg$decode("7\xF3*# \"7\x9F"), + peg$decode("!.\u0196\"\"2\u01963\u0197+N$7<+D%.\u0198\"\"2\u01983\u0199*) \".\u019A\"\"2\u019A3\u019B+(%4#6\u019C#! %$## X$\"# X\"# X"), + peg$decode("!7\x9D+d$ \\!7B+-$7\x9F+#%'\"%$\"# X\"# X,8&!7B+-$7\x9F+#%'\"%$\"# X\"# X\"+(%4\"6\u019D\"!!%$\"# X\"# X"), + peg$decode("!76+7$70+-%7\xF6+#%'#%$## X$\"# X\"# X"), + peg$decode(" \\72*) \"74*# \"7.,/&72*) \"74*# \"7.\""), + peg$decode(" \\7%,#&7%\""), + peg$decode("!7\xF9+=$.8\"\"2839+-%7\xFA+#%'#%$## X$\"# X\"# X"), + peg$decode("!/\u019E\"\"1%3\u019F*) \"/\u01A0\"\"1$3\u01A1+' 4!6\u01A2!! %"), + peg$decode("!7\xFB+N$!.8\"\"2839+-$7^+#%'\"%$\"# X\"# X*# \" [+#%'\"%$\"# X\"# X"), + peg$decode("!7\\*) \"7X*# \"7\x82+' 4!6\u01A3!! %"), + peg$decode("! \\7\xFD*) \"7-*# \"7\xFE,/&7\xFD*) \"7-*# \"7\xFE\"+! (%"), + peg$decode("7\"*S \"7!*M \".F\"\"2F3G*A \".J\"\"2J3K*5 \".H\"\"2H3I*) \".N\"\"2N3O"), + peg$decode(".L\"\"2L3M*\x95 \".B\"\"2B3C*\x89 \".<\"\"2<3=*} \".R\"\"2R3S*q \".T\"\"2T3U*e \".V\"\"2V3W*Y \".P\"\"2P3Q*M \".@\"\"2@3A*A \".D\"\"2D3E*5 \".2\"\"2233*) \".>\"\"2>3?"), + peg$decode("!7\u0100+h$.8\"\"2839+X%7\xFA+N%!.\u01A4\"\"2\u01A43\u01A5+-$7\xEB+#%'\"%$\"# X\"# X*# \" [+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("!/\u01A6\"\"1%3\u01A7*) \"/\u01A8\"\"1$3\u01A9+' 4!6\u01A2!! %"), + peg$decode("!7\xEB+Q$/\xB4\"\"1#3\xB5*7 \"/\xB6\"\"1#3\xB7*+ \" \\7+,#&7+\"+'%4\"6\u01AA\" %$\"# X\"# X"), + peg$decode("!7\u0104+\x8F$.F\"\"2F3G+%7\u0103+u%.F\"\"2F3G+e%7\u0103+[%.F\"\"2F3G+K%7\u0103+A%.F\"\"2F3G+1%7\u0105+'%4)6\u01AB) %$)# X$(# X$'# X$&# X$%# X$$# X$## X$\"# X\"# X"), + peg$decode("!7#+A$7#+7%7#+-%7#+#%'$%$$# X$## X$\"# X\"# X"), + peg$decode("!7\u0103+-$7\u0103+#%'\"%$\"# X\"# X"), + peg$decode("!7\u0103+7$7\u0103+-%7\u0103+#%'#%$## X$\"# X\"# X") + ], + + peg$currPos = 0, + peg$reportedPos = 0, + peg$cachedPos = 0, + peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }, + peg$maxFailPos = 0, + peg$maxFailExpected = [], + peg$silentFails = 0, + + peg$result; + + if ("startRule" in options) { + if (!(options.startRule in peg$startRuleIndices)) { + throw new Error("Can't start parsing from rule \"" + options.startRule + "\"."); + } + + peg$startRuleIndex = peg$startRuleIndices[options.startRule]; + } + + function text() { + return input.substring(peg$reportedPos, peg$currPos); + } + + function offset() { + return peg$reportedPos; + } + + function line() { + return peg$computePosDetails(peg$reportedPos).line; + } + + function column() { + return peg$computePosDetails(peg$reportedPos).column; + } + + function expected(description) { + throw peg$buildException( + null, + [{ type: "other", description: description }], + peg$reportedPos + ); + } + + function error(message) { + throw peg$buildException(message, null, peg$reportedPos); + } + + function peg$computePosDetails(pos) { + function advance(details, startPos, endPos) { + var p, ch; + + for (p = startPos; p < endPos; p++) { + ch = input.charAt(p); + if (ch === "\n") { + if (!details.seenCR) { details.line++; } + details.column = 1; + details.seenCR = false; + } else if (ch === "\r" || ch === "\u2028" || ch === "\u2029") { + details.line++; + details.column = 1; + details.seenCR = true; + } else { + details.column++; + details.seenCR = false; + } + } + } + + if (peg$cachedPos !== pos) { + if (peg$cachedPos > pos) { + peg$cachedPos = 0; + peg$cachedPosDetails = { line: 1, column: 1, seenCR: false }; + } + advance(peg$cachedPosDetails, peg$cachedPos, pos); + peg$cachedPos = pos; + } + + return peg$cachedPosDetails; + } + + function peg$fail(expected) { + if (peg$currPos < peg$maxFailPos) { return; } + + if (peg$currPos > peg$maxFailPos) { + peg$maxFailPos = peg$currPos; + peg$maxFailExpected = []; + } + + peg$maxFailExpected.push(expected); + } + + function peg$buildException(message, expected, pos) { + function cleanupExpected(expected) { + var i = 1; + + expected.sort(function(a, b) { + if (a.description < b.description) { + return -1; + } else if (a.description > b.description) { + return 1; + } else { + return 0; + } + }); + + while (i < expected.length) { + if (expected[i - 1] === expected[i]) { + expected.splice(i, 1); + } else { + i++; + } + } + } + + function buildMessage(expected, found) { + function stringEscape(s) { + function hex(ch) { return ch.charCodeAt(0).toString(16).toUpperCase(); } + + return s + .replace(/\\/g, '\\\\') + .replace(/"/g, '\\"') + .replace(/\x08/g, '\\b') + .replace(/\t/g, '\\t') + .replace(/\n/g, '\\n') + .replace(/\f/g, '\\f') + .replace(/\r/g, '\\r') + .replace(/[\x00-\x07\x0B\x0E\x0F]/g, function(ch) { return '\\x0' + hex(ch); }) + .replace(/[\x10-\x1F\x80-\xFF]/g, function(ch) { return '\\x' + hex(ch); }) + .replace(/[\u0180-\u0FFF]/g, function(ch) { return '\\u0' + hex(ch); }) + .replace(/[\u1080-\uFFFF]/g, function(ch) { return '\\u' + hex(ch); }); + } + + var expectedDescs = new Array(expected.length), + expectedDesc, foundDesc, i; + + for (i = 0; i < expected.length; i++) { + expectedDescs[i] = expected[i].description; + } + + expectedDesc = expected.length > 1 + ? expectedDescs.slice(0, -1).join(", ") + + " or " + + expectedDescs[expected.length - 1] + : expectedDescs[0]; + + foundDesc = found ? "\"" + stringEscape(found) + "\"" : "end of input"; + + return "Expected " + expectedDesc + " but " + foundDesc + " found."; + } + + var posDetails = peg$computePosDetails(pos), + found = pos < input.length ? input.charAt(pos) : null; + + if (expected !== null) { + cleanupExpected(expected); + } + + return new SyntaxError( + message !== null ? message : buildMessage(expected, found), + expected, + found, + pos, + posDetails.line, + posDetails.column + ); + } + + function peg$decode(s) { + var bc = new Array(s.length), i; + + for (i = 0; i < s.length; i++) { + bc[i] = s.charCodeAt(i) - 32; + } + + return bc; + } + + function peg$parseRule(index) { + var bc = peg$bytecode[index], + ip = 0, + ips = [], + end = bc.length, + ends = [], + stack = [], + params, i; + + function protect(object) { + return Object.prototype.toString.apply(object) === "[object Array]" ? [] : object; + } + + while (true) { + while (ip < end) { + switch (bc[ip]) { + case 0: + stack.push(protect(peg$consts[bc[ip + 1]])); + ip += 2; + break; + + case 1: + stack.push(peg$currPos); + ip++; + break; + + case 2: + stack.pop(); + ip++; + break; + + case 3: + peg$currPos = stack.pop(); + ip++; + break; + + case 4: + stack.length -= bc[ip + 1]; + ip += 2; + break; + + case 5: + stack.splice(-2, 1); + ip++; + break; + + case 6: + stack[stack.length - 2].push(stack.pop()); + ip++; + break; + + case 7: + stack.push(stack.splice(stack.length - bc[ip + 1], bc[ip + 1])); + ip += 2; + break; + + case 8: + stack.pop(); + stack.push(input.substring(stack[stack.length - 1], peg$currPos)); + ip++; + break; + + case 9: + ends.push(end); + ips.push(ip + 3 + bc[ip + 1] + bc[ip + 2]); + + if (stack[stack.length - 1]) { + end = ip + 3 + bc[ip + 1]; + ip += 3; + } else { + end = ip + 3 + bc[ip + 1] + bc[ip + 2]; + ip += 3 + bc[ip + 1]; + } + + break; + + case 10: + ends.push(end); + ips.push(ip + 3 + bc[ip + 1] + bc[ip + 2]); + + if (stack[stack.length - 1] === peg$FAILED) { + end = ip + 3 + bc[ip + 1]; + ip += 3; + } else { + end = ip + 3 + bc[ip + 1] + bc[ip + 2]; + ip += 3 + bc[ip + 1]; + } + + break; + + case 11: + ends.push(end); + ips.push(ip + 3 + bc[ip + 1] + bc[ip + 2]); + + if (stack[stack.length - 1] !== peg$FAILED) { + end = ip + 3 + bc[ip + 1]; + ip += 3; + } else { + end = ip + 3 + bc[ip + 1] + bc[ip + 2]; + ip += 3 + bc[ip + 1]; + } + + break; + + case 12: + if (stack[stack.length - 1] !== peg$FAILED) { + ends.push(end); + ips.push(ip); + + end = ip + 2 + bc[ip + 1]; + ip += 2; + } else { + ip += 2 + bc[ip + 1]; + } + + break; + + case 13: + ends.push(end); + ips.push(ip + 3 + bc[ip + 1] + bc[ip + 2]); + + if (input.length > peg$currPos) { + end = ip + 3 + bc[ip + 1]; + ip += 3; + } else { + end = ip + 3 + bc[ip + 1] + bc[ip + 2]; + ip += 3 + bc[ip + 1]; + } + + break; + + case 14: + ends.push(end); + ips.push(ip + 4 + bc[ip + 2] + bc[ip + 3]); + + if (input.substr(peg$currPos, peg$consts[bc[ip + 1]].length) === peg$consts[bc[ip + 1]]) { + end = ip + 4 + bc[ip + 2]; + ip += 4; + } else { + end = ip + 4 + bc[ip + 2] + bc[ip + 3]; + ip += 4 + bc[ip + 2]; + } + + break; + + case 15: + ends.push(end); + ips.push(ip + 4 + bc[ip + 2] + bc[ip + 3]); + + if (input.substr(peg$currPos, peg$consts[bc[ip + 1]].length).toLowerCase() === peg$consts[bc[ip + 1]]) { + end = ip + 4 + bc[ip + 2]; + ip += 4; + } else { + end = ip + 4 + bc[ip + 2] + bc[ip + 3]; + ip += 4 + bc[ip + 2]; + } + + break; + + case 16: + ends.push(end); + ips.push(ip + 4 + bc[ip + 2] + bc[ip + 3]); + + if (peg$consts[bc[ip + 1]].test(input.charAt(peg$currPos))) { + end = ip + 4 + bc[ip + 2]; + ip += 4; + } else { + end = ip + 4 + bc[ip + 2] + bc[ip + 3]; + ip += 4 + bc[ip + 2]; + } + + break; + + case 17: + stack.push(input.substr(peg$currPos, bc[ip + 1])); + peg$currPos += bc[ip + 1]; + ip += 2; + break; + + case 18: + stack.push(peg$consts[bc[ip + 1]]); + peg$currPos += peg$consts[bc[ip + 1]].length; + ip += 2; + break; + + case 19: + stack.push(peg$FAILED); + if (peg$silentFails === 0) { + peg$fail(peg$consts[bc[ip + 1]]); + } + ip += 2; + break; + + case 20: + peg$reportedPos = stack[stack.length - 1 - bc[ip + 1]]; + ip += 2; + break; + + case 21: + peg$reportedPos = peg$currPos; + ip++; + break; + + case 22: + params = bc.slice(ip + 4, ip + 4 + bc[ip + 3]); + for (i = 0; i < bc[ip + 3]; i++) { + params[i] = stack[stack.length - 1 - params[i]]; + } + + stack.splice( + stack.length - bc[ip + 2], + bc[ip + 2], + peg$consts[bc[ip + 1]].apply(null, params) + ); + + ip += 4 + bc[ip + 3]; + break; + + case 23: + stack.push(peg$parseRule(bc[ip + 1])); + ip += 2; + break; + + case 24: + peg$silentFails++; + ip++; + break; + + case 25: + peg$silentFails--; + ip++; + break; + + default: + throw new Error("Invalid opcode: " + bc[ip] + "."); + } + } + + if (ends.length > 0) { + end = ends.pop(); + ip = ips.pop(); + } else { + break; + } + } + + return stack[0]; + } + + + options.data = {}; // Object to which header attributes will be assigned during parsing + + function list (first, rest) { + return [first].concat(rest); + } + + + peg$result = peg$parseRule(peg$startRuleIndex); + + if (peg$result !== peg$FAILED && peg$currPos === input.length) { + return peg$result; + } else { + if (peg$result !== peg$FAILED && peg$currPos < input.length) { + peg$fail({ type: "end", description: "end of input" }); + } + + throw peg$buildException(null, peg$maxFailExpected, peg$maxFailPos); + } + } + + return { + SyntaxError: SyntaxError, + parse: parse + }; +})(); +},{}],12:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview Hacks - This file contains all of the things we + * wish we didn't have to do, just for interop. It is similar to + * Utils, which provides actually useful and relevant functions for + * a SIP library. Methods in this file are grouped by vendor, so + * as to most easily track when particular hacks may not be necessary anymore. + */ + +module.exports = function (SIP) { + +//keep to quiet jshint, and remain consistent with other files +SIP = SIP; + +var Hacks = { + AllBrowsers: { + maskDtls: function (sdp) { + if (sdp) { + sdp = sdp.replace(/ UDP\/TLS\/RTP\/SAVP/gmi, " RTP/SAVP"); + } + return sdp; + }, + unmaskDtls: function (sdp) { + /** + * Chrome does not handle DTLS correctly (Canaray does, but not production) + * keeping Chrome as SDES until DTLS is fixed (comment out 'is_opera' condition) + * + * UPDATE: May 21, 2014 + * Chrome 35 now properly defaults to DTLS. Only Opera remains using SDES + * + * UPDATE: 2014-09-24 + * Opera now supports DTLS by default as well. + * + **/ + return sdp.replace(/ RTP\/SAVP/gmi, " UDP/TLS/RTP/SAVP"); + } + }, + Firefox: { + /* Condition to detect if hacks are applicable */ + isFirefox: function () { + return typeof mozRTCPeerConnection !== 'undefined'; + }, + + cannotHandleExtraWhitespace: function (sdp) { + if (this.isFirefox() && sdp) { + sdp = sdp.replace(/ \r\n/g, "\r\n"); + } + return sdp; + }, + + hasMissingCLineInSDP: function (sdp) { + /* + * This is a Firefox hack to insert valid sdp when getDescription is + * called with the constraint offerToReceiveVideo = false. + * We search for either a c-line at the top of the sdp above all + * m-lines. If that does not exist then we search for a c-line + * beneath each m-line. If it is missing a c-line, we insert + * a fake c-line with the ip address 0.0.0.0. This is then valid + * sdp and no media will be sent for that m-line. + * + * Valid SDP is: + * m= + * i= + * c= + */ + var insertAt, mlines; + if (sdp.indexOf('c=') > sdp.indexOf('m=')) { + + // Find all m= lines + mlines = sdp.match(/m=.*\r\n.*/g); + for (var i=0; i<mlines.length; i++) { + + // If it has an i= line, check if the next line is the c= line + if (mlines[i].toString().search(/i=.*/) >= 0) { + insertAt = sdp.indexOf(mlines[i].toString())+mlines[i].toString().length; + if (sdp.substr(insertAt,2)!=='c=') { + sdp = sdp.substr(0,insertAt) + '\r\nc=IN IP4 0.0.0.0' + sdp.substr(insertAt); + } + + // else add the C line if it's missing + } else if (mlines[i].toString().search(/c=.*/) < 0) { + insertAt = sdp.indexOf(mlines[i].toString().match(/.*/))+mlines[i].toString().match(/.*/).toString().length; + sdp = sdp.substr(0,insertAt) + '\r\nc=IN IP4 0.0.0.0' + sdp.substr(insertAt); + } + } + } + return sdp; + }, + }, + + Chrome: { + needsExplicitlyInactiveSDP: function (sdp) { + var sub, index; + + if (Hacks.Firefox.isFirefox()) { // Fix this in Firefox before sending + index = sdp.indexOf('m=video 0'); + if (index !== -1) { + sub = sdp.substr(index); + sub = sub.replace(/\r\nc=IN IP4.*\r\n$/, + '\r\nc=IN IP4 0.0.0.0\r\na=inactive\r\n'); + return sdp.substr(0, index) + sub; + } + } + return sdp; + }, + + getsConfusedAboutGUM: function (session) { + if (session.mediaHandler) { + session.mediaHandler.close(); + } + } + } +}; +return Hacks; +}; + +},{}],13:[function(require,module,exports){ +"use strict"; +var levels = { + 'error': 0, + 'warn': 1, + 'log': 2, + 'debug': 3 +}; + +module.exports = function (console) { + +var LoggerFactory = function () { + var logger, + level = 2, + builtinEnabled = true, + connector = null; + + this.loggers = {}; + + logger = this.getLogger('sip.loggerfactory'); + + + Object.defineProperties(this, { + builtinEnabled: { + get: function(){ return builtinEnabled; }, + set: function(value){ + if (typeof value === 'boolean') { + builtinEnabled = value; + } else { + logger.error('invalid "builtinEnabled" parameter value: '+ JSON.stringify(value)); + } + } + }, + + level: { + get: function() {return level; }, + set: function(value) { + if (value >= 0 && value <=3) { + level = value; + } else if (value > 3) { + level = 3; + } else if (levels.hasOwnProperty(value)) { + level = levels[value]; + } else { + logger.error('invalid "level" parameter value: '+ JSON.stringify(value)); + } + } + }, + + connector: { + get: function() {return connector; }, + set: function(value){ + if(value === null || value === "" || value === undefined) { + connector = null; + } else if (typeof value === 'function') { + connector = value; + } else { + logger.error('invalid "connector" parameter value: '+ JSON.stringify(value)); + } + } + } + }); +}; + +LoggerFactory.prototype.print = function(target, category, label, content) { + if (typeof content === 'string') { + var prefix = [new Date(), category]; + if (label) { + prefix.push(label); + } + content = prefix.concat(content).join(' | '); + } + target.call(console, content); +}; + +function Logger (logger, category, label) { + this.logger = logger; + this.category = category; + this.label = label; +} + +Object.keys(levels).forEach(function (targetName) { + Logger.prototype[targetName] = function (content) { + this.logger[targetName](this.category, this.label, content); + }; + + LoggerFactory.prototype[targetName] = function (category, label, content) { + if (this.level >= levels[targetName]) { + if (this.builtinEnabled) { + this.print(console[targetName], category, label, content); + } + + if (this.connector) { + this.connector(targetName, category, label, content); + } + } + }; +}); + +LoggerFactory.prototype.getLogger = function(category, label) { + var logger; + + if (label && this.level === 3) { + return new Logger(this, category, label); + } else if (this.loggers[category]) { + return this.loggers[category]; + } else { + logger = new Logger(this, category); + this.loggers[category] = logger; + return logger; + } +}; + +return LoggerFactory; +}; + +},{}],14:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview MediaHandler + */ + +/* MediaHandler + * @class PeerConnection helper Class. + * @param {SIP.Session} session + * @param {Object} [options] + */ +module.exports = function (EventEmitter) { +var MediaHandler = function(session, options) { + // keep jshint happy + session = session; + options = options; +}; + +MediaHandler.prototype = Object.create(EventEmitter.prototype, { + isReady: {value: function isReady () {}}, + + close: {value: function close () {}}, + + /** + * @param {Object} [mediaHint] A custom object describing the media to be used during this session. + */ + getDescription: {value: function getDescription (mediaHint) { + // keep jshint happy + mediaHint = mediaHint; + }}, + + /** + * Check if a SIP message contains a session description. + * @param {SIP.SIPMessage} message + * @returns {boolean} + */ + hasDescription: {value: function hasDescription (message) { + // keep jshint happy + message = message; + }}, + + /** + * Set the session description contained in a SIP message. + * @param {SIP.SIPMessage} message + * @returns {Promise} + */ + setDescription: {value: function setDescription (message) { + // keep jshint happy + message = message; + }} +}); + +return MediaHandler; +}; + +},{}],15:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP NameAddrHeader + */ + +/** + * @augments SIP + * @class Class creating a Name Address SIP header. + * + * @param {SIP.URI} uri + * @param {String} [displayName] + * @param {Object} [parameters] + * + */ +module.exports = function (SIP) { +var NameAddrHeader; + +NameAddrHeader = function(uri, displayName, parameters) { + var param; + + // Checks + if(!uri || !(uri instanceof SIP.URI)) { + throw new TypeError('missing or invalid "uri" parameter'); + } + + // Initialize parameters + this.uri = uri; + this.parameters = {}; + + for (param in parameters) { + this.setParam(param, parameters[param]); + } + + Object.defineProperties(this, { + friendlyName: { + get: function() { return this.displayName || uri.aor; } + }, + + displayName: { + get: function() { return displayName; }, + set: function(value) { + displayName = (value === 0) ? '0' : value; + } + } + }); +}; +NameAddrHeader.prototype = { + setParam: function (key, value) { + if(key) { + this.parameters[key.toLowerCase()] = (typeof value === 'undefined' || value === null) ? null : value.toString(); + } + }, + getParam: SIP.URI.prototype.getParam, + hasParam: SIP.URI.prototype.hasParam, + deleteParam: SIP.URI.prototype.deleteParam, + clearParams: SIP.URI.prototype.clearParams, + + clone: function() { + return new NameAddrHeader( + this.uri.clone(), + this.displayName, + JSON.parse(JSON.stringify(this.parameters))); + }, + + toString: function() { + var body, parameter; + + body = (this.displayName || this.displayName === 0) ? '"' + this.displayName + '" ' : ''; + body += '<' + this.uri.toString() + '>'; + + for (parameter in this.parameters) { + body += ';' + parameter; + + if (this.parameters[parameter] !== null) { + body += '='+ this.parameters[parameter]; + } + } + + return body; + } +}; + + +/** + * Parse the given string and returns a SIP.NameAddrHeader instance or undefined if + * it is an invalid NameAddrHeader. + * @public + * @param {String} name_addr_header + */ +NameAddrHeader.parse = function(name_addr_header) { + name_addr_header = SIP.Grammar.parse(name_addr_header,'Name_Addr_Header'); + + if (name_addr_header !== -1) { + return name_addr_header; + } else { + return undefined; + } +}; + +SIP.NameAddrHeader = NameAddrHeader; +}; + +},{}],16:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP Message Parser + */ + +/** + * Extract and parse every header of a SIP message. + * @augments SIP + * @namespace + */ +module.exports = function (SIP) { +var Parser; + +function getHeader(data, headerStart) { + var + // 'start' position of the header. + start = headerStart, + // 'end' position of the header. + end = 0, + // 'partial end' position of the header. + partialEnd = 0; + + //End of message. + if (data.substring(start, start + 2).match(/(^\r\n)/)) { + return -2; + } + + while(end === 0) { + // Partial End of Header. + partialEnd = data.indexOf('\r\n', start); + + // 'indexOf' returns -1 if the value to be found never occurs. + if (partialEnd === -1) { + return partialEnd; + } + + if(!data.substring(partialEnd + 2, partialEnd + 4).match(/(^\r\n)/) && data.charAt(partialEnd + 2).match(/(^\s+)/)) { + // Not the end of the message. Continue from the next position. + start = partialEnd + 2; + } else { + end = partialEnd; + } + } + + return end; +} + +function parseHeader(message, data, headerStart, headerEnd) { + var header, idx, length, parsed, + hcolonIndex = data.indexOf(':', headerStart), + headerName = data.substring(headerStart, hcolonIndex).trim(), + headerValue = data.substring(hcolonIndex + 1, headerEnd).trim(); + + // If header-field is well-known, parse it. + switch(headerName.toLowerCase()) { + case 'via': + case 'v': + message.addHeader('via', headerValue); + if(message.getHeaders('via').length === 1) { + parsed = message.parseHeader('Via'); + if(parsed) { + message.via = parsed; + message.via_branch = parsed.branch; + } + } else { + parsed = 0; + } + break; + case 'from': + case 'f': + message.setHeader('from', headerValue); + parsed = message.parseHeader('from'); + if(parsed) { + message.from = parsed; + message.from_tag = parsed.getParam('tag'); + } + break; + case 'to': + case 't': + message.setHeader('to', headerValue); + parsed = message.parseHeader('to'); + if(parsed) { + message.to = parsed; + message.to_tag = parsed.getParam('tag'); + } + break; + case 'record-route': + parsed = SIP.Grammar.parse(headerValue, 'Record_Route'); + + if (parsed === -1) { + parsed = undefined; + break; + } + + length = parsed.length; + for (idx = 0; idx < length; idx++) { + header = parsed[idx]; + message.addHeader('record-route', headerValue.substring(header.position, header.offset)); + message.headers['Record-Route'][message.getHeaders('record-route').length - 1].parsed = header.parsed; + } + break; + case 'call-id': + case 'i': + message.setHeader('call-id', headerValue); + parsed = message.parseHeader('call-id'); + if(parsed) { + message.call_id = headerValue; + } + break; + case 'contact': + case 'm': + parsed = SIP.Grammar.parse(headerValue, 'Contact'); + + if (parsed === -1) { + parsed = undefined; + break; + } + + length = parsed.length; + for (idx = 0; idx < length; idx++) { + header = parsed[idx]; + message.addHeader('contact', headerValue.substring(header.position, header.offset)); + message.headers['Contact'][message.getHeaders('contact').length - 1].parsed = header.parsed; + } + break; + case 'content-length': + case 'l': + message.setHeader('content-length', headerValue); + parsed = message.parseHeader('content-length'); + break; + case 'content-type': + case 'c': + message.setHeader('content-type', headerValue); + parsed = message.parseHeader('content-type'); + break; + case 'cseq': + message.setHeader('cseq', headerValue); + parsed = message.parseHeader('cseq'); + if(parsed) { + message.cseq = parsed.value; + } + if(message instanceof SIP.IncomingResponse) { + message.method = parsed.method; + } + break; + case 'max-forwards': + message.setHeader('max-forwards', headerValue); + parsed = message.parseHeader('max-forwards'); + break; + case 'www-authenticate': + message.setHeader('www-authenticate', headerValue); + parsed = message.parseHeader('www-authenticate'); + break; + case 'proxy-authenticate': + message.setHeader('proxy-authenticate', headerValue); + parsed = message.parseHeader('proxy-authenticate'); + break; + case 'refer-to': + case 'r': + message.setHeader('refer-to', headerValue); + parsed = message.parseHeader('refer-to'); + if (parsed) { + message.refer_to = parsed; + } + break; + default: + // Do not parse this header. + message.setHeader(headerName, headerValue); + parsed = 0; + } + + if (parsed === undefined) { + return { + error: 'error parsing header "'+ headerName +'"' + }; + } else { + return true; + } +} + +/** Parse SIP Message + * @function + * @param {String} message SIP message. + * @param {Object} logger object. + * @returns {SIP.IncomingRequest|SIP.IncomingResponse|undefined} + */ +Parser = {}; +Parser.parseMessage = function(data, ua) { + var message, firstLine, contentLength, bodyStart, parsed, + headerStart = 0, + headerEnd = data.indexOf('\r\n'), + logger = ua.getLogger('sip.parser'); + + if(headerEnd === -1) { + logger.warn('no CRLF found, not a SIP message, discarded'); + return; + } + + // Parse first line. Check if it is a Request or a Reply. + firstLine = data.substring(0, headerEnd); + parsed = SIP.Grammar.parse(firstLine, 'Request_Response'); + + if(parsed === -1) { + logger.warn('error parsing first line of SIP message: "' + firstLine + '"'); + return; + } else if(!parsed.status_code) { + message = new SIP.IncomingRequest(ua); + message.method = parsed.method; + message.ruri = parsed.uri; + } else { + message = new SIP.IncomingResponse(ua); + message.status_code = parsed.status_code; + message.reason_phrase = parsed.reason_phrase; + } + + message.data = data; + headerStart = headerEnd + 2; + + /* Loop over every line in data. Detect the end of each header and parse + * it or simply add to the headers collection. + */ + while(true) { + headerEnd = getHeader(data, headerStart); + + // The SIP message has normally finished. + if(headerEnd === -2) { + bodyStart = headerStart + 2; + break; + } + // data.indexOf returned -1 due to a malformed message. + else if(headerEnd === -1) { + logger.error('malformed message'); + return; + } + + parsed = parseHeader(message, data, headerStart, headerEnd); + + if(parsed !== true) { + logger.error(parsed.error); + return; + } + + headerStart = headerEnd + 2; + } + + /* RFC3261 18.3. + * If there are additional bytes in the transport packet + * beyond the end of the body, they MUST be discarded. + */ + if(message.hasHeader('content-length')) { + contentLength = message.getHeader('content-length'); + message.body = data.substr(bodyStart, contentLength); + } else { + message.body = data.substring(bodyStart); + } + + return message; +}; + +SIP.Parser = Parser; +}; + +},{}],17:[function(require,module,exports){ +"use strict"; +module.exports = function (SIP) { + +var RegisterContext; + +RegisterContext = function (ua) { + var params = {}, + regId = 1; + + this.registrar = ua.configuration.registrarServer; + this.expires = ua.configuration.registerExpires; + + + // Contact header + this.contact = ua.contact.toString(); + + if(regId) { + this.contact += ';reg-id='+ regId; + this.contact += ';+sip.instance="<urn:uuid:'+ ua.configuration.instanceId+'>"'; + } + + // Call-ID and CSeq values RFC3261 10.2 + this.call_id = SIP.Utils.createRandomToken(22); + this.cseq = 80; + + this.to_uri = ua.configuration.uri; + + params.to_uri = this.to_uri; + params.to_displayName = ua.configuration.displayName; + params.call_id = this.call_id; + params.cseq = this.cseq; + + // Extends ClientContext + SIP.Utils.augment(this, SIP.ClientContext, [ua, 'REGISTER', this.registrar, {params: params}]); + + this.registrationTimer = null; + this.registrationExpiredTimer = null; + + // Set status + this.registered = false; + + this.logger = ua.getLogger('sip.registercontext'); +}; + +RegisterContext.prototype = { + register: function (options) { + var self = this, extraHeaders; + + // Handle Options + this.options = options || {}; + extraHeaders = (this.options.extraHeaders || []).slice(); + extraHeaders.push('Contact: ' + this.contact + ';expires=' + this.expires); + extraHeaders.push('Allow: ' + SIP.UA.C.ALLOWED_METHODS.toString()); + + // Save original extraHeaders to be used in .close + this.closeHeaders = this.options.closeWithHeaders ? + (this.options.extraHeaders || []).slice() : []; + + this.receiveResponse = function(response) { + var contact, expires, + contacts = response.getHeaders('contact').length, + cause; + + // Discard responses to older REGISTER/un-REGISTER requests. + if(response.cseq !== this.cseq) { + return; + } + + // Clear registration timer + if (this.registrationTimer !== null) { + SIP.Timers.clearTimeout(this.registrationTimer); + this.registrationTimer = null; + } + + switch(true) { + case /^1[0-9]{2}$/.test(response.status_code): + this.emit('progress', response); + break; + case /^2[0-9]{2}$/.test(response.status_code): + this.emit('accepted', response); + + if(response.hasHeader('expires')) { + expires = response.getHeader('expires'); + } + + if (this.registrationExpiredTimer !== null) { + SIP.Timers.clearTimeout(this.registrationExpiredTimer); + this.registrationExpiredTimer = null; + } + + // Search the Contact pointing to us and update the expires value accordingly. + if (!contacts) { + this.logger.warn('no Contact header in response to REGISTER, response ignored'); + break; + } + + while(contacts--) { + contact = response.parseHeader('contact', contacts); + if(contact.uri.user === this.ua.contact.uri.user) { + expires = contact.getParam('expires'); + break; + } else { + contact = null; + } + } + + if (!contact) { + this.logger.warn('no Contact header pointing to us, response ignored'); + break; + } + + if(!expires) { + expires = this.expires; + } + + // Re-Register before the expiration interval has elapsed. + // For that, decrease the expires value. ie: 3 seconds + this.registrationTimer = SIP.Timers.setTimeout(function() { + self.registrationTimer = null; + self.register(self.options); + }, (expires * 1000) - 3000); + this.registrationExpiredTimer = SIP.Timers.setTimeout(function () { + self.logger.warn('registration expired'); + if (self.registered) { + self.unregistered(null, SIP.C.causes.EXPIRES); + } + }, expires * 1000); + + //Save gruu values + if (contact.hasParam('temp-gruu')) { + this.ua.contact.temp_gruu = SIP.URI.parse(contact.getParam('temp-gruu').replace(/"/g,'')); + } + if (contact.hasParam('pub-gruu')) { + this.ua.contact.pub_gruu = SIP.URI.parse(contact.getParam('pub-gruu').replace(/"/g,'')); + } + + this.registered = true; + this.emit('registered', response || null); + break; + // Interval too brief RFC3261 10.2.8 + case /^423$/.test(response.status_code): + if(response.hasHeader('min-expires')) { + // Increase our registration interval to the suggested minimum + this.expires = response.getHeader('min-expires'); + // Attempt the registration again immediately + this.register(this.options); + } else { //This response MUST contain a Min-Expires header field + this.logger.warn('423 response received for REGISTER without Min-Expires'); + this.registrationFailure(response, SIP.C.causes.SIP_FAILURE_CODE); + } + break; + default: + cause = SIP.Utils.sipErrorCause(response.status_code); + this.registrationFailure(response, cause); + } + }; + + this.onRequestTimeout = function() { + this.registrationFailure(null, SIP.C.causes.REQUEST_TIMEOUT); + }; + + this.onTransportError = function() { + this.registrationFailure(null, SIP.C.causes.CONNECTION_ERROR); + }; + + this.cseq++; + this.request.cseq = this.cseq; + this.request.setHeader('cseq', this.cseq + ' REGISTER'); + this.request.extraHeaders = extraHeaders; + this.send(); + }, + + registrationFailure: function (response, cause) { + this.emit('failed', response || null, cause || null); + }, + + onTransportClosed: function() { + this.registered_before = this.registered; + if (this.registrationTimer !== null) { + SIP.Timers.clearTimeout(this.registrationTimer); + this.registrationTimer = null; + } + + if (this.registrationExpiredTimer !== null) { + SIP.Timers.clearTimeout(this.registrationExpiredTimer); + this.registrationExpiredTimer = null; + } + + if(this.registered) { + this.unregistered(null, SIP.C.causes.CONNECTION_ERROR); + } + }, + + onTransportConnected: function() { + this.register(this.options); + }, + + close: function() { + var options = { + all: false, + extraHeaders: this.closeHeaders + }; + + this.registered_before = this.registered; + this.unregister(options); + }, + + unregister: function(options) { + var extraHeaders; + + options = options || {}; + + if(!this.registered && !options.all) { + this.logger.warn('already unregistered'); + return; + } + + extraHeaders = (options.extraHeaders || []).slice(); + + this.registered = false; + + // Clear the registration timer. + if (this.registrationTimer !== null) { + SIP.Timers.clearTimeout(this.registrationTimer); + this.registrationTimer = null; + } + + if(options.all) { + extraHeaders.push('Contact: *'); + extraHeaders.push('Expires: 0'); + } else { + extraHeaders.push('Contact: '+ this.contact + ';expires=0'); + } + + + this.receiveResponse = function(response) { + var cause; + + switch(true) { + case /^1[0-9]{2}$/.test(response.status_code): + this.emit('progress', response); + break; + case /^2[0-9]{2}$/.test(response.status_code): + this.emit('accepted', response); + if (this.registrationExpiredTimer !== null) { + SIP.Timers.clearTimeout(this.registrationExpiredTimer); + this.registrationExpiredTimer = null; + } + this.unregistered(response); + break; + default: + cause = SIP.Utils.sipErrorCause(response.status_code); + this.unregistered(response,cause); + } + }; + + this.onRequestTimeout = function() { + // Not actually unregistered... + //this.unregistered(null, SIP.C.causes.REQUEST_TIMEOUT); + }; + + this.onTransportError = function() { + // Not actually unregistered... + //this.unregistered(null, SIP.C.causes.CONNECTION_ERROR); + }; + + this.cseq++; + this.request.cseq = this.cseq; + this.request.setHeader('cseq', this.cseq + ' REGISTER'); + this.request.extraHeaders = extraHeaders; + + this.send(); + }, + + unregistered: function(response, cause) { + this.registered = false; + this.emit('unregistered', response || null, cause || null); + } + +}; + + +SIP.RegisterContext = RegisterContext; +}; + +},{}],18:[function(require,module,exports){ +"use strict"; + +/** + * @fileoverview Request Sender + */ + +/** + * @augments SIP + * @class Class creating a request sender. + * @param {Object} applicant + * @param {SIP.UA} ua + */ +module.exports = function (SIP) { +var RequestSender; + +RequestSender = function(applicant, ua) { + this.logger = ua.getLogger('sip.requestsender'); + this.ua = ua; + this.applicant = applicant; + this.method = applicant.request.method; + this.request = applicant.request; + this.credentials = null; + this.challenged = false; + this.staled = false; + + // If ua is in closing process or even closed just allow sending Bye and ACK + if (ua.status === SIP.UA.C.STATUS_USER_CLOSED && (this.method !== SIP.C.BYE || this.method !== SIP.C.ACK)) { + this.onTransportError(); + } +}; + +/** +* Create the client transaction and send the message. +*/ +RequestSender.prototype = { + send: function() { + switch(this.method) { + case "INVITE": + this.clientTransaction = new SIP.Transactions.InviteClientTransaction(this, this.request, this.ua.transport); + break; + case "ACK": + this.clientTransaction = new SIP.Transactions.AckClientTransaction(this, this.request, this.ua.transport); + break; + default: + this.clientTransaction = new SIP.Transactions.NonInviteClientTransaction(this, this.request, this.ua.transport); + } + this.clientTransaction.send(); + + return this.clientTransaction; + }, + + /** + * Callback fired when receiving a request timeout error from the client transaction. + * To be re-defined by the applicant. + * @event + */ + onRequestTimeout: function() { + this.applicant.onRequestTimeout(); + }, + + /** + * Callback fired when receiving a transport error from the client transaction. + * To be re-defined by the applicant. + * @event + */ + onTransportError: function() { + this.applicant.onTransportError(); + }, + + /** + * Called from client transaction when receiving a correct response to the request. + * Authenticate request if needed or pass the response back to the applicant. + * @param {SIP.IncomingResponse} response + */ + receiveResponse: function(response) { + var cseq, challenge, authorization_header_name, + status_code = response.status_code; + + /* + * Authentication + * Authenticate once. _challenged_ flag used to avoid infinite authentications. + */ + if (status_code === 401 || status_code === 407) { + + // Get and parse the appropriate WWW-Authenticate or Proxy-Authenticate header. + if (response.status_code === 401) { + challenge = response.parseHeader('www-authenticate'); + authorization_header_name = 'authorization'; + } else { + challenge = response.parseHeader('proxy-authenticate'); + authorization_header_name = 'proxy-authorization'; + } + + // Verify it seems a valid challenge. + if (! challenge) { + this.logger.warn(response.status_code + ' with wrong or missing challenge, cannot authenticate'); + this.applicant.receiveResponse(response); + return; + } + + if (!this.challenged || (!this.staled && challenge.stale === true)) { + if (!this.credentials) { + this.credentials = this.ua.configuration.authenticationFactory(this.ua); + } + + // Verify that the challenge is really valid. + if (!this.credentials.authenticate(this.request, challenge)) { + this.applicant.receiveResponse(response); + return; + } + this.challenged = true; + + if (challenge.stale) { + this.staled = true; + } + + if (response.method === SIP.C.REGISTER) { + cseq = this.applicant.cseq += 1; + } else if (this.request.dialog){ + cseq = this.request.dialog.local_seqnum += 1; + } else { + cseq = this.request.cseq + 1; + this.request.cseq = cseq; + } + this.request.setHeader('cseq', cseq +' '+ this.method); + + this.request.setHeader(authorization_header_name, this.credentials.toString()); + this.send(); + } else { + this.applicant.receiveResponse(response); + } + } else { + this.applicant.receiveResponse(response); + } + } +}; + +SIP.RequestSender = RequestSender; +}; + +},{}],19:[function(require,module,exports){ +/** + * @name SIP + * @namespace + */ +"use strict"; + +module.exports = function (environment) { + +var pkg = require('../package.json'), + version = pkg.version, + title = pkg.title; + +var SIP = Object.defineProperties({}, { + version: { + get: function(){ return version; } + }, + name: { + get: function(){ return title; } + } +}); + +require('./Utils')(SIP, environment); +SIP.LoggerFactory = require('./LoggerFactory')(environment.console); +SIP.EventEmitter = require('./EventEmitter')(environment.console); +SIP.C = require('./Constants')(SIP.name, SIP.version); +SIP.Exceptions = require('./Exceptions'); +SIP.Timers = require('./Timers')(environment.timers); +SIP.Transport = environment.Transport(SIP, environment.WebSocket); +require('./Parser')(SIP); +require('./SIPMessage')(SIP); +require('./URI')(SIP); +require('./NameAddrHeader')(SIP); +require('./Transactions')(SIP); +require('./Dialogs')(SIP); +require('./RequestSender')(SIP); +require('./RegisterContext')(SIP); +SIP.MediaHandler = require('./MediaHandler')(SIP.EventEmitter); +require('./ClientContext')(SIP); +require('./ServerContext')(SIP); +require('./Session')(SIP, environment); +require('./Subscription')(SIP); +SIP.WebRTC = require('./WebRTC')(SIP, environment); +require('./UA')(SIP, environment); +SIP.Hacks = require('./Hacks')(SIP); +require('./SanityCheck')(SIP); +SIP.DigestAuthentication = require('./DigestAuthentication')(SIP.Utils); +SIP.Grammar = require('./Grammar')(SIP); + +return SIP; +}; + +},{"../package.json":2,"./ClientContext":3,"./Constants":4,"./Dialogs":6,"./DigestAuthentication":7,"./EventEmitter":8,"./Exceptions":9,"./Grammar":10,"./Hacks":12,"./LoggerFactory":13,"./MediaHandler":14,"./NameAddrHeader":15,"./Parser":16,"./RegisterContext":17,"./RequestSender":18,"./SIPMessage":20,"./SanityCheck":21,"./ServerContext":22,"./Session":23,"./Subscription":25,"./Timers":26,"./Transactions":27,"./UA":29,"./URI":30,"./Utils":31,"./WebRTC":32}],20:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP Message + */ + +module.exports = function (SIP) { +var + OutgoingRequest, + IncomingMessage, + IncomingRequest, + IncomingResponse; + +function getSupportedHeader (request) { + var allowUnregistered = request.ua.configuration.hackAllowUnregisteredOptionTags; + var optionTags = []; + var optionTagSet = {}; + + if (request.method === SIP.C.REGISTER) { + optionTags.push('path', 'gruu'); + } else if (request.method === SIP.C.INVITE && + (request.ua.contact.pub_gruu || request.ua.contact.temp_gruu)) { + optionTags.push('gruu'); + } + + if (request.ua.configuration.rel100 === SIP.C.supported.SUPPORTED) { + optionTags.push('100rel'); + } + if (request.ua.configuration.replaces === SIP.C.supported.SUPPORTED) { + optionTags.push('replaces'); + } + + optionTags.push('outbound'); + + optionTags = optionTags.concat(request.ua.configuration.extraSupported); + + optionTags = optionTags.filter(function(optionTag) { + var registered = SIP.C.OPTION_TAGS[optionTag]; + var unique = !optionTagSet[optionTag]; + optionTagSet[optionTag] = true; + return (registered || allowUnregistered) && unique; + }); + + return 'Supported: ' + optionTags.join(', ') + '\r\n'; +} + +/** + * @augments SIP + * @class Class for outgoing SIP request. + * @param {String} method request method + * @param {String} ruri request uri + * @param {SIP.UA} ua + * @param {Object} params parameters that will have priority over ua.configuration parameters: + * <br> + * - cseq, call_id, from_tag, from_uri, from_displayName, to_uri, to_tag, route_set + * @param {Object} [headers] extra headers + * @param {String} [body] + */ +OutgoingRequest = function(method, ruri, ua, params, extraHeaders, body) { + var + to, + from, + call_id, + cseq, + to_uri, + from_uri; + + params = params || {}; + + // Mandatory parameters check + if(!method || !ruri || !ua) { + return null; + } + + this.logger = ua.getLogger('sip.sipmessage'); + this.ua = ua; + this.headers = {}; + this.method = method; + this.ruri = ruri; + this.body = body; + this.extraHeaders = (extraHeaders || []).slice(); + this.statusCode = params.status_code; + this.reasonPhrase = params.reason_phrase; + + // Fill the Common SIP Request Headers + + // Route + if (params.route_set) { + this.setHeader('route', params.route_set); + } else if (ua.configuration.usePreloadedRoute){ + this.setHeader('route', ua.transport.server.sip_uri); + } + + // Via + // Empty Via header. Will be filled by the client transaction. + this.setHeader('via', ''); + + // Max-Forwards + this.setHeader('max-forwards', SIP.UA.C.MAX_FORWARDS); + + // To + to_uri = params.to_uri || ruri; + to = (params.to_displayName || params.to_displayName === 0) ? '"' + params.to_displayName + '" ' : ''; + to += '<' + (to_uri && to_uri.toRaw ? to_uri.toRaw() : to_uri) + '>'; + to += params.to_tag ? ';tag=' + params.to_tag : ''; + this.to = new SIP.NameAddrHeader.parse(to); + this.setHeader('to', to); + + // From + from_uri = params.from_uri || ua.configuration.uri; + if (params.from_displayName || params.from_displayName === 0) { + from = '"' + params.from_displayName + '" '; + } else if (ua.configuration.displayName) { + from = '"' + ua.configuration.displayName + '" '; + } else { + from = ''; + } + from += '<' + (from_uri && from_uri.toRaw ? from_uri.toRaw() : from_uri) + '>;tag='; + from += params.from_tag || SIP.Utils.newTag(); + this.from = new SIP.NameAddrHeader.parse(from); + this.setHeader('from', from); + + // Call-ID + call_id = params.call_id || (ua.configuration.sipjsId + SIP.Utils.createRandomToken(15)); + this.call_id = call_id; + this.setHeader('call-id', call_id); + + // CSeq + cseq = params.cseq || Math.floor(Math.random() * 10000); + this.cseq = cseq; + this.setHeader('cseq', cseq + ' ' + method); +}; + +OutgoingRequest.prototype = { + /** + * Replace the the given header by the given value. + * @param {String} name header name + * @param {String | Array} value header value + */ + setHeader: function(name, value) { + this.headers[SIP.Utils.headerize(name)] = (value instanceof Array) ? value : [value]; + }, + + /** + * Get the value of the given header name at the given position. + * @param {String} name header name + * @returns {String|undefined} Returns the specified header, undefined if header doesn't exist. + */ + getHeader: function(name) { + var regexp, idx, + length = this.extraHeaders.length, + header = this.headers[SIP.Utils.headerize(name)]; + + if(header) { + if(header[0]) { + return header[0]; + } + } else { + regexp = new RegExp('^\\s*' + name + '\\s*:','i'); + for (idx = 0; idx < length; idx++) { + header = this.extraHeaders[idx]; + if (regexp.test(header)) { + return header.substring(header.indexOf(':')+1).trim(); + } + } + } + + return; + }, + + /** + * Get the header/s of the given name. + * @param {String} name header name + * @returns {Array} Array with all the headers of the specified name. + */ + getHeaders: function(name) { + var idx, length, regexp, + header = this.headers[SIP.Utils.headerize(name)], + result = []; + + if(header) { + length = header.length; + for (idx = 0; idx < length; idx++) { + result.push(header[idx]); + } + return result; + } else { + length = this.extraHeaders.length; + regexp = new RegExp('^\\s*' + name + '\\s*:','i'); + for (idx = 0; idx < length; idx++) { + header = this.extraHeaders[idx]; + if (regexp.test(header)) { + result.push(header.substring(header.indexOf(':')+1).trim()); + } + } + return result; + } + }, + + /** + * Verify the existence of the given header. + * @param {String} name header name + * @returns {boolean} true if header with given name exists, false otherwise + */ + hasHeader: function(name) { + var regexp, idx, + length = this.extraHeaders.length; + + if (this.headers[SIP.Utils.headerize(name)]) { + return true; + } else { + regexp = new RegExp('^\\s*' + name + '\\s*:','i'); + for (idx = 0; idx < length; idx++) { + if (regexp.test(this.extraHeaders[idx])) { + return true; + } + } + } + + return false; + }, + + toString: function() { + var msg = '', header, length, idx; + + msg += this.method + ' ' + (this.ruri.toRaw ? this.ruri.toRaw() : this.ruri) + ' SIP/2.0\r\n'; + + for (header in this.headers) { + length = this.headers[header].length; + for (idx = 0; idx < length; idx++) { + msg += header + ': ' + this.headers[header][idx] + '\r\n'; + } + } + + length = this.extraHeaders.length; + for (idx = 0; idx < length; idx++) { + msg += this.extraHeaders[idx].trim() +'\r\n'; + } + + msg += getSupportedHeader(this); + msg += 'User-Agent: ' + this.ua.configuration.userAgentString +'\r\n'; + + if (this.body) { + if (typeof this.body === 'string') { + length = SIP.Utils.str_utf8_length(this.body); + msg += 'Content-Length: ' + length + '\r\n\r\n'; + msg += this.body; + } else { + if (this.body.body && this.body.contentType) { + length = SIP.Utils.str_utf8_length(this.body.body); + msg += 'Content-Type: ' + this.body.contentType + '\r\n'; + msg += 'Content-Length: ' + length + '\r\n\r\n'; + msg += this.body.body; + } else { + msg += 'Content-Length: ' + 0 + '\r\n\r\n'; + } + } + } else { + msg += 'Content-Length: ' + 0 + '\r\n\r\n'; + } + + return msg; + } +}; + +/** + * @augments SIP + * @class Class for incoming SIP message. + */ +IncomingMessage = function(){ + this.data = null; + this.headers = null; + this.method = null; + this.via = null; + this.via_branch = null; + this.call_id = null; + this.cseq = null; + this.from = null; + this.from_tag = null; + this.to = null; + this.to_tag = null; + this.body = null; +}; + +IncomingMessage.prototype = { + /** + * Insert a header of the given name and value into the last position of the + * header array. + * @param {String} name header name + * @param {String} value header value + */ + addHeader: function(name, value) { + var header = { raw: value }; + + name = SIP.Utils.headerize(name); + + if(this.headers[name]) { + this.headers[name].push(header); + } else { + this.headers[name] = [header]; + } + }, + + /** + * Get the value of the given header name at the given position. + * @param {String} name header name + * @returns {String|undefined} Returns the specified header, null if header doesn't exist. + */ + getHeader: function(name) { + var header = this.headers[SIP.Utils.headerize(name)]; + + if(header) { + if(header[0]) { + return header[0].raw; + } + } else { + return; + } + }, + + /** + * Get the header/s of the given name. + * @param {String} name header name + * @returns {Array} Array with all the headers of the specified name. + */ + getHeaders: function(name) { + var idx, length, + header = this.headers[SIP.Utils.headerize(name)], + result = []; + + if(!header) { + return []; + } + + length = header.length; + for (idx = 0; idx < length; idx++) { + result.push(header[idx].raw); + } + + return result; + }, + + /** + * Verify the existence of the given header. + * @param {String} name header name + * @returns {boolean} true if header with given name exists, false otherwise + */ + hasHeader: function(name) { + return(this.headers[SIP.Utils.headerize(name)]) ? true : false; + }, + + /** + * Parse the given header on the given index. + * @param {String} name header name + * @param {Number} [idx=0] header index + * @returns {Object|undefined} Parsed header object, undefined if the header is not present or in case of a parsing error. + */ + parseHeader: function(name, idx) { + var header, value, parsed; + + name = SIP.Utils.headerize(name); + + idx = idx || 0; + + if(!this.headers[name]) { + this.logger.log('header "' + name + '" not present'); + return; + } else if(idx >= this.headers[name].length) { + this.logger.log('not so many "' + name + '" headers present'); + return; + } + + header = this.headers[name][idx]; + value = header.raw; + + if(header.parsed) { + return header.parsed; + } + + //substitute '-' by '_' for grammar rule matching. + parsed = SIP.Grammar.parse(value, name.replace(/-/g, '_')); + + if(parsed === -1) { + this.headers[name].splice(idx, 1); //delete from headers + this.logger.warn('error parsing "' + name + '" header field with value "' + value + '"'); + return; + } else { + header.parsed = parsed; + return parsed; + } + }, + + /** + * Message Header attribute selector. Alias of parseHeader. + * @param {String} name header name + * @param {Number} [idx=0] header index + * @returns {Object|undefined} Parsed header object, undefined if the header is not present or in case of a parsing error. + * + * @example + * message.s('via',3).port + */ + s: function(name, idx) { + return this.parseHeader(name, idx); + }, + + /** + * Replace the value of the given header by the value. + * @param {String} name header name + * @param {String} value header value + */ + setHeader: function(name, value) { + var header = { raw: value }; + this.headers[SIP.Utils.headerize(name)] = [header]; + }, + + toString: function() { + return this.data; + } +}; + +/** + * @augments IncomingMessage + * @class Class for incoming SIP request. + */ +IncomingRequest = function(ua) { + this.logger = ua.getLogger('sip.sipmessage'); + this.ua = ua; + this.headers = {}; + this.ruri = null; + this.transport = null; + this.server_transaction = null; +}; +IncomingRequest.prototype = new IncomingMessage(); + +/** +* Stateful reply. +* @param {Number} code status code +* @param {String} reason reason phrase +* @param {Object} headers extra headers +* @param {String} body body +* @param {Function} [onSuccess] onSuccess callback +* @param {Function} [onFailure] onFailure callback +*/ +IncomingRequest.prototype.reply = function(code, reason, extraHeaders, body, onSuccess, onFailure) { + var rr, vias, length, idx, response, + to = this.getHeader('To'), + r = 0, + v = 0; + + response = SIP.Utils.buildStatusLine(code, reason); + extraHeaders = (extraHeaders || []).slice(); + + if(this.method === SIP.C.INVITE && code > 100 && code <= 200) { + rr = this.getHeaders('record-route'); + length = rr.length; + + for(r; r < length; r++) { + response += 'Record-Route: ' + rr[r] + '\r\n'; + } + } + + vias = this.getHeaders('via'); + length = vias.length; + + for(v; v < length; v++) { + response += 'Via: ' + vias[v] + '\r\n'; + } + + if(!this.to_tag && code > 100) { + to += ';tag=' + SIP.Utils.newTag(); + } else if(this.to_tag && !this.s('to').hasParam('tag')) { + to += ';tag=' + this.to_tag; + } + + response += 'To: ' + to + '\r\n'; + response += 'From: ' + this.getHeader('From') + '\r\n'; + response += 'Call-ID: ' + this.call_id + '\r\n'; + response += 'CSeq: ' + this.cseq + ' ' + this.method + '\r\n'; + + length = extraHeaders.length; + for (idx = 0; idx < length; idx++) { + response += extraHeaders[idx].trim() +'\r\n'; + } + + response += getSupportedHeader(this); + response += 'User-Agent: ' + this.ua.configuration.userAgentString +'\r\n'; + + if (body) { + if (typeof body === 'string') { + length = SIP.Utils.str_utf8_length(body); + response += 'Content-Type: application/sdp\r\n'; + response += 'Content-Length: ' + length + '\r\n\r\n'; + response += body; + } else { + if (body.body && body.contentType) { + length = SIP.Utils.str_utf8_length(body.body); + response += 'Content-Type: ' + body.contentType + '\r\n'; + response += 'Content-Length: ' + length + '\r\n\r\n'; + response += body.body; + } else { + response += 'Content-Length: ' + 0 + '\r\n\r\n'; + } + } + } else { + response += 'Content-Length: ' + 0 + '\r\n\r\n'; + } + + this.server_transaction.receiveResponse(code, response).then(onSuccess, onFailure); + + return response; +}; + +/** +* Stateless reply. +* @param {Number} code status code +* @param {String} reason reason phrase +*/ +IncomingRequest.prototype.reply_sl = function(code, reason) { + var to, response, + v = 0, + vias = this.getHeaders('via'), + length = vias.length; + + response = SIP.Utils.buildStatusLine(code, reason); + + for(v; v < length; v++) { + response += 'Via: ' + vias[v] + '\r\n'; + } + + to = this.getHeader('To'); + + if(!this.to_tag && code > 100) { + to += ';tag=' + SIP.Utils.newTag(); + } else if(this.to_tag && !this.s('to').hasParam('tag')) { + to += ';tag=' + this.to_tag; + } + + response += 'To: ' + to + '\r\n'; + response += 'From: ' + this.getHeader('From') + '\r\n'; + response += 'Call-ID: ' + this.call_id + '\r\n'; + response += 'CSeq: ' + this.cseq + ' ' + this.method + '\r\n'; + response += 'User-Agent: ' + this.ua.configuration.userAgentString +'\r\n'; + response += 'Content-Length: ' + 0 + '\r\n\r\n'; + + this.transport.send(response); +}; + + +/** + * @augments IncomingMessage + * @class Class for incoming SIP response. + */ +IncomingResponse = function(ua) { + this.logger = ua.getLogger('sip.sipmessage'); + this.headers = {}; + this.status_code = null; + this.reason_phrase = null; +}; +IncomingResponse.prototype = new IncomingMessage(); + +SIP.OutgoingRequest = OutgoingRequest; +SIP.IncomingRequest = IncomingRequest; +SIP.IncomingResponse = IncomingResponse; +}; + +},{}],21:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview Incoming SIP Message Sanity Check + */ + +/** + * SIP message sanity check. + * @augments SIP + * @function + * @param {SIP.IncomingMessage} message + * @param {SIP.UA} ua + * @param {SIP.Transport} transport + * @returns {Boolean} + */ +module.exports = function (SIP) { +var sanityCheck, + requests = [], + responses = [], + all = []; + +// Reply +function reply(status_code, message, transport) { + var to, + response = SIP.Utils.buildStatusLine(status_code), + vias = message.getHeaders('via'), + length = vias.length, + idx = 0; + + for(idx; idx < length; idx++) { + response += "Via: " + vias[idx] + "\r\n"; + } + + to = message.getHeader('To'); + + if(!message.to_tag) { + to += ';tag=' + SIP.Utils.newTag(); + } + + response += "To: " + to + "\r\n"; + response += "From: " + message.getHeader('From') + "\r\n"; + response += "Call-ID: " + message.call_id + "\r\n"; + response += "CSeq: " + message.cseq + " " + message.method + "\r\n"; + response += "\r\n"; + + transport.send(response); +} + +/* + * Sanity Check for incoming Messages + * + * Requests: + * - _rfc3261_8_2_2_1_ Receive a Request with a non supported URI scheme + * - _rfc3261_16_3_4_ Receive a Request already sent by us + * Does not look at via sent-by but at sipjsId, which is inserted as + * a prefix in all initial requests generated by the ua + * - _rfc3261_18_3_request_ Body Content-Length + * - _rfc3261_8_2_2_2_ Merged Requests + * + * Responses: + * - _rfc3261_8_1_3_3_ Multiple Via headers + * - _rfc3261_18_1_2_ sent-by mismatch + * - _rfc3261_18_3_response_ Body Content-Length + * + * All: + * - Minimum headers in a SIP message + */ + +// Sanity Check functions for requests +function rfc3261_8_2_2_1(message, ua, transport) { + if(!message.ruri || message.ruri.scheme !== 'sip') { + reply(416, message, transport); + return false; + } +} + +function rfc3261_16_3_4(message, ua, transport) { + if(!message.to_tag) { + if(message.call_id.substr(0, 5) === ua.configuration.sipjsId) { + reply(482, message, transport); + return false; + } + } +} + +function rfc3261_18_3_request(message, ua, transport) { + var len = SIP.Utils.str_utf8_length(message.body), + contentLength = message.getHeader('content-length'); + + if(len < contentLength) { + reply(400, message, transport); + return false; + } +} + +function rfc3261_8_2_2_2(message, ua, transport) { + var tr, idx, + fromTag = message.from_tag, + call_id = message.call_id, + cseq = message.cseq; + + if(!message.to_tag) { + if(message.method === SIP.C.INVITE) { + tr = ua.transactions.ist[message.via_branch]; + if(tr) { + return; + } else { + for(idx in ua.transactions.ist) { + tr = ua.transactions.ist[idx]; + if(tr.request.from_tag === fromTag && tr.request.call_id === call_id && tr.request.cseq === cseq) { + reply(482, message, transport); + return false; + } + } + } + } else { + tr = ua.transactions.nist[message.via_branch]; + if(tr) { + return; + } else { + for(idx in ua.transactions.nist) { + tr = ua.transactions.nist[idx]; + if(tr.request.from_tag === fromTag && tr.request.call_id === call_id && tr.request.cseq === cseq) { + reply(482, message, transport); + return false; + } + } + } + } + } +} + +// Sanity Check functions for responses +function rfc3261_8_1_3_3(message, ua) { + if(message.getHeaders('via').length > 1) { + ua.getLogger('sip.sanitycheck').warn('More than one Via header field present in the response. Dropping the response'); + return false; + } +} + +function rfc3261_18_1_2(message, ua) { + var viaHost = ua.configuration.viaHost; + if(message.via.host !== viaHost || message.via.port !== undefined) { + ua.getLogger('sip.sanitycheck').warn('Via sent-by in the response does not match UA Via host value. Dropping the response'); + return false; + } +} + +function rfc3261_18_3_response(message, ua) { + var + len = SIP.Utils.str_utf8_length(message.body), + contentLength = message.getHeader('content-length'); + + if(len < contentLength) { + ua.getLogger('sip.sanitycheck').warn('Message body length is lower than the value in Content-Length header field. Dropping the response'); + return false; + } +} + +// Sanity Check functions for requests and responses +function minimumHeaders(message, ua) { + var + mandatoryHeaders = ['from', 'to', 'call_id', 'cseq', 'via'], + idx = mandatoryHeaders.length; + + while(idx--) { + if(!message.hasHeader(mandatoryHeaders[idx])) { + ua.getLogger('sip.sanitycheck').warn('Missing mandatory header field : '+ mandatoryHeaders[idx] +'. Dropping the response'); + return false; + } + } +} + +requests.push(rfc3261_8_2_2_1); +requests.push(rfc3261_16_3_4); +requests.push(rfc3261_18_3_request); +requests.push(rfc3261_8_2_2_2); + +responses.push(rfc3261_8_1_3_3); +responses.push(rfc3261_18_1_2); +responses.push(rfc3261_18_3_response); + +all.push(minimumHeaders); + +sanityCheck = function(message, ua, transport) { + var len, pass; + + len = all.length; + while(len--) { + pass = all[len](message, ua, transport); + if(pass === false) { + return false; + } + } + + if(message instanceof SIP.IncomingRequest) { + len = requests.length; + while(len--) { + pass = requests[len](message, ua, transport); + if(pass === false) { + return false; + } + } + } + + else if(message instanceof SIP.IncomingResponse) { + len = responses.length; + while(len--) { + pass = responses[len](message, ua, transport); + if(pass === false) { + return false; + } + } + } + + //Everything is OK + return true; +}; + +SIP.sanityCheck = sanityCheck; +}; + +},{}],22:[function(require,module,exports){ +"use strict"; +module.exports = function (SIP) { +var ServerContext; + +ServerContext = function (ua, request) { + this.ua = ua; + this.logger = ua.getLogger('sip.servercontext'); + this.request = request; + if (request.method === SIP.C.INVITE) { + this.transaction = new SIP.Transactions.InviteServerTransaction(request, ua); + } else { + this.transaction = new SIP.Transactions.NonInviteServerTransaction(request, ua); + } + + if (request.body) { + this.body = request.body; + } + if (request.hasHeader('Content-Type')) { + this.contentType = request.getHeader('Content-Type'); + } + this.method = request.method; + + this.data = {}; + + this.localIdentity = request.to; + this.remoteIdentity = request.from; +}; + +ServerContext.prototype = Object.create(SIP.EventEmitter.prototype); + +ServerContext.prototype.progress = function (options) { + options = Object.create(options || Object.prototype); + options.statusCode || (options.statusCode = 180); + options.minCode = 100; + options.maxCode = 199; + options.events = ['progress']; + return this.reply(options); +}; + +ServerContext.prototype.accept = function (options) { + options = Object.create(options || Object.prototype); + options.statusCode || (options.statusCode = 200); + options.minCode = 200; + options.maxCode = 299; + options.events = ['accepted']; + return this.reply(options); +}; + +ServerContext.prototype.reject = function (options) { + options = Object.create(options || Object.prototype); + options.statusCode || (options.statusCode = 480); + options.minCode = 300; + options.maxCode = 699; + options.events = ['rejected', 'failed']; + return this.reply(options); +}; + +ServerContext.prototype.reply = function (options) { + options = options || {}; // This is okay, so long as we treat options as read-only in this method + var + statusCode = options.statusCode || 100, + minCode = options.minCode || 100, + maxCode = options.maxCode || 699, + reasonPhrase = SIP.Utils.getReasonPhrase(statusCode, options.reasonPhrase), + extraHeaders = options.extraHeaders || [], + body = options.body, + events = options.events || [], + response; + + if (statusCode < minCode || statusCode > maxCode) { + throw new TypeError('Invalid statusCode: ' + statusCode); + } + response = this.request.reply(statusCode, reasonPhrase, extraHeaders, body); + events.forEach(function (event) { + this.emit(event, response, reasonPhrase); + }, this); + + return this; +}; + +ServerContext.prototype.onRequestTimeout = function () { + this.emit('failed', null, SIP.C.causes.REQUEST_TIMEOUT); +}; + +ServerContext.prototype.onTransportError = function () { + this.emit('failed', null, SIP.C.causes.CONNECTION_ERROR); +}; + +SIP.ServerContext = ServerContext; +}; + +},{}],23:[function(require,module,exports){ +"use strict"; +module.exports = function (SIP, environment) { + +var DTMF = require('./Session/DTMF')(SIP); + +var Session, InviteServerContext, InviteClientContext, + C = { + //Session states + STATUS_NULL: 0, + STATUS_INVITE_SENT: 1, + STATUS_1XX_RECEIVED: 2, + STATUS_INVITE_RECEIVED: 3, + STATUS_WAITING_FOR_ANSWER: 4, + STATUS_ANSWERED: 5, + STATUS_WAITING_FOR_PRACK: 6, + STATUS_WAITING_FOR_ACK: 7, + STATUS_CANCELED: 8, + STATUS_TERMINATED: 9, + STATUS_ANSWERED_WAITING_FOR_PRACK: 10, + STATUS_EARLY_MEDIA: 11, + STATUS_CONFIRMED: 12 + }; + +/* + * @param {function returning SIP.MediaHandler} [mediaHandlerFactory] + * (See the documentation for the mediaHandlerFactory argument of the UA constructor.) + */ +Session = function (mediaHandlerFactory) { + this.status = C.STATUS_NULL; + this.dialog = null; + this.earlyDialogs = {}; + this.mediaHandlerFactory = mediaHandlerFactory || SIP.WebRTC.MediaHandler.defaultFactory; + // this.mediaHandler gets set by ICC/ISC constructors + this.hasOffer = false; + this.hasAnswer = false; + + // Session Timers + this.timers = { + ackTimer: null, + expiresTimer: null, + invite2xxTimer: null, + userNoAnswerTimer: null, + rel1xxTimer: null, + prackTimer: null + }; + + // Session info + this.startTime = null; + this.endTime = null; + this.tones = null; + + // Mute/Hold state + this.local_hold = false; + this.remote_hold = false; + + this.pending_actions = { + actions: [], + + length: function() { + return this.actions.length; + }, + + isPending: function(name){ + var + idx = 0, + length = this.actions.length; + + for (idx; idx<length; idx++) { + if (this.actions[idx].name === name) { + return true; + } + } + return false; + }, + + shift: function() { + return this.actions.shift(); + }, + + push: function(name) { + this.actions.push({ + name: name + }); + }, + + pop: function(name) { + var + idx = 0, + length = this.actions.length; + + for (idx; idx<length; idx++) { + if (this.actions[idx].name === name) { + this.actions.splice(idx,1); + length --; + idx--; + } + } + } + }; + + this.early_sdp = null; + this.rel100 = SIP.C.supported.UNSUPPORTED; +}; + +Session.prototype = { + dtmf: function(tones, options) { + var tone, dtmfs = [], + self = this; + + options = options || {}; + + if (tones === undefined) { + throw new TypeError('Not enough arguments'); + } + + // Check Session Status + if (this.status !== C.STATUS_CONFIRMED && this.status !== C.STATUS_WAITING_FOR_ACK) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + // Check tones + if ((typeof tones !== 'string' && typeof tones !== 'number') || !tones.toString().match(/^[0-9A-D#*,]+$/i)) { + throw new TypeError('Invalid tones: '+ tones); + } + + tones = tones.toString().split(''); + + while (tones.length > 0) { dtmfs.push(new DTMF(this, tones.shift(), options)); } + + if (this.tones) { + // Tones are already queued, just add to the queue + this.tones = this.tones.concat(dtmfs); + return this; + } + + var sendDTMF = function () { + var dtmf, timeout; + + if (self.status === C.STATUS_TERMINATED || !self.tones || self.tones.length === 0) { + // Stop sending DTMF + self.tones = null; + return this; + } + + dtmf = self.tones.shift(); + + if (tone === ',') { + timeout = 2000; + } else { + dtmf.on('failed', function(){self.tones = null;}); + dtmf.send(options); + timeout = dtmf.duration + dtmf.interToneGap; + } + + // Set timeout for the next tone + SIP.Timers.setTimeout(sendDTMF, timeout); + }; + + this.tones = dtmfs; + sendDTMF(); + return this; + }, + + bye: function(options) { + options = Object.create(options || Object.prototype); + var statusCode = options.statusCode; + + // Check Session Status + if (this.status === C.STATUS_TERMINATED) { + this.logger.error('Error: Attempted to send BYE in a terminated session.'); + return this; + } + + this.logger.log('terminating Session'); + + if (statusCode && (statusCode < 200 || statusCode >= 700)) { + throw new TypeError('Invalid statusCode: '+ statusCode); + } + + options.receiveResponse = function () {}; + + return this. + sendRequest(SIP.C.BYE, options). + terminated(); + }, + + refer: function(target, options) { + options = options || {}; + var extraHeaders = (options.extraHeaders || []).slice(), + withReplaces = + target instanceof SIP.InviteServerContext || + target instanceof SIP.InviteClientContext, + originalTarget = target; + + if (target === undefined) { + throw new TypeError('Not enough arguments'); + } + + // Check Session Status + if (this.status !== C.STATUS_CONFIRMED) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + // transform `target` so that it can be a Refer-To header value + if (withReplaces) { + //Attended Transfer + // B.transfer(C) + target = '"' + target.remoteIdentity.friendlyName + '" ' + + '<' + target.dialog.remote_target.toString() + + '?Replaces=' + target.dialog.id.call_id + + '%3Bto-tag%3D' + target.dialog.id.remote_tag + + '%3Bfrom-tag%3D' + target.dialog.id.local_tag + '>'; + } else { + //Blind Transfer + // normalizeTarget allows instances of SIP.URI to pass through unaltered, + // so try to make one ahead of time + try { + target = SIP.Grammar.parse(target, 'Refer_To').uri || target; + } catch (e) { + this.logger.debug(".refer() cannot parse Refer_To from", target); + this.logger.debug("...falling through to normalizeTarget()"); + } + + // Check target validity + target = this.ua.normalizeTarget(target); + if (!target) { + throw new TypeError('Invalid target: ' + originalTarget); + } + } + + extraHeaders.push('Contact: '+ this.contact); + extraHeaders.push('Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString()); + extraHeaders.push('Refer-To: '+ target); + + // Send the request + this.sendRequest(SIP.C.REFER, { + extraHeaders: extraHeaders, + body: options.body, + receiveResponse: function (response) { + if ( ! /^2[0-9]{2}$/.test(response.status_code) ) { + return; + } + // hang up only if we transferred to a SIP address + if (withReplaces || (target.scheme && target.scheme.match("^sips?$"))) { + this.terminate(); + } + }.bind(this) + }); + return this; + }, + + followRefer: function followRefer (callback) { + return function referListener (callback, request) { + // open non-SIP URIs if possible and keep session open + var referTo = request.parseHeader('refer-to'); + var target = referTo.uri; + if (!target.scheme.match("^sips?$")) { + var targetString = target.toString(); + if (typeof environment.open === "function") { + environment.open(targetString); + } else { + this.logger.warn("referred to non-SIP URI but `open` isn't in the environment: " + targetString); + } + return; + } + + var extraHeaders = []; + + /* Copy the Replaces query into a Replaces header */ + /* TODO - make sure we don't copy a poorly formatted header? */ + var replaces = target.getHeader('Replaces'); + if (replaces !== undefined) { + extraHeaders.push('Replaces: ' + decodeURIComponent(replaces)); + } + + // don't embed headers into Request-URI of INVITE + target.clearHeaders(); + + /* + Harmless race condition. Both sides of REFER + may send a BYE, but in the end the dialogs are destroyed. + */ + var getReferMedia = this.mediaHandler.getReferMedia; + var mediaHint = getReferMedia ? getReferMedia.call(this.mediaHandler) : this.mediaHint; + + SIP.Hacks.Chrome.getsConfusedAboutGUM(this); + + var referSession = this.ua.invite(target, { + media: mediaHint, + params: { + to_displayName: referTo.friendlyName + }, + extraHeaders: extraHeaders + }); + + callback.call(this, request, referSession); + + this.terminate(); + }.bind(this, callback); + }, + + sendRequest: function(method,options) { + options = options || {}; + var self = this; + + var request = new SIP.OutgoingRequest( + method, + this.dialog.remote_target, + this.ua, + { + cseq: options.cseq || (this.dialog.local_seqnum += 1), + call_id: this.dialog.id.call_id, + from_uri: this.dialog.local_uri, + from_tag: this.dialog.id.local_tag, + to_uri: this.dialog.remote_uri, + to_tag: this.dialog.id.remote_tag, + route_set: this.dialog.route_set, + statusCode: options.statusCode, + reasonPhrase: options.reasonPhrase + }, + options.extraHeaders || [], + options.body + ); + + new SIP.RequestSender({ + request: request, + onRequestTimeout: function() { + self.onRequestTimeout(); + }, + onTransportError: function() { + self.onTransportError(); + }, + receiveResponse: options.receiveResponse || function(response) { + self.receiveNonInviteResponse(response); + } + }, this.ua).send(); + + // Emit the request event + this.emit(method.toLowerCase(), request); + + return this; + }, + + close: function() { + var idx; + + if(this.status === C.STATUS_TERMINATED) { + return this; + } + + this.logger.log('closing INVITE session ' + this.id); + + // 1st Step. Terminate media. + if (this.mediaHandler){ + this.mediaHandler.close(); + } + + // 2nd Step. Terminate signaling. + + // Clear session timers + for(idx in this.timers) { + SIP.Timers.clearTimeout(this.timers[idx]); + } + + // Terminate dialogs + + // Terminate confirmed dialog + if(this.dialog) { + this.dialog.terminate(); + delete this.dialog; + } + + // Terminate early dialogs + for(idx in this.earlyDialogs) { + this.earlyDialogs[idx].terminate(); + delete this.earlyDialogs[idx]; + } + + this.status = C.STATUS_TERMINATED; + + delete this.ua.sessions[this.id]; + return this; + }, + + createDialog: function(message, type, early) { + var dialog, early_dialog, + local_tag = message[(type === 'UAS') ? 'to_tag' : 'from_tag'], + remote_tag = message[(type === 'UAS') ? 'from_tag' : 'to_tag'], + id = message.call_id + local_tag + remote_tag; + + early_dialog = this.earlyDialogs[id]; + + // Early Dialog + if (early) { + if (early_dialog) { + return true; + } else { + early_dialog = new SIP.Dialog(this, message, type, SIP.Dialog.C.STATUS_EARLY); + + // Dialog has been successfully created. + if(early_dialog.error) { + this.logger.error(early_dialog.error); + this.failed(message, SIP.C.causes.INTERNAL_ERROR); + return false; + } else { + this.earlyDialogs[id] = early_dialog; + return true; + } + } + } + // Confirmed Dialog + else { + // In case the dialog is in _early_ state, update it + if (early_dialog) { + early_dialog.update(message, type); + this.dialog = early_dialog; + delete this.earlyDialogs[id]; + for (var dia in this.earlyDialogs) { + this.earlyDialogs[dia].terminate(); + delete this.earlyDialogs[dia]; + } + return true; + } + + // Otherwise, create a _confirmed_ dialog + dialog = new SIP.Dialog(this, message, type); + + if(dialog.error) { + this.logger.error(dialog.error); + this.failed(message, SIP.C.causes.INTERNAL_ERROR); + return false; + } else { + this.to_tag = message.to_tag; + this.dialog = dialog; + return true; + } + } + }, + + /** + * Check if Session is ready for a re-INVITE + * + * @returns {Boolean} + */ + isReadyToReinvite: function() { + return this.mediaHandler.isReady() && + !this.dialog.uac_pending_reply && + !this.dialog.uas_pending_reply; + }, + + /** + * Mute + */ + mute: function(options) { + var ret = this.mediaHandler.mute(options); + if (ret) { + this.onmute(ret); + } + }, + + /** + * Unmute + */ + unmute: function(options) { + var ret = this.mediaHandler.unmute(options); + if (ret) { + this.onunmute(ret); + } + }, + + /** + * Hold + */ + hold: function(options) { + + if (this.status !== C.STATUS_WAITING_FOR_ACK && this.status !== C.STATUS_CONFIRMED) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + this.mediaHandler.hold(); + + // Check if RTCSession is ready to send a reINVITE + if (!this.isReadyToReinvite()) { + /* If there is a pending 'unhold' action, cancel it and don't queue this one + * Else, if there isn't any 'hold' action, add this one to the queue + * Else, if there is already a 'hold' action, skip + */ + if (this.pending_actions.isPending('unhold')) { + this.pending_actions.pop('unhold'); + } else if (!this.pending_actions.isPending('hold')) { + this.pending_actions.push('hold'); + } + return; + } else if (this.local_hold === true) { + return; + } + + this.onhold('local'); + + this.sendReinvite(options); + }, + + /** + * Unhold + */ + unhold: function(options) { + + if (this.status !== C.STATUS_WAITING_FOR_ACK && this.status !== C.STATUS_CONFIRMED) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + this.mediaHandler.unhold(); + + if (!this.isReadyToReinvite()) { + /* If there is a pending 'hold' action, cancel it and don't queue this one + * Else, if there isn't any 'unhold' action, add this one to the queue + * Else, if there is already a 'unhold' action, skip + */ + if (this.pending_actions.isPending('hold')) { + this.pending_actions.pop('hold'); + } else if (!this.pending_actions.isPending('unhold')) { + this.pending_actions.push('unhold'); + } + return; + } else if (this.local_hold === false) { + return; + } + + this.onunhold('local'); + + this.sendReinvite(options); + }, + + /** + * isOnHold + */ + isOnHold: function() { + return { + local: this.local_hold, + remote: this.remote_hold + }; + }, + + /** + * In dialog INVITE Reception + * @private + */ + receiveReinvite: function(request) { + var self = this; + + if (!this.mediaHandler.hasDescription(request)) { + this.logger.warn('invalid Content-Type'); + request.reply(415); + return; + } + + this.mediaHandler.setDescription(request) + .then(this.mediaHandler.getDescription.bind(this.mediaHandler, this.mediaHint)) + .then(function(description) { + var extraHeaders = ['Contact: ' + self.contact]; + request.reply(200, null, extraHeaders, description, + function() { + self.status = C.STATUS_WAITING_FOR_ACK; + self.setInvite2xxTimer(request, description); + self.setACKTimer(); + + if (self.remote_hold && !self.mediaHandler.remote_hold) { + self.onunhold('remote'); + } else if (!self.remote_hold && self.mediaHandler.remote_hold) { + self.onhold('remote'); + } + }); + }) + .catch(function onFailure (e) { + var statusCode; + if (e instanceof SIP.Exceptions.GetDescriptionError) { + statusCode = 500; + } else { + self.logger.error(e); + statusCode = 488; + } + request.reply(statusCode); + }); + }, + + sendReinvite: function(options) { + options = options || {}; + + var + self = this, + extraHeaders = (options.extraHeaders || []).slice(), + eventHandlers = options.eventHandlers || {}, + succeeded; + + if (eventHandlers.succeeded) { + succeeded = eventHandlers.succeeded; + } + this.reinviteSucceeded = function(){ + SIP.Timers.clearTimeout(self.timers.ackTimer); + SIP.Timers.clearTimeout(self.timers.invite2xxTimer); + self.status = C.STATUS_CONFIRMED; + succeeded && succeeded.apply(this, arguments); + }; + if (eventHandlers.failed) { + this.reinviteFailed = eventHandlers.failed; + } else { + this.reinviteFailed = function(){}; + } + + extraHeaders.push('Contact: ' + this.contact); + extraHeaders.push('Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString()); + + this.receiveResponse = this.receiveReinviteResponse; + //REVISIT + this.mediaHandler.getDescription(self.mediaHint) + .then( + function(description){ + self.dialog.sendRequest(self, SIP.C.INVITE, { + extraHeaders: extraHeaders, + body: description + }); + }, + function() { + if (self.isReadyToReinvite()) { + self.onReadyToReinvite(); + } + self.reinviteFailed(); + } + ); + }, + + receiveRequest: function (request) { + switch (request.method) { + case SIP.C.BYE: + request.reply(200); + if(this.status === C.STATUS_CONFIRMED) { + this.emit('bye', request); + this.terminated(request, SIP.C.causes.BYE); + } + break; + case SIP.C.INVITE: + if(this.status === C.STATUS_CONFIRMED) { + this.logger.log('re-INVITE received'); + this.receiveReinvite(request); + } + break; + case SIP.C.INFO: + if(this.status === C.STATUS_CONFIRMED || this.status === C.STATUS_WAITING_FOR_ACK) { + if (this.onInfo) { + return this.onInfo(request); + } + + var body, tone, duration, + contentType = request.getHeader('content-type'), + reg_tone = /^(Signal\s*?=\s*?)([0-9A-D#*]{1})(\s)?.*/, + reg_duration = /^(Duration\s?=\s?)([0-9]{1,4})(\s)?.*/; + + if (contentType) { + if (contentType.match(/^application\/dtmf-relay/i)) { + if (request.body) { + body = request.body.split('\r\n', 2); + if (body.length === 2) { + if (reg_tone.test(body[0])) { + tone = body[0].replace(reg_tone,"$2"); + } + if (reg_duration.test(body[1])) { + duration = parseInt(body[1].replace(reg_duration,"$2"), 10); + } + } + } + + new DTMF(this, tone, {duration: duration}).init_incoming(request); + } else { + request.reply(415, null, ["Accept: application/dtmf-relay"]); + } + } + } + break; + case SIP.C.REFER: + if(this.status === C.STATUS_CONFIRMED) { + this.logger.log('REFER received'); + var hasReferListener = this.listeners('refer').length, + notifyBody; + + if (hasReferListener) { + request.reply(202, 'Accepted'); + notifyBody = 'SIP/2.0 100 Trying'; + + this.sendRequest(SIP.C.NOTIFY, { + extraHeaders:[ + 'Event: refer', + 'Subscription-State: terminated', + 'Content-Type: message/sipfrag' + ], + body: notifyBody, + receiveResponse: function() {} + }); + + this.emit('refer', request); + } else { + // RFC 3515.2.4.2: 'the UA MAY decline the request.' + request.reply(603, 'Declined'); + } + } + break; + case SIP.C.NOTIFY: + request.reply(200, 'OK'); + this.emit('notify', request); + break; + } + }, + + /** + * Reception of Response for in-dialog INVITE + * @private + */ + receiveReinviteResponse: function(response) { + var self = this; + + if (this.status === C.STATUS_TERMINATED) { + return; + } + + switch(true) { + case /^1[0-9]{2}$/.test(response.status_code): + break; + case /^2[0-9]{2}$/.test(response.status_code): + this.status = C.STATUS_CONFIRMED; + + this.sendRequest(SIP.C.ACK,{cseq:response.cseq}); + + if (!this.mediaHandler.hasDescription(response)) { + this.reinviteFailed(); + break; + } + + //REVISIT + this.mediaHandler.setDescription(response) + .then( + function onSuccess () { + self.reinviteSucceeded(); + }, + function onFailure () { + self.reinviteFailed(); + } + ); + break; + default: + this.reinviteFailed(); + } + }, + + acceptAndTerminate: function(response, status_code, reason_phrase) { + var extraHeaders = []; + + if (status_code) { + extraHeaders.push('Reason: ' + SIP.Utils.getReasonHeaderValue(status_code, reason_phrase)); + } + + // An error on dialog creation will fire 'failed' event + if (this.dialog || this.createDialog(response, 'UAC')) { + this.sendRequest(SIP.C.ACK,{cseq: response.cseq}); + this.sendRequest(SIP.C.BYE, { + extraHeaders: extraHeaders + }); + } + + return this; + }, + + /** + * RFC3261 13.3.1.4 + * Response retransmissions cannot be accomplished by transaction layer + * since it is destroyed when receiving the first 2xx answer + */ + setInvite2xxTimer: function(request, description) { + var self = this, + timeout = SIP.Timers.T1; + + this.timers.invite2xxTimer = SIP.Timers.setTimeout(function invite2xxRetransmission() { + if (self.status !== C.STATUS_WAITING_FOR_ACK) { + return; + } + + self.logger.log('no ACK received, attempting to retransmit OK'); + + var extraHeaders = ['Contact: ' + self.contact]; + + request.reply(200, null, extraHeaders, description); + + timeout = Math.min(timeout * 2, SIP.Timers.T2); + + self.timers.invite2xxTimer = SIP.Timers.setTimeout(invite2xxRetransmission, timeout); + }, timeout); + }, + + /** + * RFC3261 14.2 + * If a UAS generates a 2xx response and never receives an ACK, + * it SHOULD generate a BYE to terminate the dialog. + */ + setACKTimer: function() { + var self = this; + + this.timers.ackTimer = SIP.Timers.setTimeout(function() { + if(self.status === C.STATUS_WAITING_FOR_ACK) { + self.logger.log('no ACK received for an extended period of time, terminating the call'); + SIP.Timers.clearTimeout(self.timers.invite2xxTimer); + self.sendRequest(SIP.C.BYE); + self.terminated(null, SIP.C.causes.NO_ACK); + } + }, SIP.Timers.TIMER_H); + }, + + /* + * @private + */ + onReadyToReinvite: function() { + var action = this.pending_actions.shift(); + + if (!action || !this[action.name]) { + return; + } + + this[action.name](); + }, + + onTransportError: function() { + if (this.status !== C.STATUS_CONFIRMED && this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.CONNECTION_ERROR); + } + }, + + onRequestTimeout: function() { + if (this.status === C.STATUS_CONFIRMED) { + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } else if (this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.REQUEST_TIMEOUT); + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } + }, + + onDialogError: function(response) { + if (this.status === C.STATUS_CONFIRMED) { + this.terminated(response, SIP.C.causes.DIALOG_ERROR); + } else if (this.status !== C.STATUS_TERMINATED) { + this.failed(response, SIP.C.causes.DIALOG_ERROR); + this.terminated(response, SIP.C.causes.DIALOG_ERROR); + } + }, + + /** + * @private + */ + onhold: function(originator) { + this[originator === 'local' ? 'local_hold' : 'remote_hold'] = true; + this.emit('hold', { originator: originator }); + }, + + /** + * @private + */ + onunhold: function(originator) { + this[originator === 'local' ? 'local_hold' : 'remote_hold'] = false; + this.emit('unhold', { originator: originator }); + }, + + /* + * @private + */ + onmute: function(options) { + this.emit('muted', { + audio: options.audio, + video: options.video + }); + }, + + /* + * @private + */ + onunmute: function(options) { + this.emit('unmuted', { + audio: options.audio, + video: options.video + }); + }, + + failed: function(response, cause) { + if (this.status === C.STATUS_TERMINATED) { + return this; + } + this.emit('failed', response || null, cause || null); + return this; + }, + + rejected: function(response, cause) { + this.emit('rejected', + response || null, + cause || null + ); + return this; + }, + + canceled: function() { + this.emit('cancel'); + return this; + }, + + accepted: function(response, cause) { + cause = SIP.Utils.getReasonPhrase(response && response.status_code, cause); + + this.startTime = new Date(); + + if (this.replacee) { + this.replacee.emit('replaced', this); + this.replacee.terminate(); + } + this.emit('accepted', response, cause); + return this; + }, + + terminated: function(message, cause) { + if (this.status === C.STATUS_TERMINATED) { + return this; + } + + this.endTime = new Date(); + + this.close(); + this.emit('terminated', + message || null, + cause || null + ); + return this; + }, + + connecting: function(request) { + this.emit('connecting', { request: request }); + return this; + } +}; + +Session.desugar = function desugar(options) { + if (environment.HTMLMediaElement && options instanceof environment.HTMLMediaElement) { + options = { + media: { + constraints: { + audio: true, + video: options.tagName === 'VIDEO' + }, + render: { + remote: options + } + } + }; + } + return options || {}; +}; + + +Session.C = C; +SIP.Session = Session; + + +InviteServerContext = function(ua, request) { + var expires, + self = this, + contentType = request.getHeader('Content-Type'), + contentDisp = request.parseHeader('Content-Disposition'); + + SIP.Utils.augment(this, SIP.ServerContext, [ua, request]); + SIP.Utils.augment(this, SIP.Session, [ua.configuration.mediaHandlerFactory]); + + //Initialize Media Session + this.mediaHandler = this.mediaHandlerFactory(this, { + RTCConstraints: {"optional": [{'DtlsSrtpKeyAgreement': 'true'}]} + }); + + // Check body and content type + if ((!contentDisp && !this.mediaHandler.hasDescription(request)) || (contentDisp && contentDisp.type === 'render')) { + this.renderbody = request.body; + this.rendertype = contentType; + } else if (!this.mediaHandler.hasDescription(request) && (contentDisp && contentDisp.type === 'session')) { + request.reply(415); + //TODO: instead of 415, pass off to the media handler, who can then decide if we can use it + return; + } + + this.status = C.STATUS_INVITE_RECEIVED; + this.from_tag = request.from_tag; + this.id = request.call_id + this.from_tag; + this.request = request; + this.contact = this.ua.contact.toString(); + + this.receiveNonInviteResponse = function () {}; // intentional no-op + + this.logger = ua.getLogger('sip.inviteservercontext', this.id); + + //Save the session into the ua sessions collection. + this.ua.sessions[this.id] = this; + + //Get the Expires header value if exists + if(request.hasHeader('expires')) { + expires = request.getHeader('expires') * 1000; + } + + //Set 100rel if necessary + function set100rel(h,c) { + if (request.hasHeader(h) && request.getHeader(h).toLowerCase().indexOf('100rel') >= 0) { + self.rel100 = c; + } + } + set100rel('require', SIP.C.supported.REQUIRED); + set100rel('supported', SIP.C.supported.SUPPORTED); + + /* Set the to_tag before + * replying a response code that will create a dialog. + */ + request.to_tag = SIP.Utils.newTag(); + + // An error on dialog creation will fire 'failed' event + if(!this.createDialog(request, 'UAS', true)) { + request.reply(500, 'Missing Contact header field'); + return; + } + + if (this.mediaHandler && this.mediaHandler.getRemoteStreams) { + this.getRemoteStreams = this.mediaHandler.getRemoteStreams.bind(this.mediaHandler); + this.getLocalStreams = this.mediaHandler.getLocalStreams.bind(this.mediaHandler); + } + + function fireNewSession() { + var options = {extraHeaders: ['Contact: ' + self.contact]}; + + if (self.rel100 !== SIP.C.supported.REQUIRED) { + self.progress(options); + } + self.status = C.STATUS_WAITING_FOR_ANSWER; + + // Set userNoAnswerTimer + self.timers.userNoAnswerTimer = SIP.Timers.setTimeout(function() { + request.reply(408); + self.failed(request, SIP.C.causes.NO_ANSWER); + self.terminated(request, SIP.C.causes.NO_ANSWER); + }, self.ua.configuration.noAnswerTimeout); + + /* Set expiresTimer + * RFC3261 13.3.1 + */ + if (expires) { + self.timers.expiresTimer = SIP.Timers.setTimeout(function() { + if(self.status === C.STATUS_WAITING_FOR_ANSWER) { + request.reply(487); + self.failed(request, SIP.C.causes.EXPIRES); + self.terminated(request, SIP.C.causes.EXPIRES); + } + }, expires); + } + + self.emit('invite',request); + } + + if (!this.mediaHandler.hasDescription(request) || this.renderbody) { + SIP.Timers.setTimeout(fireNewSession, 0); + } else { + this.hasOffer = true; + this.mediaHandler.setDescription(request) + .then( + fireNewSession, + function onFailure (e) { + self.logger.warn('invalid description'); + self.logger.warn(e); + request.reply(488); + } + ); + } +}; + +InviteServerContext.prototype = { + reject: function(options) { + // Check Session Status + if (this.status === C.STATUS_TERMINATED) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + this.logger.log('rejecting RTCSession'); + + SIP.ServerContext.prototype.reject.call(this, options); + return this.terminated(); + }, + + terminate: function(options) { + options = options || {}; + + var + extraHeaders = (options.extraHeaders || []).slice(), + body = options.body, + dialog, + self = this; + + if (this.status === C.STATUS_WAITING_FOR_ACK && + this.request.server_transaction.state !== SIP.Transactions.C.STATUS_TERMINATED) { + dialog = this.dialog; + + this.receiveRequest = function(request) { + if (request.method === SIP.C.ACK) { + this.sendRequest(SIP.C.BYE, { + extraHeaders: extraHeaders, + body: body + }); + dialog.terminate(); + } + }; + + this.request.server_transaction.on('stateChanged', function(){ + if (this.state === SIP.Transactions.C.STATUS_TERMINATED && this.dialog) { + this.request = new SIP.OutgoingRequest( + SIP.C.BYE, + this.dialog.remote_target, + this.ua, + { + 'cseq': this.dialog.local_seqnum+=1, + 'call_id': this.dialog.id.call_id, + 'from_uri': this.dialog.local_uri, + 'from_tag': this.dialog.id.local_tag, + 'to_uri': this.dialog.remote_uri, + 'to_tag': this.dialog.id.remote_tag, + 'route_set': this.dialog.route_set + }, + extraHeaders, + body + ); + + new SIP.RequestSender( + { + request: this.request, + onRequestTimeout: function() { + self.onRequestTimeout(); + }, + onTransportError: function() { + self.onTransportError(); + }, + receiveResponse: function() { + return; + } + }, + this.ua + ).send(); + dialog.terminate(); + } + }); + + this.emit('bye', this.request); + this.terminated(); + + // Restore the dialog into 'this' in order to be able to send the in-dialog BYE :-) + this.dialog = dialog; + + // Restore the dialog into 'ua' so the ACK can reach 'this' session + this.ua.dialogs[dialog.id.toString()] = dialog; + + } else if (this.status === C.STATUS_CONFIRMED) { + this.bye(options); + } else { + this.reject(options); + } + + return this; + }, + + /* + * @param {Object} [options.media] gets passed to SIP.MediaHandler.getDescription as mediaHint + */ + progress: function (options) { + options = options || {}; + var + statusCode = options.statusCode || 180, + reasonPhrase = options.reasonPhrase, + extraHeaders = (options.extraHeaders || []).slice(), + iceServers, + stunServers = options.stunServers || null, + turnServers = options.turnServers || null, + body = options.body, + response; + + if (statusCode < 100 || statusCode > 199) { + throw new TypeError('Invalid statusCode: ' + statusCode); + } + + if (this.isCanceled || this.status === C.STATUS_TERMINATED) { + return this; + } + + if (stunServers || turnServers) { + if (stunServers) { + iceServers = this.ua.getConfigurationCheck().optional['stunServers'](stunServers); + if (!iceServers) { + throw new TypeError('Invalid stunServers: '+ stunServers); + } else { + this.stunServers = iceServers; + } + } + + if (turnServers) { + iceServers = this.ua.getConfigurationCheck().optional['turnServers'](turnServers); + if (!iceServers) { + throw new TypeError('Invalid turnServers: '+ turnServers); + } else { + this.turnServers = iceServers; + } + } + + this.mediaHandler.updateIceServers({ + stunServers: this.stunServers, + turnServers: this.turnServers + }); + } + + function do100rel() { + /* jshint validthis: true */ + statusCode = options.statusCode || 183; + + // Set status and add extra headers + this.status = C.STATUS_WAITING_FOR_PRACK; + extraHeaders.push('Contact: '+ this.contact); + extraHeaders.push('Require: 100rel'); + extraHeaders.push('RSeq: ' + Math.floor(Math.random() * 10000)); + + // Save media hint for later (referred sessions) + this.mediaHint = options.media; + + // Get the session description to add to preaccept with + this.mediaHandler.getDescription(options.media) + .then( + function onSuccess (description) { + if (this.isCanceled || this.status === C.STATUS_TERMINATED) { + return; + } + + this.early_sdp = description.body; + this[this.hasOffer ? 'hasAnswer' : 'hasOffer'] = true; + + // Retransmit until we get a response or we time out (see prackTimer below) + var timeout = SIP.Timers.T1; + this.timers.rel1xxTimer = SIP.Timers.setTimeout(function rel1xxRetransmission() { + this.request.reply(statusCode, null, extraHeaders, description); + timeout *= 2; + this.timers.rel1xxTimer = SIP.Timers.setTimeout(rel1xxRetransmission.bind(this), timeout); + }.bind(this), timeout); + + // Timeout and reject INVITE if no response + this.timers.prackTimer = SIP.Timers.setTimeout(function () { + if (this.status !== C.STATUS_WAITING_FOR_PRACK) { + return; + } + + this.logger.log('no PRACK received, rejecting the call'); + SIP.Timers.clearTimeout(this.timers.rel1xxTimer); + this.request.reply(504); + this.terminated(null, SIP.C.causes.NO_PRACK); + }.bind(this), SIP.Timers.T1 * 64); + + // Send the initial response + response = this.request.reply(statusCode, reasonPhrase, extraHeaders, description); + this.emit('progress', response, reasonPhrase); + }.bind(this), + + function onFailure () { + this.request.reply(480); + this.failed(null, SIP.C.causes.WEBRTC_ERROR); + this.terminated(null, SIP.C.causes.WEBRTC_ERROR); + }.bind(this) + ); + } // end do100rel + + function normalReply() { + /* jshint validthis:true */ + response = this.request.reply(statusCode, reasonPhrase, extraHeaders, body); + this.emit('progress', response, reasonPhrase); + } + + if (options.statusCode !== 100 && + (this.rel100 === SIP.C.supported.REQUIRED || + (this.rel100 === SIP.C.supported.SUPPORTED && options.rel100) || + (this.rel100 === SIP.C.supported.SUPPORTED && (this.ua.configuration.rel100 === SIP.C.supported.REQUIRED)))) { + do100rel.apply(this); + } else { + normalReply.apply(this); + } + return this; + }, + + /* + * @param {Object} [options.media] gets passed to SIP.MediaHandler.getDescription as mediaHint + */ + accept: function(options) { + options = Object.create(Session.desugar(options)); + SIP.Utils.optionsOverride(options, 'media', 'mediaConstraints', true, this.logger, this.ua.configuration.media); + this.mediaHint = options.media; + + this.onInfo = options.onInfo; + + // commented out now-unused hold-related variables for jshint. See below. JMF 2014-1-21 + var + //idx, length, hasAudio, hasVideo, + self = this, + request = this.request, + extraHeaders = (options.extraHeaders || []).slice(), + //mediaStream = options.mediaStream || null, + iceServers, + stunServers = options.stunServers || null, + turnServers = options.turnServers || null, + descriptionCreationSucceeded = function(description) { + var + response, + // run for reply success callback + replySucceeded = function() { + self.status = C.STATUS_WAITING_FOR_ACK; + + self.setInvite2xxTimer(request, description); + self.setACKTimer(); + }, + + // run for reply failure callback + replyFailed = function() { + self.failed(null, SIP.C.causes.CONNECTION_ERROR); + self.terminated(null, SIP.C.causes.CONNECTION_ERROR); + }; + + // Chrome might call onaddstream before accept() is called, which means + // mediaHandler.render() was called without a renderHint, so we need to + // re-render now that mediaHint.render has been set. + // + // Chrome seems to be in the right regarding this, see + // http://dev.w3.org/2011/webrtc/editor/webrtc.html#widl-RTCPeerConnection-onaddstream + self.mediaHandler.render(); + + extraHeaders.push('Contact: ' + self.contact); + extraHeaders.push('Allow: ' + SIP.UA.C.ALLOWED_METHODS.toString()); + + if(!self.hasOffer) { + self.hasOffer = true; + } else { + self.hasAnswer = true; + } + response = request.reply(200, null, extraHeaders, + description, + replySucceeded, + replyFailed + ); + if (self.status !== C.STATUS_TERMINATED) { // Didn't fail + self.accepted(response, SIP.Utils.getReasonPhrase(200)); + } + }, + + descriptionCreationFailed = function() { + if (self.status === C.STATUS_TERMINATED) { + return; + } + // TODO - fail out on error + self.request.reply(480); + //self.failed(response, SIP.C.causes.USER_DENIED_MEDIA_ACCESS); + self.failed(null, SIP.C.causes.WEBRTC_ERROR); + self.terminated(null, SIP.C.causes.WEBRTC_ERROR); + }; + + // Check Session Status + if (this.status === C.STATUS_WAITING_FOR_PRACK) { + this.status = C.STATUS_ANSWERED_WAITING_FOR_PRACK; + return this; + } else if (this.status === C.STATUS_WAITING_FOR_ANSWER) { + this.status = C.STATUS_ANSWERED; + } else if (this.status !== C.STATUS_EARLY_MEDIA) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + if ((stunServers || turnServers) && + (this.status !== C.STATUS_EARLY_MEDIA && this.status !== C.STATUS_ANSWERED_WAITING_FOR_PRACK)) { + if (stunServers) { + iceServers = this.ua.getConfigurationCheck().optional['stunServers'](stunServers); + if (!iceServers) { + throw new TypeError('Invalid stunServers: '+ stunServers); + } else { + this.stunServers = iceServers; + } + } + + if (turnServers) { + iceServers = this.ua.getConfigurationCheck().optional['turnServers'](turnServers); + if (!iceServers) { + throw new TypeError('Invalid turnServers: '+ turnServers); + } else { + this.turnServers = iceServers; + } + } + + this.mediaHandler.updateIceServers({ + stunServers: this.stunServers, + turnServers: this.turnServers + }); + } + + // An error on dialog creation will fire 'failed' event + if(!this.createDialog(request, 'UAS')) { + request.reply(500, 'Missing Contact header field'); + return this; + } + + SIP.Timers.clearTimeout(this.timers.userNoAnswerTimer); + + // this hold-related code breaks FF accepting new calls - JMF 2014-1-21 + /* + length = this.getRemoteStreams().length; + + for (idx = 0; idx < length; idx++) { + if (this.mediaHandler.getRemoteStreams()[idx].getVideoTracks().length > 0) { + hasVideo = true; + } + if (this.mediaHandler.getRemoteStreams()[idx].getAudioTracks().length > 0) { + hasAudio = true; + } + } + + if (!hasAudio && this.mediaConstraints.audio === true) { + this.mediaConstraints.audio = false; + if (mediaStream) { + length = mediaStream.getAudioTracks().length; + for (idx = 0; idx < length; idx++) { + mediaStream.removeTrack(mediaStream.getAudioTracks()[idx]); + } + } + } + + if (!hasVideo && this.mediaConstraints.video === true) { + this.mediaConstraints.video = false; + if (mediaStream) { + length = mediaStream.getVideoTracks().length; + for (idx = 0; idx < length; idx++) { + mediaStream.removeTrack(mediaStream.getVideoTracks()[idx]); + } + } + } + */ + + if (this.status === C.STATUS_EARLY_MEDIA) { + descriptionCreationSucceeded({}); + } else { + this.mediaHandler.getDescription(self.mediaHint) + .then( + descriptionCreationSucceeded, + descriptionCreationFailed + ); + } + + return this; + }, + + receiveRequest: function(request) { + + // ISC RECEIVE REQUEST + + function confirmSession() { + /* jshint validthis:true */ + var contentType; + + SIP.Timers.clearTimeout(this.timers.ackTimer); + SIP.Timers.clearTimeout(this.timers.invite2xxTimer); + this.status = C.STATUS_CONFIRMED; + this.unmute(); + + // TODO - this logic assumes Content-Disposition defaults + contentType = request.getHeader('Content-Type'); + if (!this.mediaHandler.hasDescription(request)) { + this.renderbody = request.body; + this.rendertype = contentType; + } + + this.emit('confirmed', request); + } + + switch(request.method) { + case SIP.C.CANCEL: + /* RFC3261 15 States that a UAS may have accepted an invitation while a CANCEL + * was in progress and that the UAC MAY continue with the session established by + * any 2xx response, or MAY terminate with BYE. SIP does continue with the + * established session. So the CANCEL is processed only if the session is not yet + * established. + */ + + /* + * Terminate the whole session in case the user didn't accept (or yet to send the answer) nor reject the + *request opening the session. + */ + if(this.status === C.STATUS_WAITING_FOR_ANSWER || + this.status === C.STATUS_WAITING_FOR_PRACK || + this.status === C.STATUS_ANSWERED_WAITING_FOR_PRACK || + this.status === C.STATUS_EARLY_MEDIA || + this.status === C.STATUS_ANSWERED) { + + this.status = C.STATUS_CANCELED; + this.request.reply(487); + this.canceled(request); + this.rejected(request, SIP.C.causes.CANCELED); + this.failed(request, SIP.C.causes.CANCELED); + this.terminated(request, SIP.C.causes.CANCELED); + } + break; + case SIP.C.ACK: + if(this.status === C.STATUS_WAITING_FOR_ACK) { + if (!this.hasAnswer) { + if(this.mediaHandler.hasDescription(request)) { + // ACK contains answer to an INVITE w/o SDP negotiation + this.hasAnswer = true; + this.mediaHandler.setDescription(request) + .then( + confirmSession.bind(this), + function onFailure (e) { + this.logger.warn(e); + this.terminate({ + statusCode: '488', + reasonPhrase: 'Bad Media Description' + }); + this.failed(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + this.terminated(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + }.bind(this) + ); + } else if (this.early_sdp) { + confirmSession.apply(this); + } else { + //TODO: Pass to mediahandler + this.failed(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + this.terminated(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + } + } else { + confirmSession.apply(this); + } + } + break; + case SIP.C.PRACK: + if (this.status === C.STATUS_WAITING_FOR_PRACK || this.status === C.STATUS_ANSWERED_WAITING_FOR_PRACK) { + //localMedia = session.mediaHandler.localMedia; + if(!this.hasAnswer) { + if(this.mediaHandler.hasDescription(request)) { + this.hasAnswer = true; + this.mediaHandler.setDescription(request) + .then( + function onSuccess () { + SIP.Timers.clearTimeout(this.timers.rel1xxTimer); + SIP.Timers.clearTimeout(this.timers.prackTimer); + request.reply(200); + if (this.status === C.STATUS_ANSWERED_WAITING_FOR_PRACK) { + this.status = C.STATUS_EARLY_MEDIA; + this.accept(); + } + this.status = C.STATUS_EARLY_MEDIA; + //REVISIT + this.mute(); + }.bind(this), + function onFailure (e) { + //TODO: Send to media handler + this.logger.warn(e); + this.terminate({ + statusCode: '488', + reasonPhrase: 'Bad Media Description' + }); + this.failed(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + this.terminated(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + }.bind(this) + ); + } else { + this.terminate({ + statusCode: '488', + reasonPhrase: 'Bad Media Description' + }); + this.failed(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + this.terminated(request, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + } + } else { + SIP.Timers.clearTimeout(this.timers.rel1xxTimer); + SIP.Timers.clearTimeout(this.timers.prackTimer); + request.reply(200); + + if (this.status === C.STATUS_ANSWERED_WAITING_FOR_PRACK) { + this.status = C.STATUS_EARLY_MEDIA; + this.accept(); + } + this.status = C.STATUS_EARLY_MEDIA; + //REVISIT + this.mute(); + } + } else if(this.status === C.STATUS_EARLY_MEDIA) { + request.reply(200); + } + break; + default: + Session.prototype.receiveRequest.apply(this, [request]); + break; + } + }, + + onTransportError: function() { + if (this.status !== C.STATUS_CONFIRMED && this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.CONNECTION_ERROR); + } + }, + + onRequestTimeout: function() { + if (this.status === C.STATUS_CONFIRMED) { + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } else if (this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.REQUEST_TIMEOUT); + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } + } + +}; + +SIP.InviteServerContext = InviteServerContext; + +InviteClientContext = function(ua, target, options) { + options = Object.create(Session.desugar(options)); + options.params = Object.create(options.params || Object.prototype); + + var iceServers, + extraHeaders = (options.extraHeaders || []).slice(), + stunServers = options.stunServers || null, + turnServers = options.turnServers || null, + mediaHandlerFactory = options.mediaHandlerFactory || ua.configuration.mediaHandlerFactory, + isMediaSupported = mediaHandlerFactory.isSupported; + + // Check WebRTC support + if (isMediaSupported && !isMediaSupported()) { + throw new SIP.Exceptions.NotSupportedError('Media not supported'); + } + + this.RTCConstraints = options.RTCConstraints || {}; + this.inviteWithoutSdp = options.inviteWithoutSdp || false; + + // Set anonymous property + this.anonymous = options.anonymous || false; + + // Custom data to be sent either in INVITE or in ACK + this.renderbody = options.renderbody || null; + this.rendertype = options.rendertype || 'text/plain'; + + options.params.from_tag = this.from_tag; + + /* Do not add ;ob in initial forming dialog requests if the registration over + * the current connection got a GRUU URI. + */ + this.contact = ua.contact.toString({ + anonymous: this.anonymous, + outbound: this.anonymous ? !ua.contact.temp_gruu : !ua.contact.pub_gruu + }); + + if (this.anonymous) { + options.params.from_displayName = 'Anonymous'; + options.params.from_uri = 'sip:anonymous@anonymous.invalid'; + + extraHeaders.push('P-Preferred-Identity: '+ ua.configuration.uri.toString()); + extraHeaders.push('Privacy: id'); + } + extraHeaders.push('Contact: '+ this.contact); + extraHeaders.push('Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString()); + if (this.inviteWithoutSdp && this.renderbody) { + extraHeaders.push('Content-Type: ' + this.rendertype); + extraHeaders.push('Content-Disposition: render;handling=optional'); + } + + if (ua.configuration.rel100 === SIP.C.supported.REQUIRED) { + extraHeaders.push('Require: 100rel'); + } + if (ua.configuration.replaces === SIP.C.supported.REQUIRED) { + extraHeaders.push('Require: replaces'); + } + + options.extraHeaders = extraHeaders; + + SIP.Utils.augment(this, SIP.ClientContext, [ua, SIP.C.INVITE, target, options]); + SIP.Utils.augment(this, SIP.Session, [mediaHandlerFactory]); + + // Check Session Status + if (this.status !== C.STATUS_NULL) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + // Session parameter initialization + this.from_tag = SIP.Utils.newTag(); + + // OutgoingSession specific parameters + this.isCanceled = false; + this.received_100 = false; + + this.method = SIP.C.INVITE; + + this.receiveNonInviteResponse = this.receiveResponse; + this.receiveResponse = this.receiveInviteResponse; + + this.logger = ua.getLogger('sip.inviteclientcontext'); + + if (stunServers) { + iceServers = this.ua.getConfigurationCheck().optional['stunServers'](stunServers); + if (!iceServers) { + throw new TypeError('Invalid stunServers: '+ stunServers); + } else { + this.stunServers = iceServers; + } + } + + if (turnServers) { + iceServers = this.ua.getConfigurationCheck().optional['turnServers'](turnServers); + if (!iceServers) { + throw new TypeError('Invalid turnServers: '+ turnServers); + } else { + this.turnServers = iceServers; + } + } + + ua.applicants[this] = this; + + this.id = this.request.call_id + this.from_tag; + + //Initialize Media Session + this.mediaHandler = this.mediaHandlerFactory(this, { + RTCConstraints: this.RTCConstraints, + stunServers: this.stunServers, + turnServers: this.turnServers + }); + + if (this.mediaHandler && this.mediaHandler.getRemoteStreams) { + this.getRemoteStreams = this.mediaHandler.getRemoteStreams.bind(this.mediaHandler); + this.getLocalStreams = this.mediaHandler.getLocalStreams.bind(this.mediaHandler); + } + + SIP.Utils.optionsOverride(options, 'media', 'mediaConstraints', true, this.logger, this.ua.configuration.media); + this.mediaHint = options.media; + + this.onInfo = options.onInfo; +}; + +InviteClientContext.prototype = { + invite: function () { + var self = this; + + //Save the session into the ua sessions collection. + //Note: placing in constructor breaks call to request.cancel on close... User does not need this anyway + this.ua.sessions[this.id] = this; + + //Note: due to the way Firefox handles gUM calls, it is recommended to make the gUM call at the app level + // and hand sip.js a stream as the mediaHint + if (this.inviteWithoutSdp) { + //just send an invite with no sdp... + this.request.body = self.renderbody; + this.status = C.STATUS_INVITE_SENT; + this.send(); + } else { + this.mediaHandler.getDescription(self.mediaHint) + .then( + function onSuccess(description) { + if (self.isCanceled || self.status === C.STATUS_TERMINATED) { + return; + } + self.hasOffer = true; + self.request.body = description; + self.status = C.STATUS_INVITE_SENT; + self.send(); + }, + function onFailure() { + if (self.status === C.STATUS_TERMINATED) { + return; + } + // TODO...fail out + //self.failed(null, SIP.C.causes.USER_DENIED_MEDIA_ACCESS); + //self.failed(null, SIP.C.causes.WEBRTC_ERROR); + self.failed(null, SIP.C.causes.WEBRTC_ERROR); + self.terminated(null, SIP.C.causes.WEBRTC_ERROR); + } + ); + } + + return this; + }, + + receiveInviteResponse: function(response) { + var cause, //localMedia, + session = this, + id = response.call_id + response.from_tag + response.to_tag, + extraHeaders = [], + options = {}; + + if (this.status === C.STATUS_TERMINATED || response.method !== SIP.C.INVITE) { + return; + } + + if (this.dialog && (response.status_code >= 200 && response.status_code <= 299)) { + if (id !== this.dialog.id.toString() ) { + if (!this.createDialog(response, 'UAC', true)) { + return; + } + this.earlyDialogs[id].sendRequest(this, SIP.C.ACK, + { + body: SIP.Utils.generateFakeSDP(response.body) + }); + this.earlyDialogs[id].sendRequest(this, SIP.C.BYE); + + /* NOTE: This fails because the forking proxy does not recognize that an unanswerable + * leg (due to peerConnection limitations) has been answered first. If your forking + * proxy does not hang up all unanswered branches on the first branch answered, remove this. + */ + if(this.status !== C.STATUS_CONFIRMED) { + this.failed(response, SIP.C.causes.WEBRTC_ERROR); + this.terminated(response, SIP.C.causes.WEBRTC_ERROR); + } + return; + } else if (this.status === C.STATUS_CONFIRMED) { + this.sendRequest(SIP.C.ACK,{cseq: response.cseq}); + return; + } else if (!this.hasAnswer) { + // invite w/o sdp is waiting for callback + //an invite with sdp must go on, and hasAnswer is true + return; + } + } + + if (this.dialog && response.status_code < 200) { + /* + Early media has been set up with at least one other different branch, + but a final 2xx response hasn't been received + */ + if (this.dialog.pracked.indexOf(response.getHeader('rseq')) !== -1 || + (this.dialog.pracked[this.dialog.pracked.length-1] >= response.getHeader('rseq') && this.dialog.pracked.length > 0)) { + return; + } + + if (!this.earlyDialogs[id] && !this.createDialog(response, 'UAC', true)) { + return; + } + + if (this.earlyDialogs[id].pracked.indexOf(response.getHeader('rseq')) !== -1 || + (this.earlyDialogs[id].pracked[this.earlyDialogs[id].pracked.length-1] >= response.getHeader('rseq') && this.earlyDialogs[id].pracked.length > 0)) { + return; + } + + extraHeaders.push('RAck: ' + response.getHeader('rseq') + ' ' + response.getHeader('cseq')); + this.earlyDialogs[id].pracked.push(response.getHeader('rseq')); + + this.earlyDialogs[id].sendRequest(this, SIP.C.PRACK, { + extraHeaders: extraHeaders, + body: SIP.Utils.generateFakeSDP(response.body) + }); + return; + } + + // Proceed to cancellation if the user requested. + if(this.isCanceled) { + if(response.status_code >= 100 && response.status_code < 200) { + this.request.cancel(this.cancelReason, extraHeaders); + this.canceled(null); + } else if(response.status_code >= 200 && response.status_code < 299) { + this.acceptAndTerminate(response); + this.emit('bye', this.request); + } else if (response.status_code >= 300) { + cause = SIP.C.REASON_PHRASE[response.status_code] || SIP.C.causes.CANCELED; + this.rejected(response, cause); + this.failed(response, cause); + this.terminated(response, cause); + } + return; + } + + switch(true) { + case /^100$/.test(response.status_code): + this.received_100 = true; + this.emit('progress', response); + break; + case (/^1[0-9]{2}$/.test(response.status_code)): + // Do nothing with 1xx responses without To tag. + if(!response.to_tag) { + this.logger.warn('1xx response received without to tag'); + break; + } + + // Create Early Dialog if 1XX comes with contact + if(response.hasHeader('contact')) { + // An error on dialog creation will fire 'failed' event + if (!this.createDialog(response, 'UAC', true)) { + break; + } + } + + this.status = C.STATUS_1XX_RECEIVED; + + if(response.hasHeader('require') && + response.getHeader('require').indexOf('100rel') !== -1) { + + // Do nothing if this.dialog is already confirmed + if (this.dialog || !this.earlyDialogs[id]) { + break; + } + + if (this.earlyDialogs[id].pracked.indexOf(response.getHeader('rseq')) !== -1 || + (this.earlyDialogs[id].pracked[this.earlyDialogs[id].pracked.length-1] >= response.getHeader('rseq') && this.earlyDialogs[id].pracked.length > 0)) { + return; + } + + if (!this.mediaHandler.hasDescription(response)) { + extraHeaders.push('RAck: ' + response.getHeader('rseq') + ' ' + response.getHeader('cseq')); + this.earlyDialogs[id].pracked.push(response.getHeader('rseq')); + this.earlyDialogs[id].sendRequest(this, SIP.C.PRACK, { + extraHeaders: extraHeaders + }); + this.emit('progress', response); + + } else if (this.hasOffer) { + if (!this.createDialog(response, 'UAC')) { + break; + } + this.hasAnswer = true; + this.dialog.pracked.push(response.getHeader('rseq')); + + this.mediaHandler.setDescription(response) + .then( + function onSuccess () { + extraHeaders.push('RAck: ' + response.getHeader('rseq') + ' ' + response.getHeader('cseq')); + + session.sendRequest(SIP.C.PRACK, { + extraHeaders: extraHeaders, + receiveResponse: function() {} + }); + session.status = C.STATUS_EARLY_MEDIA; + session.mute(); + session.emit('progress', response); + /* + if (session.status === C.STATUS_EARLY_MEDIA) { + localMedia = session.mediaHandler.localMedia; + if (localMedia.getAudioTracks().length > 0) { + localMedia.getAudioTracks()[0].enabled = false; + } + if (localMedia.getVideoTracks().length > 0) { + localMedia.getVideoTracks()[0].enabled = false; + } + }*/ + }, + function onFailure (e) { + session.logger.warn(e); + session.acceptAndTerminate(response, 488, 'Not Acceptable Here'); + session.failed(response, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + } + ); + } else { + var earlyDialog = this.earlyDialogs[id]; + var earlyMedia = earlyDialog.mediaHandler; + + earlyDialog.pracked.push(response.getHeader('rseq')); + + earlyMedia.setDescription(response) + .then(earlyMedia.getDescription.bind(earlyMedia, session.mediaHint)) + .then(function onSuccess(description) { + extraHeaders.push('RAck: ' + response.getHeader('rseq') + ' ' + response.getHeader('cseq')); + earlyDialog.sendRequest(session, SIP.C.PRACK, { + extraHeaders: extraHeaders, + body: description + }); + session.status = C.STATUS_EARLY_MEDIA; + session.emit('progress', response); + }) + .catch(function onFailure(e) { + if (e instanceof SIP.Exceptions.GetDescriptionError) { + earlyDialog.pracked.push(response.getHeader('rseq')); + if (session.status === C.STATUS_TERMINATED) { + return; + } + // TODO - fail out on error + // session.failed(gum error); + session.failed(null, SIP.C.causes.WEBRTC_ERROR); + session.terminated(null, SIP.C.causes.WEBRTC_ERROR); + } else { + earlyDialog.pracked.splice(earlyDialog.pracked.indexOf(response.getHeader('rseq')), 1); + // Could not set remote description + session.logger.warn('invalid description'); + session.logger.warn(e); + } + }); + } + } else { + this.emit('progress', response); + } + break; + case /^2[0-9]{2}$/.test(response.status_code): + var cseq = this.request.cseq + ' ' + this.request.method; + if (cseq !== response.getHeader('cseq')) { + break; + } + + if (this.status === C.STATUS_EARLY_MEDIA && this.dialog) { + this.status = C.STATUS_CONFIRMED; + this.unmute(); + /*localMedia = this.mediaHandler.localMedia; + if (localMedia.getAudioTracks().length > 0) { + localMedia.getAudioTracks()[0].enabled = true; + } + if (localMedia.getVideoTracks().length > 0) { + localMedia.getVideoTracks()[0].enabled = true; + }*/ + options = {}; + if (this.renderbody) { + extraHeaders.push('Content-Type: ' + this.rendertype); + options.extraHeaders = extraHeaders; + options.body = this.renderbody; + } + options.cseq = response.cseq; + this.sendRequest(SIP.C.ACK, options); + this.accepted(response); + break; + } + // Do nothing if this.dialog is already confirmed + if (this.dialog) { + break; + } + + // This is an invite without sdp + if (!this.hasOffer) { + if (this.earlyDialogs[id] && this.earlyDialogs[id].mediaHandler.localMedia) { + //REVISIT + this.hasOffer = true; + this.hasAnswer = true; + this.mediaHandler = this.earlyDialogs[id].mediaHandler; + if (!this.createDialog(response, 'UAC')) { + break; + } + this.status = C.STATUS_CONFIRMED; + this.sendRequest(SIP.C.ACK, {cseq:response.cseq}); + + this.unmute(); + /* + localMedia = session.mediaHandler.localMedia; + if (localMedia.getAudioTracks().length > 0) { + localMedia.getAudioTracks()[0].enabled = true; + } + if (localMedia.getVideoTracks().length > 0) { + localMedia.getVideoTracks()[0].enabled = true; + }*/ + this.accepted(response); + } else { + if(!this.mediaHandler.hasDescription(response)) { + this.acceptAndTerminate(response, 400, 'Missing session description'); + this.failed(response, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + break; + } + if (!this.createDialog(response, 'UAC')) { + break; + } + this.hasOffer = true; + this.mediaHandler.setDescription(response) + .then(this.mediaHandler.getDescription.bind(this.mediaHandler, this.mediaHint)) + .then(function onSuccess(description) { + //var localMedia; + if(session.isCanceled || session.status === C.STATUS_TERMINATED) { + return; + } + + session.status = C.STATUS_CONFIRMED; + session.hasAnswer = true; + + session.unmute(); + /*localMedia = session.mediaHandler.localMedia; + if (localMedia.getAudioTracks().length > 0) { + localMedia.getAudioTracks()[0].enabled = true; + } + if (localMedia.getVideoTracks().length > 0) { + localMedia.getVideoTracks()[0].enabled = true; + }*/ + session.sendRequest(SIP.C.ACK,{ + body: description, + cseq:response.cseq + }); + session.accepted(response); + }) + .catch(function onFailure(e) { + if (e instanceof SIP.Exceptions.GetDescriptionError) { + // TODO do something here + session.logger.warn("there was a problem"); + } else { + session.logger.warn('invalid description'); + session.logger.warn(e); + session.acceptAndTerminate(response, 488, 'Invalid session description'); + session.failed(response, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + } + }); + } + } else if (this.hasAnswer){ + if (this.renderbody) { + extraHeaders.push('Content-Type: ' + session.rendertype); + options.extraHeaders = extraHeaders; + options.body = this.renderbody; + } + this.sendRequest(SIP.C.ACK, options); + } else { + if(!this.mediaHandler.hasDescription(response)) { + this.acceptAndTerminate(response, 400, 'Missing session description'); + this.failed(response, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + break; + } + if (!this.createDialog(response, 'UAC')) { + break; + } + this.hasAnswer = true; + this.mediaHandler.setDescription(response) + .then( + function onSuccess () { + var options = {};//,localMedia; + session.status = C.STATUS_CONFIRMED; + session.unmute(); + /*localMedia = session.mediaHandler.localMedia; + if (localMedia.getAudioTracks().length > 0) { + localMedia.getAudioTracks()[0].enabled = true; + } + if (localMedia.getVideoTracks().length > 0) { + localMedia.getVideoTracks()[0].enabled = true; + }*/ + if (session.renderbody) { + extraHeaders.push('Content-Type: ' + session.rendertype); + options.extraHeaders = extraHeaders; + options.body = session.renderbody; + } + options.cseq = response.cseq; + session.sendRequest(SIP.C.ACK, options); + session.accepted(response); + }, + function onFailure (e) { + session.logger.warn(e); + session.acceptAndTerminate(response, 488, 'Not Acceptable Here'); + session.failed(response, SIP.C.causes.BAD_MEDIA_DESCRIPTION); + } + ); + } + break; + default: + cause = SIP.Utils.sipErrorCause(response.status_code); + this.rejected(response, cause); + this.failed(response, cause); + this.terminated(response, cause); + } + }, + + cancel: function(options) { + options = options || {}; + + options.extraHeaders = (options.extraHeaders || []).slice(); + + // Check Session Status + if (this.status === C.STATUS_TERMINATED || this.status === C.STATUS_CONFIRMED) { + throw new SIP.Exceptions.InvalidStateError(this.status); + } + + this.logger.log('canceling RTCSession'); + + var cancel_reason = SIP.Utils.getCancelReason(options.status_code, options.reason_phrase); + + // Check Session Status + if (this.status === C.STATUS_NULL || + (this.status === C.STATUS_INVITE_SENT && !this.received_100)) { + this.isCanceled = true; + this.cancelReason = cancel_reason; + } else if (this.status === C.STATUS_INVITE_SENT || + this.status === C.STATUS_1XX_RECEIVED || + this.status === C.STATUS_EARLY_MEDIA) { + this.request.cancel(cancel_reason, options.extraHeaders); + } + + return this.canceled(); + }, + + terminate: function(options) { + if (this.status === C.STATUS_TERMINATED) { + return this; + } + + if (this.status === C.STATUS_WAITING_FOR_ACK || this.status === C.STATUS_CONFIRMED) { + this.bye(options); + } else { + this.cancel(options); + } + + return this; + }, + + receiveRequest: function(request) { + // ICC RECEIVE REQUEST + + // Reject CANCELs + if (request.method === SIP.C.CANCEL) { + // TODO; make this a switch when it gets added + } + + if (request.method === SIP.C.ACK && this.status === C.STATUS_WAITING_FOR_ACK) { + SIP.Timers.clearTimeout(this.timers.ackTimer); + SIP.Timers.clearTimeout(this.timers.invite2xxTimer); + this.status = C.STATUS_CONFIRMED; + this.unmute(); + + this.accepted(); + } + + return Session.prototype.receiveRequest.apply(this, [request]); + }, + + onTransportError: function() { + if (this.status !== C.STATUS_CONFIRMED && this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.CONNECTION_ERROR); + } + }, + + onRequestTimeout: function() { + if (this.status === C.STATUS_CONFIRMED) { + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } else if (this.status !== C.STATUS_TERMINATED) { + this.failed(null, SIP.C.causes.REQUEST_TIMEOUT); + this.terminated(null, SIP.C.causes.REQUEST_TIMEOUT); + } + } + +}; + +SIP.InviteClientContext = InviteClientContext; + +}; + +},{"./Session/DTMF":24}],24:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview DTMF + */ + +/** + * @class DTMF + * @param {SIP.Session} session + */ +module.exports = function (SIP) { + +var DTMF, + C = { + MIN_DURATION: 70, + MAX_DURATION: 6000, + DEFAULT_DURATION: 100, + MIN_INTER_TONE_GAP: 50, + DEFAULT_INTER_TONE_GAP: 500 + }; + +DTMF = function(session, tone, options) { + var duration, interToneGap; + + if (tone === undefined) { + throw new TypeError('Not enough arguments'); + } + + this.logger = session.ua.getLogger('sip.invitecontext.dtmf', session.id); + this.owner = session; + this.direction = null; + + options = options || {}; + duration = options.duration || null; + interToneGap = options.interToneGap || null; + + // Check tone type + if (typeof tone === 'string' ) { + tone = tone.toUpperCase(); + } else if (typeof tone === 'number') { + tone = tone.toString(); + } else { + throw new TypeError('Invalid tone: '+ tone); + } + + // Check tone value + if (!tone.match(/^[0-9A-D#*]$/)) { + throw new TypeError('Invalid tone: '+ tone); + } else { + this.tone = tone; + } + + // Check duration + if (duration && !SIP.Utils.isDecimal(duration)) { + throw new TypeError('Invalid tone duration: '+ duration); + } else if (!duration) { + duration = DTMF.C.DEFAULT_DURATION; + } else if (duration < DTMF.C.MIN_DURATION) { + this.logger.warn('"duration" value is lower than the minimum allowed, setting it to '+ DTMF.C.MIN_DURATION+ ' milliseconds'); + duration = DTMF.C.MIN_DURATION; + } else if (duration > DTMF.C.MAX_DURATION) { + this.logger.warn('"duration" value is greater than the maximum allowed, setting it to '+ DTMF.C.MAX_DURATION +' milliseconds'); + duration = DTMF.C.MAX_DURATION; + } else { + duration = Math.abs(duration); + } + this.duration = duration; + + // Check interToneGap + if (interToneGap && !SIP.Utils.isDecimal(interToneGap)) { + throw new TypeError('Invalid interToneGap: '+ interToneGap); + } else if (!interToneGap) { + interToneGap = DTMF.C.DEFAULT_INTER_TONE_GAP; + } else if (interToneGap < DTMF.C.MIN_INTER_TONE_GAP) { + this.logger.warn('"interToneGap" value is lower than the minimum allowed, setting it to '+ DTMF.C.MIN_INTER_TONE_GAP +' milliseconds'); + interToneGap = DTMF.C.MIN_INTER_TONE_GAP; + } else { + interToneGap = Math.abs(interToneGap); + } + this.interToneGap = interToneGap; +}; +DTMF.prototype = Object.create(SIP.EventEmitter.prototype); + + +DTMF.prototype.send = function(options) { + var extraHeaders, + body = {}; + + this.direction = 'outgoing'; + + // Check RTCSession Status + if (this.owner.status !== SIP.Session.C.STATUS_CONFIRMED && + this.owner.status !== SIP.Session.C.STATUS_WAITING_FOR_ACK) { + throw new SIP.Exceptions.InvalidStateError(this.owner.status); + } + + // Get DTMF options + options = options || {}; + extraHeaders = options.extraHeaders ? options.extraHeaders.slice() : []; + + body.contentType = 'application/dtmf-relay'; + + body.body = "Signal= " + this.tone + "\r\n"; + body.body += "Duration= " + this.duration; + + this.request = this.owner.dialog.sendRequest(this, SIP.C.INFO, { + extraHeaders: extraHeaders, + body: body + }); + + this.owner.emit('dtmf', this.request, this); +}; + +/** + * @private + */ +DTMF.prototype.receiveResponse = function(response) { + var cause; + + switch(true) { + case /^1[0-9]{2}$/.test(response.status_code): + // Ignore provisional responses. + break; + + case /^2[0-9]{2}$/.test(response.status_code): + this.emit('succeeded', { + originator: 'remote', + response: response + }); + break; + + default: + cause = SIP.Utils.sipErrorCause(response.status_code); + this.emit('failed', response, cause); + break; + } +}; + +/** + * @private + */ +DTMF.prototype.onRequestTimeout = function() { + this.emit('failed', null, SIP.C.causes.REQUEST_TIMEOUT); + this.owner.onRequestTimeout(); +}; + +/** + * @private + */ +DTMF.prototype.onTransportError = function() { + this.emit('failed', null, SIP.C.causes.CONNECTION_ERROR); + this.owner.onTransportError(); +}; + +/** + * @private + */ +DTMF.prototype.onDialogError = function(response) { + this.emit('failed', response, SIP.C.causes.DIALOG_ERROR); + this.owner.onDialogError(response); +}; + +/** + * @private + */ +DTMF.prototype.init_incoming = function(request) { + this.direction = 'incoming'; + this.request = request; + + request.reply(200); + + if (!this.tone || !this.duration) { + this.logger.warn('invalid INFO DTMF received, discarded'); + } else { + this.owner.emit('dtmf', request, this); + } +}; + +DTMF.C = C; +return DTMF; +}; + +},{}],25:[function(require,module,exports){ +"use strict"; + +/** + * @fileoverview SIP Subscriber (SIP-Specific Event Notifications RFC6665) + */ + +/** + * @augments SIP + * @class Class creating a SIP Subscription. + */ +module.exports = function (SIP) { +SIP.Subscription = function (ua, target, event, options) { + options = Object.create(options || Object.prototype); + this.extraHeaders = options.extraHeaders = (options.extraHeaders || []).slice(); + + this.id = null; + this.state = 'init'; + + if (!event) { + throw new TypeError('Event necessary to create a subscription.'); + } else { + //TODO: check for valid events here probably make a list in SIP.C; or leave it up to app to check? + //The check may need to/should probably occur on the other side, + this.event = event; + } + + if(typeof options.expires !== 'number'){ + ua.logger.warn('expires must be a number. Using default of 3600.'); + this.expires = 3600; + } else { + this.expires = options.expires; + } + + options.extraHeaders.push('Event: ' + this.event); + options.extraHeaders.push('Expires: ' + this.expires); + + if (options.body) { + this.body = options.body; + } + + this.contact = ua.contact.toString(); + + options.extraHeaders.push('Contact: '+ this.contact); + options.extraHeaders.push('Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString()); + + SIP.Utils.augment(this, SIP.ClientContext, [ua, SIP.C.SUBSCRIBE, target, options]); + + this.logger = ua.getLogger('sip.subscription'); + + this.dialog = null; + this.timers = {N: null, sub_duration: null}; + this.errorCodes = [404,405,410,416,480,481,482,483,484,485,489,501,604]; +}; + +SIP.Subscription.prototype = { + subscribe: function() { + var sub = this; + + //these states point to an existing subscription, no subscribe is necessary + if (this.state === 'active') { + this.refresh(); + return this; + } else if (this.state === 'notify_wait') { + return this; + } + + SIP.Timers.clearTimeout(this.timers.sub_duration); + SIP.Timers.clearTimeout(this.timers.N); + this.timers.N = SIP.Timers.setTimeout(sub.timer_fire.bind(sub), SIP.Timers.TIMER_N); + + this.ua.earlySubscriptions[this.request.call_id + this.request.from.parameters.tag + this.event] = this; + + this.send(); + + this.state = 'notify_wait'; + + return this; + }, + + refresh: function () { + if (this.state === 'terminated' || this.state === 'pending' || this.state === 'notify_wait') { + return; + } + + this.dialog.sendRequest(this, SIP.C.SUBSCRIBE, { + extraHeaders: this.extraHeaders, + body: this.body + }); + }, + + receiveResponse: function(response) { + var expires, sub = this, + cause = SIP.Utils.getReasonPhrase(response.status_code); + + if ((this.state === 'notify_wait' && response.status_code >= 300) || + (this.state !== 'notify_wait' && this.errorCodes.indexOf(response.status_code) !== -1)) { + this.failed(response, null); + } else if (/^2[0-9]{2}$/.test(response.status_code)){ + this.emit('accepted', response, cause); + //As we don't support RFC 5839 or other extensions where the NOTIFY is optional, timer N will not be cleared + //SIP.Timers.clearTimeout(this.timers.N); + + expires = response.getHeader('Expires'); + + if (expires && expires <= this.expires) { + // Preserve new expires value for subsequent requests + this.expires = expires; + this.timers.sub_duration = SIP.Timers.setTimeout(sub.refresh.bind(sub), expires * 900); + } else { + if (!expires) { + this.logger.warn('Expires header missing in a 200-class response to SUBSCRIBE'); + this.failed(response, SIP.C.EXPIRES_HEADER_MISSING); + } else { + this.logger.warn('Expires header in a 200-class response to SUBSCRIBE with a higher value than the one in the request'); + this.failed(response, SIP.C.INVALID_EXPIRES_HEADER); + } + } + } else if (response.statusCode > 300) { + this.emit('failed', response, cause); + this.emit('rejected', response, cause); + } + }, + + unsubscribe: function() { + var extraHeaders = [], sub = this; + + this.state = 'terminated'; + + extraHeaders.push('Event: ' + this.event); + extraHeaders.push('Expires: 0'); + + extraHeaders.push('Contact: '+ this.contact); + extraHeaders.push('Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString()); + + //makes sure expires isn't set, and other typical resubscribe behavior + this.receiveResponse = function(){}; + + this.dialog.sendRequest(this, this.method, { + extraHeaders: extraHeaders, + body: this.body + }); + + SIP.Timers.clearTimeout(this.timers.sub_duration); + SIP.Timers.clearTimeout(this.timers.N); + this.timers.N = SIP.Timers.setTimeout(sub.timer_fire.bind(sub), SIP.Timers.TIMER_N); + }, + + /** + * @private + */ + timer_fire: function(){ + if (this.state === 'terminated') { + this.terminateDialog(); + SIP.Timers.clearTimeout(this.timers.N); + SIP.Timers.clearTimeout(this.timers.sub_duration); + + delete this.ua.subscriptions[this.id]; + } else if (this.state === 'notify_wait' || this.state === 'pending') { + this.close(); + } else { + this.refresh(); + } + }, + + /** + * @private + */ + close: function() { + if (this.state === 'notify_wait') { + this.state = 'terminated'; + SIP.Timers.clearTimeout(this.timers.N); + SIP.Timers.clearTimeout(this.timers.sub_duration); + this.receiveResponse = function(){}; + + delete this.ua.earlySubscriptions[this.request.call_id + this.request.from.parameters.tag + this.event]; + } else if (this.state !== 'terminated') { + this.unsubscribe(); + } + }, + + /** + * @private + */ + createConfirmedDialog: function(message, type) { + var dialog; + + this.terminateDialog(); + dialog = new SIP.Dialog(this, message, type); + dialog.invite_seqnum = this.request.cseq; + dialog.local_seqnum = this.request.cseq; + + if(!dialog.error) { + this.dialog = dialog; + return true; + } + // Dialog not created due to an error + else { + return false; + } + }, + + /** + * @private + */ + terminateDialog: function() { + if(this.dialog) { + delete this.ua.subscriptions[this.id]; + this.dialog.terminate(); + delete this.dialog; + } + }, + + /** + * @private + */ + receiveRequest: function(request) { + var sub_state, sub = this; + + function setExpiresTimeout() { + if (sub_state.expires) { + SIP.Timers.clearTimeout(sub.timers.sub_duration); + sub_state.expires = Math.min(sub.expires, + Math.max(sub_state.expires, 0)); + sub.timers.sub_duration = SIP.Timers.setTimeout(sub.refresh.bind(sub), + sub_state.expires * 900); + } + } + + if (!this.matchEvent(request)) { //checks event and subscription_state headers + request.reply(489); + return; + } + + if (!this.dialog) { + if (this.createConfirmedDialog(request,'UAS')) { + this.id = this.dialog.id.toString(); + delete this.ua.earlySubscriptions[this.request.call_id + this.request.from.parameters.tag + this.event]; + this.ua.subscriptions[this.id] = this; + // UPDATE ROUTE SET TO BE BACKWARDS COMPATIBLE? + } + } + + sub_state = request.parseHeader('Subscription-State'); + + request.reply(200, SIP.C.REASON_200); + + SIP.Timers.clearTimeout(this.timers.N); + + this.emit('notify', {request: request}); + + // if we've set state to terminated, no further processing should take place + // and we are only interested in cleaning up after the appropriate NOTIFY + if (this.state === 'terminated') { + if (sub_state.state === 'terminated') { + this.terminateDialog(); + SIP.Timers.clearTimeout(this.timers.N); + SIP.Timers.clearTimeout(this.timers.sub_duration); + + delete this.ua.subscriptions[this.id]; + } + return; + } + + switch (sub_state.state) { + case 'active': + this.state = 'active'; + setExpiresTimeout(); + break; + case 'pending': + if (this.state === 'notify_wait') { + setExpiresTimeout(); + } + this.state = 'pending'; + break; + case 'terminated': + SIP.Timers.clearTimeout(this.timers.sub_duration); + if (sub_state.reason) { + this.logger.log('terminating subscription with reason '+ sub_state.reason); + switch (sub_state.reason) { + case 'deactivated': + case 'timeout': + this.subscribe(); + return; + case 'probation': + case 'giveup': + if(sub_state.params && sub_state.params['retry-after']) { + this.timers.sub_duration = SIP.Timers.setTimeout(sub.subscribe.bind(sub), sub_state.params['retry-after']); + } else { + this.subscribe(); + } + return; + case 'rejected': + case 'noresource': + case 'invariant': + break; + } + } + this.close(); + break; + } + }, + + failed: function(response, cause) { + this.close(); + this.emit('failed', response, cause); + this.emit('rejected', response, cause); + return this; + }, + + onDialogError: function(response) { + this.failed(response, SIP.C.causes.DIALOG_ERROR); + }, + + /** + * @private + */ + matchEvent: function(request) { + var event; + + // Check mandatory header Event + if (!request.hasHeader('Event')) { + this.logger.warn('missing Event header'); + return false; + } + // Check mandatory header Subscription-State + if (!request.hasHeader('Subscription-State')) { + this.logger.warn('missing Subscription-State header'); + return false; + } + + // Check whether the event in NOTIFY matches the event in SUBSCRIBE + event = request.parseHeader('event').event; + + if (this.event !== event) { + this.logger.warn('event match failed'); + request.reply(481, 'Event Match Failed'); + return false; + } else { + return true; + } + } +}; +}; + +},{}],26:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP TIMERS + */ + +/** + * @augments SIP + */ +var + T1 = 500, + T2 = 4000, + T4 = 5000; +module.exports = function (timers) { + var Timers = { + T1: T1, + T2: T2, + T4: T4, + TIMER_B: 64 * T1, + TIMER_D: 0 * T1, + TIMER_F: 64 * T1, + TIMER_H: 64 * T1, + TIMER_I: 0 * T1, + TIMER_J: 0 * T1, + TIMER_K: 0 * T4, + TIMER_L: 64 * T1, + TIMER_M: 64 * T1, + TIMER_N: 64 * T1, + PROVISIONAL_RESPONSE_INTERVAL: 60000 // See RFC 3261 Section 13.3.1.1 + }; + + ['setTimeout', 'clearTimeout', 'setInterval', 'clearInterval'] + .forEach(function (name) { + // can't just use timers[name].bind(timers) since it bypasses jasmine's + // clock-mocking + Timers[name] = function () { + return timers[name].apply(timers, arguments); + }; + }); + + return Timers; +}; + +},{}],27:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP Transactions + */ + +/** + * SIP Transactions module. + * @augments SIP + */ +module.exports = function (SIP) { +var + C = { + // Transaction states + STATUS_TRYING: 1, + STATUS_PROCEEDING: 2, + STATUS_CALLING: 3, + STATUS_ACCEPTED: 4, + STATUS_COMPLETED: 5, + STATUS_TERMINATED: 6, + STATUS_CONFIRMED: 7, + + // Transaction types + NON_INVITE_CLIENT: 'nict', + NON_INVITE_SERVER: 'nist', + INVITE_CLIENT: 'ict', + INVITE_SERVER: 'ist' + }; + +function buildViaHeader (request_sender, transport, id) { + var via; + via = 'SIP/2.0/' + (request_sender.ua.configuration.hackViaTcp ? 'TCP' : transport.server.scheme); + via += ' ' + request_sender.ua.configuration.viaHost + ';branch=' + id; + if (request_sender.ua.configuration.forceRport) { + via += ';rport'; + } + return via; +} + +/** +* @augments SIP.Transactions +* @class Non Invite Client Transaction +* @param {SIP.RequestSender} request_sender +* @param {SIP.OutgoingRequest} request +* @param {SIP.Transport} transport +*/ +var NonInviteClientTransaction = function(request_sender, request, transport) { + var via; + + this.type = C.NON_INVITE_CLIENT; + this.transport = transport; + this.id = 'z9hG4bK' + Math.floor(Math.random() * 10000000); + this.request_sender = request_sender; + this.request = request; + + this.logger = request_sender.ua.getLogger('sip.transaction.nict', this.id); + + via = buildViaHeader(request_sender, transport, this.id); + this.request.setHeader('via', via); + + this.request_sender.ua.newTransaction(this); +}; +NonInviteClientTransaction.prototype = Object.create(SIP.EventEmitter.prototype); + +NonInviteClientTransaction.prototype.stateChanged = function(state) { + this.state = state; + this.emit('stateChanged'); +}; + +NonInviteClientTransaction.prototype.send = function() { + var tr = this; + + this.stateChanged(C.STATUS_TRYING); + this.F = SIP.Timers.setTimeout(tr.timer_F.bind(tr), SIP.Timers.TIMER_F); + + if(!this.transport.send(this.request)) { + this.onTransportError(); + } +}; + +NonInviteClientTransaction.prototype.onTransportError = function() { + this.logger.log('transport error occurred, deleting non-INVITE client transaction ' + this.id); + SIP.Timers.clearTimeout(this.F); + SIP.Timers.clearTimeout(this.K); + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); + this.request_sender.onTransportError(); +}; + +NonInviteClientTransaction.prototype.timer_F = function() { + this.logger.log('Timer F expired for non-INVITE client transaction ' + this.id); + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); + this.request_sender.onRequestTimeout(); +}; + +NonInviteClientTransaction.prototype.timer_K = function() { + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); +}; + +NonInviteClientTransaction.prototype.receiveResponse = function(response) { + var + tr = this, + status_code = response.status_code; + + if(status_code < 200) { + switch(this.state) { + case C.STATUS_TRYING: + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_PROCEEDING); + this.request_sender.receiveResponse(response); + break; + } + } else { + switch(this.state) { + case C.STATUS_TRYING: + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_COMPLETED); + SIP.Timers.clearTimeout(this.F); + + if(status_code === 408) { + this.request_sender.onRequestTimeout(); + } else { + this.request_sender.receiveResponse(response); + } + + this.K = SIP.Timers.setTimeout(tr.timer_K.bind(tr), SIP.Timers.TIMER_K); + break; + case C.STATUS_COMPLETED: + break; + } + } +}; + + + +/** +* @augments SIP.Transactions +* @class Invite Client Transaction +* @param {SIP.RequestSender} request_sender +* @param {SIP.OutgoingRequest} request +* @param {SIP.Transport} transport +*/ +var InviteClientTransaction = function(request_sender, request, transport) { + var via, + tr = this; + + this.type = C.INVITE_CLIENT; + this.transport = transport; + this.id = 'z9hG4bK' + Math.floor(Math.random() * 10000000); + this.request_sender = request_sender; + this.request = request; + + this.logger = request_sender.ua.getLogger('sip.transaction.ict', this.id); + + via = buildViaHeader(request_sender, transport, this.id); + this.request.setHeader('via', via); + + this.request_sender.ua.newTransaction(this); + + // Add the cancel property to the request. + //Will be called from the request instance, not the transaction itself. + this.request.cancel = function(reason, extraHeaders) { + extraHeaders = (extraHeaders || []).slice(); + var length = extraHeaders.length; + var extraHeadersString = null; + for (var idx = 0; idx < length; idx++) { + extraHeadersString = (extraHeadersString || '') + extraHeaders[idx].trim() + '\r\n'; + } + + tr.cancel_request(tr, reason, extraHeadersString); + }; +}; +InviteClientTransaction.prototype = Object.create(SIP.EventEmitter.prototype); + +InviteClientTransaction.prototype.stateChanged = function(state) { + this.state = state; + this.emit('stateChanged'); +}; + +InviteClientTransaction.prototype.send = function() { + var tr = this; + this.stateChanged(C.STATUS_CALLING); + this.B = SIP.Timers.setTimeout(tr.timer_B.bind(tr), SIP.Timers.TIMER_B); + + if(!this.transport.send(this.request)) { + this.onTransportError(); + } +}; + +InviteClientTransaction.prototype.onTransportError = function() { + this.logger.log('transport error occurred, deleting INVITE client transaction ' + this.id); + SIP.Timers.clearTimeout(this.B); + SIP.Timers.clearTimeout(this.D); + SIP.Timers.clearTimeout(this.M); + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); + + if (this.state !== C.STATUS_ACCEPTED) { + this.request_sender.onTransportError(); + } +}; + +// RFC 6026 7.2 +InviteClientTransaction.prototype.timer_M = function() { + this.logger.log('Timer M expired for INVITE client transaction ' + this.id); + + if(this.state === C.STATUS_ACCEPTED) { + SIP.Timers.clearTimeout(this.B); + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); + } +}; + +// RFC 3261 17.1.1 +InviteClientTransaction.prototype.timer_B = function() { + this.logger.log('Timer B expired for INVITE client transaction ' + this.id); + if(this.state === C.STATUS_CALLING) { + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); + this.request_sender.onRequestTimeout(); + } +}; + +InviteClientTransaction.prototype.timer_D = function() { + this.logger.log('Timer D expired for INVITE client transaction ' + this.id); + SIP.Timers.clearTimeout(this.B); + this.stateChanged(C.STATUS_TERMINATED); + this.request_sender.ua.destroyTransaction(this); +}; + +InviteClientTransaction.prototype.sendACK = function(response) { + var tr = this; + + this.ack = 'ACK ' + this.request.ruri + ' SIP/2.0\r\n'; + this.ack += 'Via: ' + this.request.headers['Via'].toString() + '\r\n'; + + if(this.request.headers['Route']) { + this.ack += 'Route: ' + this.request.headers['Route'].toString() + '\r\n'; + } + + this.ack += 'To: ' + response.getHeader('to') + '\r\n'; + this.ack += 'From: ' + this.request.headers['From'].toString() + '\r\n'; + this.ack += 'Call-ID: ' + this.request.headers['Call-ID'].toString() + '\r\n'; + this.ack += 'Content-Length: 0\r\n'; + this.ack += 'CSeq: ' + this.request.headers['CSeq'].toString().split(' ')[0]; + this.ack += ' ACK\r\n\r\n'; + + this.D = SIP.Timers.setTimeout(tr.timer_D.bind(tr), SIP.Timers.TIMER_D); + + this.transport.send(this.ack); +}; + +InviteClientTransaction.prototype.cancel_request = function(tr, reason, extraHeaders) { + var request = tr.request; + + this.cancel = SIP.C.CANCEL + ' ' + request.ruri + ' SIP/2.0\r\n'; + this.cancel += 'Via: ' + request.headers['Via'].toString() + '\r\n'; + + if(this.request.headers['Route']) { + this.cancel += 'Route: ' + request.headers['Route'].toString() + '\r\n'; + } + + this.cancel += 'To: ' + request.headers['To'].toString() + '\r\n'; + this.cancel += 'From: ' + request.headers['From'].toString() + '\r\n'; + this.cancel += 'Call-ID: ' + request.headers['Call-ID'].toString() + '\r\n'; + this.cancel += 'CSeq: ' + request.headers['CSeq'].toString().split(' ')[0] + + ' CANCEL\r\n'; + + if(reason) { + this.cancel += 'Reason: ' + reason + '\r\n'; + } + + if (extraHeaders) { + this.cancel += extraHeaders; + } + + this.cancel += 'Content-Length: 0\r\n\r\n'; + + // Send only if a provisional response (>100) has been received. + if(this.state === C.STATUS_PROCEEDING) { + this.transport.send(this.cancel); + } +}; + +InviteClientTransaction.prototype.receiveResponse = function(response) { + var + tr = this, + status_code = response.status_code; + + if(status_code >= 100 && status_code <= 199) { + switch(this.state) { + case C.STATUS_CALLING: + this.stateChanged(C.STATUS_PROCEEDING); + this.request_sender.receiveResponse(response); + if(this.cancel) { + this.transport.send(this.cancel); + } + break; + case C.STATUS_PROCEEDING: + this.request_sender.receiveResponse(response); + break; + } + } else if(status_code >= 200 && status_code <= 299) { + switch(this.state) { + case C.STATUS_CALLING: + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_ACCEPTED); + this.M = SIP.Timers.setTimeout(tr.timer_M.bind(tr), SIP.Timers.TIMER_M); + this.request_sender.receiveResponse(response); + break; + case C.STATUS_ACCEPTED: + this.request_sender.receiveResponse(response); + break; + } + } else if(status_code >= 300 && status_code <= 699) { + switch(this.state) { + case C.STATUS_CALLING: + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_COMPLETED); + this.sendACK(response); + this.request_sender.receiveResponse(response); + break; + case C.STATUS_COMPLETED: + this.sendACK(response); + break; + } + } +}; + + +/** + * @augments SIP.Transactions + * @class ACK Client Transaction + * @param {SIP.RequestSender} request_sender + * @param {SIP.OutgoingRequest} request + * @param {SIP.Transport} transport + */ +var AckClientTransaction = function(request_sender, request, transport) { + var via; + + this.transport = transport; + this.id = 'z9hG4bK' + Math.floor(Math.random() * 10000000); + this.request_sender = request_sender; + this.request = request; + + this.logger = request_sender.ua.getLogger('sip.transaction.nict', this.id); + + via = buildViaHeader(request_sender, transport, this.id); + this.request.setHeader('via', via); +}; +AckClientTransaction.prototype = Object.create(SIP.EventEmitter.prototype); + +AckClientTransaction.prototype.send = function() { + if(!this.transport.send(this.request)) { + this.onTransportError(); + } +}; + +AckClientTransaction.prototype.onTransportError = function() { + this.logger.log('transport error occurred, for an ACK client transaction ' + this.id); + this.request_sender.onTransportError(); +}; + + +/** +* @augments SIP.Transactions +* @class Non Invite Server Transaction +* @param {SIP.IncomingRequest} request +* @param {SIP.UA} ua +*/ +var NonInviteServerTransaction = function(request, ua) { + this.type = C.NON_INVITE_SERVER; + this.id = request.via_branch; + this.request = request; + this.transport = request.transport; + this.ua = ua; + this.last_response = ''; + request.server_transaction = this; + + this.logger = ua.getLogger('sip.transaction.nist', this.id); + + this.state = C.STATUS_TRYING; + + ua.newTransaction(this); +}; +NonInviteServerTransaction.prototype = Object.create(SIP.EventEmitter.prototype); + +NonInviteServerTransaction.prototype.stateChanged = function(state) { + this.state = state; + this.emit('stateChanged'); +}; + +NonInviteServerTransaction.prototype.timer_J = function() { + this.logger.log('Timer J expired for non-INVITE server transaction ' + this.id); + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); +}; + +NonInviteServerTransaction.prototype.onTransportError = function() { + if (!this.transportError) { + this.transportError = true; + + this.logger.log('transport error occurred, deleting non-INVITE server transaction ' + this.id); + + SIP.Timers.clearTimeout(this.J); + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); + } +}; + +NonInviteServerTransaction.prototype.receiveResponse = function(status_code, response) { + var tr = this; + var deferred = SIP.Utils.defer(); + + if(status_code === 100) { + /* RFC 4320 4.1 + * 'A SIP element MUST NOT + * send any provisional response with a + * Status-Code other than 100 to a non-INVITE request.' + */ + switch(this.state) { + case C.STATUS_TRYING: + this.stateChanged(C.STATUS_PROCEEDING); + if(!this.transport.send(response)) { + this.onTransportError(); + } + break; + case C.STATUS_PROCEEDING: + this.last_response = response; + if(!this.transport.send(response)) { + this.onTransportError(); + deferred.reject(); + } else { + deferred.resolve(); + } + break; + } + } else if(status_code >= 200 && status_code <= 699) { + switch(this.state) { + case C.STATUS_TRYING: + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_COMPLETED); + this.last_response = response; + this.J = SIP.Timers.setTimeout(tr.timer_J.bind(tr), SIP.Timers.TIMER_J); + if(!this.transport.send(response)) { + this.onTransportError(); + deferred.reject(); + } else { + deferred.resolve(); + } + break; + case C.STATUS_COMPLETED: + break; + } + } + + return deferred.promise; +}; + +/** +* @augments SIP.Transactions +* @class Invite Server Transaction +* @param {SIP.IncomingRequest} request +* @param {SIP.UA} ua +*/ +var InviteServerTransaction = function(request, ua) { + this.type = C.INVITE_SERVER; + this.id = request.via_branch; + this.request = request; + this.transport = request.transport; + this.ua = ua; + this.last_response = ''; + request.server_transaction = this; + + this.logger = ua.getLogger('sip.transaction.ist', this.id); + + this.state = C.STATUS_PROCEEDING; + + ua.newTransaction(this); + + this.resendProvisionalTimer = null; + + request.reply(100); +}; +InviteServerTransaction.prototype = Object.create(SIP.EventEmitter.prototype); + +InviteServerTransaction.prototype.stateChanged = function(state) { + this.state = state; + this.emit('stateChanged'); +}; + +InviteServerTransaction.prototype.timer_H = function() { + this.logger.log('Timer H expired for INVITE server transaction ' + this.id); + + if(this.state === C.STATUS_COMPLETED) { + this.logger.warn('transactions', 'ACK for INVITE server transaction was never received, call will be terminated'); + } + + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); +}; + +InviteServerTransaction.prototype.timer_I = function() { + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); +}; + +// RFC 6026 7.1 +InviteServerTransaction.prototype.timer_L = function() { + this.logger.log('Timer L expired for INVITE server transaction ' + this.id); + + if(this.state === C.STATUS_ACCEPTED) { + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); + } +}; + +InviteServerTransaction.prototype.onTransportError = function() { + if (!this.transportError) { + this.transportError = true; + + this.logger.log('transport error occurred, deleting INVITE server transaction ' + this.id); + + if (this.resendProvisionalTimer !== null) { + SIP.Timers.clearInterval(this.resendProvisionalTimer); + this.resendProvisionalTimer = null; + } + + SIP.Timers.clearTimeout(this.L); + SIP.Timers.clearTimeout(this.H); + SIP.Timers.clearTimeout(this.I); + + this.stateChanged(C.STATUS_TERMINATED); + this.ua.destroyTransaction(this); + } +}; + +InviteServerTransaction.prototype.resend_provisional = function() { + if(!this.transport.send(this.last_response)) { + this.onTransportError(); + } +}; + +// INVITE Server Transaction RFC 3261 17.2.1 +InviteServerTransaction.prototype.receiveResponse = function(status_code, response) { + var tr = this; + var deferred = SIP.Utils.defer(); + + if(status_code >= 100 && status_code <= 199) { + switch(this.state) { + case C.STATUS_PROCEEDING: + if(!this.transport.send(response)) { + this.onTransportError(); + } + this.last_response = response; + break; + } + } + + if(status_code > 100 && status_code <= 199 && this.state === C.STATUS_PROCEEDING) { + // Trigger the resendProvisionalTimer only for the first non 100 provisional response. + if(this.resendProvisionalTimer === null) { + this.resendProvisionalTimer = SIP.Timers.setInterval(tr.resend_provisional.bind(tr), + SIP.Timers.PROVISIONAL_RESPONSE_INTERVAL); + } + } else if(status_code >= 200 && status_code <= 299) { + switch(this.state) { + case C.STATUS_PROCEEDING: + this.stateChanged(C.STATUS_ACCEPTED); + this.last_response = response; + this.L = SIP.Timers.setTimeout(tr.timer_L.bind(tr), SIP.Timers.TIMER_L); + + if (this.resendProvisionalTimer !== null) { + SIP.Timers.clearInterval(this.resendProvisionalTimer); + this.resendProvisionalTimer = null; + } + /* falls through */ + case C.STATUS_ACCEPTED: + // Note that this point will be reached for proceeding tr.state also. + if(!this.transport.send(response)) { + this.onTransportError(); + deferred.reject(); + } else { + deferred.resolve(); + } + break; + } + } else if(status_code >= 300 && status_code <= 699) { + switch(this.state) { + case C.STATUS_PROCEEDING: + if (this.resendProvisionalTimer !== null) { + SIP.Timers.clearInterval(this.resendProvisionalTimer); + this.resendProvisionalTimer = null; + } + + if(!this.transport.send(response)) { + this.onTransportError(); + deferred.reject(); + } else { + this.stateChanged(C.STATUS_COMPLETED); + this.H = SIP.Timers.setTimeout(tr.timer_H.bind(tr), SIP.Timers.TIMER_H); + deferred.resolve(); + } + break; + } + } + + return deferred.promise; +}; + +/** + * @function + * @param {SIP.UA} ua + * @param {SIP.IncomingRequest} request + * + * @return {boolean} + * INVITE: + * _true_ if retransmission + * _false_ new request + * + * ACK: + * _true_ ACK to non2xx response + * _false_ ACK must be passed to TU (accepted state) + * ACK to 2xx response + * + * CANCEL: + * _true_ no matching invite transaction + * _false_ matching invite transaction and no final response sent + * + * OTHER: + * _true_ retransmission + * _false_ new request + */ +var checkTransaction = function(ua, request) { + var tr; + + switch(request.method) { + case SIP.C.INVITE: + tr = ua.transactions.ist[request.via_branch]; + if(tr) { + switch(tr.state) { + case C.STATUS_PROCEEDING: + tr.transport.send(tr.last_response); + break; + + // RFC 6026 7.1 Invite retransmission + //received while in C.STATUS_ACCEPTED state. Absorb it. + case C.STATUS_ACCEPTED: + break; + } + return true; + } + break; + case SIP.C.ACK: + tr = ua.transactions.ist[request.via_branch]; + + // RFC 6026 7.1 + if(tr) { + if(tr.state === C.STATUS_ACCEPTED) { + return false; + } else if(tr.state === C.STATUS_COMPLETED) { + tr.stateChanged(C.STATUS_CONFIRMED); + tr.I = SIP.Timers.setTimeout(tr.timer_I.bind(tr), SIP.Timers.TIMER_I); + return true; + } + } + + // ACK to 2XX Response. + else { + return false; + } + break; + case SIP.C.CANCEL: + tr = ua.transactions.ist[request.via_branch]; + if(tr) { + request.reply_sl(200); + if(tr.state === C.STATUS_PROCEEDING) { + return false; + } else { + return true; + } + } else { + request.reply_sl(481); + return true; + } + break; + default: + + // Non-INVITE Server Transaction RFC 3261 17.2.2 + tr = ua.transactions.nist[request.via_branch]; + if(tr) { + switch(tr.state) { + case C.STATUS_TRYING: + break; + case C.STATUS_PROCEEDING: + case C.STATUS_COMPLETED: + tr.transport.send(tr.last_response); + break; + } + return true; + } + break; + } +}; + +SIP.Transactions = { + C: C, + checkTransaction: checkTransaction, + NonInviteClientTransaction: NonInviteClientTransaction, + InviteClientTransaction: InviteClientTransaction, + AckClientTransaction: AckClientTransaction, + NonInviteServerTransaction: NonInviteServerTransaction, + InviteServerTransaction: InviteServerTransaction +}; + +}; + +},{}],28:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview Transport + */ + +/** + * @augments SIP + * @class Transport + * @param {SIP.UA} ua + * @param {Object} server ws_server Object + */ +module.exports = function (SIP, WebSocket) { +var Transport, + C = { + // Transport status codes + STATUS_READY: 0, + STATUS_DISCONNECTED: 1, + STATUS_ERROR: 2 + }; + +/** + * Compute an amount of time in seconds to wait before sending another + * keep-alive. + * @returns {Number} + */ +function computeKeepAliveTimeout(upperBound) { + var lowerBound = upperBound * 0.8; + return 1000 * (Math.random() * (upperBound - lowerBound) + lowerBound); +} + +Transport = function(ua, server) { + + this.logger = ua.getLogger('sip.transport'); + this.ua = ua; + this.ws = null; + this.server = server; + this.reconnection_attempts = 0; + this.closed = false; + this.connected = false; + this.reconnectTimer = null; + this.lastTransportError = {}; + + this.keepAliveInterval = ua.configuration.keepAliveInterval; + this.keepAliveTimeout = null; + this.keepAliveTimer = null; + + this.ua.transport = this; + + // Connect + this.connect(); +}; + +Transport.prototype = { + /** + * Send a message. + * @param {SIP.OutgoingRequest|String} msg + * @returns {Boolean} + */ + send: function(msg) { + var message = msg.toString(); + + if(this.ws && this.ws.readyState === WebSocket.OPEN) { + if (this.ua.configuration.traceSip === true) { + this.logger.log('sending WebSocket message:\n\n' + message + '\n'); + } + this.ws.send(message); + return true; + } else { + this.logger.warn('unable to send message, WebSocket is not open'); + return false; + } + }, + + /** + * Send a keep-alive (a double-CRLF sequence). + * @private + * @returns {Boolean} + */ + sendKeepAlive: function() { + if(this.keepAliveTimeout) { return; } + + this.keepAliveTimeout = SIP.Timers.setTimeout(function() { + this.ua.emit('keepAliveTimeout'); + }.bind(this), 10000); + + return this.send('\r\n\r\n'); + }, + + /** + * Start sending keep-alives. + * @private + */ + startSendingKeepAlives: function() { + if (this.keepAliveInterval && !this.keepAliveTimer) { + this.keepAliveTimer = SIP.Timers.setTimeout(function() { + this.sendKeepAlive(); + this.keepAliveTimer = null; + this.startSendingKeepAlives(); + }.bind(this), computeKeepAliveTimeout(this.keepAliveInterval)); + } + }, + + /** + * Stop sending keep-alives. + * @private + */ + stopSendingKeepAlives: function() { + SIP.Timers.clearTimeout(this.keepAliveTimer); + SIP.Timers.clearTimeout(this.keepAliveTimeout); + this.keepAliveTimer = null; + this.keepAliveTimeout = null; + }, + + /** + * Disconnect socket. + */ + disconnect: function() { + if(this.ws) { + // Clear reconnectTimer + SIP.Timers.clearTimeout(this.reconnectTimer); + + this.stopSendingKeepAlives(); + + this.closed = true; + this.logger.log('closing WebSocket ' + this.server.ws_uri); + this.ws.close(); + this.ws = null; + } + + if (this.reconnectTimer !== null) { + SIP.Timers.clearTimeout(this.reconnectTimer); + this.reconnectTimer = null; + this.ua.emit('disconnected', { + transport: this, + code: this.lastTransportError.code, + reason: this.lastTransportError.reason + }); + } + }, + + /** + * Connect socket. + */ + connect: function() { + var transport = this; + + if(this.ws && (this.ws.readyState === WebSocket.OPEN || this.ws.readyState === WebSocket.CONNECTING)) { + this.logger.log('WebSocket ' + this.server.ws_uri + ' is already connected'); + return false; + } + + if(this.ws) { + this.ws.close(); + this.ws = null; + } + + this.logger.log('connecting to WebSocket ' + this.server.ws_uri); + this.ua.onTransportConnecting(this, + (this.reconnection_attempts === 0)?1:this.reconnection_attempts); + + try { + this.ws = new WebSocket(this.server.ws_uri, 'sip'); + } catch(e) { + this.logger.warn('error connecting to WebSocket ' + this.server.ws_uri + ': ' + e); + } + + this.ws.binaryType = 'arraybuffer'; + + this.ws.onopen = function() { + transport.onOpen(); + }; + + this.ws.onclose = function(e) { + transport.onClose(e); + // Always cleanup. Eases GC, prevents potential memory leaks. + this.onopen = null; + this.onclose = null; + this.onmessage = null; + this.onerror = null; + }; + + this.ws.onmessage = function(e) { + transport.onMessage(e); + }; + + this.ws.onerror = function(e) { + transport.onError(e); + }; + }, + + // Transport Event Handlers + + /** + * @event + * @param {event} e + */ + onOpen: function() { + this.connected = true; + + this.logger.log('WebSocket ' + this.server.ws_uri + ' connected'); + // Clear reconnectTimer since we are not disconnected + if (this.reconnectTimer !== null) { + SIP.Timers.clearTimeout(this.reconnectTimer); + this.reconnectTimer = null; + } + // Reset reconnection_attempts + this.reconnection_attempts = 0; + // Disable closed + this.closed = false; + // Trigger onTransportConnected callback + this.ua.onTransportConnected(this); + // Start sending keep-alives + this.startSendingKeepAlives(); + }, + + /** + * @event + * @param {event} e + */ + onClose: function(e) { + var connected_before = this.connected; + + this.lastTransportError.code = e.code; + this.lastTransportError.reason = e.reason; + + this.stopSendingKeepAlives(); + + if (this.reconnection_attempts > 0) { + this.logger.log('Reconnection attempt ' + this.reconnection_attempts + ' failed (code: ' + e.code + (e.reason? '| reason: ' + e.reason : '') +')'); + this.reconnect(); + } else { + this.connected = false; + this.logger.log('WebSocket disconnected (code: ' + e.code + (e.reason? '| reason: ' + e.reason : '') +')'); + + if(e.wasClean === false) { + this.logger.warn('WebSocket abrupt disconnection'); + } + // Transport was connected + if(connected_before === true) { + this.ua.onTransportClosed(this); + // Check whether the user requested to close. + if(!this.closed) { + this.reconnect(); + } else { + this.ua.emit('disconnected', { + transport: this, + code: this.lastTransportError.code, + reason: this.lastTransportError.reason + }); + + } + } else { + // This is the first connection attempt + //Network error + this.ua.onTransportError(this); + } + } + }, + + /** + * @event + * @param {event} e + */ + onMessage: function(e) { + var message, transaction, + data = e.data; + + // CRLF Keep Alive response from server. Ignore it. + if(data === '\r\n') { + SIP.Timers.clearTimeout(this.keepAliveTimeout); + this.keepAliveTimeout = null; + + if (this.ua.configuration.traceSip === true) { + this.logger.log('received WebSocket message with CRLF Keep Alive response'); + } + + return; + } + + // WebSocket binary message. + else if (typeof data !== 'string') { + try { + data = String.fromCharCode.apply(null, new Uint8Array(data)); + } catch(evt) { + this.logger.warn('received WebSocket binary message failed to be converted into string, message discarded'); + return; + } + + if (this.ua.configuration.traceSip === true) { + this.logger.log('received WebSocket binary message:\n\n' + data + '\n'); + } + } + + // WebSocket text message. + else { + if (this.ua.configuration.traceSip === true) { + this.logger.log('received WebSocket text message:\n\n' + data + '\n'); + } + } + + message = SIP.Parser.parseMessage(data, this.ua); + + if (!message) { + return; + } + + if(this.ua.status === SIP.UA.C.STATUS_USER_CLOSED && message instanceof SIP.IncomingRequest) { + return; + } + + // Do some sanity check + if(SIP.sanityCheck(message, this.ua, this)) { + if(message instanceof SIP.IncomingRequest) { + message.transport = this; + this.ua.receiveRequest(message); + } else if(message instanceof SIP.IncomingResponse) { + /* Unike stated in 18.1.2, if a response does not match + * any transaction, it is discarded here and no passed to the core + * in order to be discarded there. + */ + switch(message.method) { + case SIP.C.INVITE: + transaction = this.ua.transactions.ict[message.via_branch]; + if(transaction) { + transaction.receiveResponse(message); + } + break; + case SIP.C.ACK: + // Just in case ;-) + break; + default: + transaction = this.ua.transactions.nict[message.via_branch]; + if(transaction) { + transaction.receiveResponse(message); + } + break; + } + } + } + }, + + /** + * @event + * @param {event} e + */ + onError: function(e) { + this.logger.warn('WebSocket connection error: ' + JSON.stringify(e)); + }, + + /** + * Reconnection attempt logic. + * @private + */ + reconnect: function() { + var transport = this; + + this.reconnection_attempts += 1; + + if(this.reconnection_attempts > this.ua.configuration.wsServerMaxReconnection) { + this.logger.warn('maximum reconnection attempts for WebSocket ' + this.server.ws_uri); + this.ua.onTransportError(this); + } else if (this.reconnection_attempts === 1) { + this.logger.log('Connection to WebSocket ' + this.server.ws_uri + ' severed, attempting first reconnect'); + transport.connect(); + } else { + this.logger.log('trying to reconnect to WebSocket ' + this.server.ws_uri + ' (reconnection attempt ' + this.reconnection_attempts + ')'); + + this.reconnectTimer = SIP.Timers.setTimeout(function() { + transport.connect(); + transport.reconnectTimer = null; + }, this.ua.configuration.wsServerReconnectionTimeout * 1000); + } + } +}; + +Transport.C = C; +return Transport; +}; + +},{}],29:[function(require,module,exports){ +(function (global){ +"use strict"; +/** + * @augments SIP + * @class Class creating a SIP User Agent. + * @param {function returning SIP.MediaHandler} [configuration.mediaHandlerFactory] + * A function will be invoked by each of the UA's Sessions to build the MediaHandler for that Session. + * If no (or a falsy) value is provided, each Session will use a default (WebRTC) MediaHandler. + * + * @param {Object} [configuration.media] gets passed to SIP.MediaHandler.getDescription as mediaHint + */ +module.exports = function (SIP, environment) { +var UA, + C = { + // UA status codes + STATUS_INIT: 0, + STATUS_STARTING: 1, + STATUS_READY: 2, + STATUS_USER_CLOSED: 3, + STATUS_NOT_READY: 4, + + // UA error codes + CONFIGURATION_ERROR: 1, + NETWORK_ERROR: 2, + + ALLOWED_METHODS: [ + 'ACK', + 'CANCEL', + 'INVITE', + 'MESSAGE', + 'BYE', + 'OPTIONS', + 'INFO', + 'NOTIFY', + 'REFER' + ], + + ACCEPTED_BODY_TYPES: [ + 'application/sdp', + 'application/dtmf-relay' + ], + + MAX_FORWARDS: 70, + TAG_LENGTH: 10 + }; + +UA = function(configuration) { + var self = this; + + // Helper function for forwarding events + function selfEmit(type) { + //registrationFailed handler is invoked with two arguments. Allow event handlers to be invoked with a variable no. of arguments + return self.emit.bind(self, type); + } + + // Set Accepted Body Types + C.ACCEPTED_BODY_TYPES = C.ACCEPTED_BODY_TYPES.toString(); + + this.log = new SIP.LoggerFactory(); + this.logger = this.getLogger('sip.ua'); + + this.cache = { + credentials: {} + }; + + this.configuration = {}; + this.dialogs = {}; + + //User actions outside any session/dialog (MESSAGE) + this.applicants = {}; + + this.data = {}; + this.sessions = {}; + this.subscriptions = {}; + this.earlySubscriptions = {}; + this.transport = null; + this.contact = null; + this.status = C.STATUS_INIT; + this.error = null; + this.transactions = { + nist: {}, + nict: {}, + ist: {}, + ict: {} + }; + + this.transportRecoverAttempts = 0; + this.transportRecoveryTimer = null; + + Object.defineProperties(this, { + transactionsCount: { + get: function() { + var type, + transactions = ['nist','nict','ist','ict'], + count = 0; + + for (type in transactions) { + count += Object.keys(this.transactions[transactions[type]]).length; + } + + return count; + } + }, + + nictTransactionsCount: { + get: function() { + return Object.keys(this.transactions['nict']).length; + } + }, + + nistTransactionsCount: { + get: function() { + return Object.keys(this.transactions['nist']).length; + } + }, + + ictTransactionsCount: { + get: function() { + return Object.keys(this.transactions['ict']).length; + } + }, + + istTransactionsCount: { + get: function() { + return Object.keys(this.transactions['ist']).length; + } + } + }); + + /** + * Load configuration + * + * @throws {SIP.Exceptions.ConfigurationError} + * @throws {TypeError} + */ + + if(configuration === undefined) { + configuration = {}; + } else if (typeof configuration === 'string' || configuration instanceof String) { + configuration = { + uri: configuration + }; + } + + // Apply log configuration if present + if (configuration.log) { + if (configuration.log.hasOwnProperty('builtinEnabled')) { + this.log.builtinEnabled = configuration.log.builtinEnabled; + } + + if (configuration.log.hasOwnProperty('level')) { + this.log.level = configuration.log.level; + } + + if (configuration.log.hasOwnProperty('connector')) { + this.log.connector = configuration.log.connector; + } + } + + try { + this.loadConfig(configuration); + } catch(e) { + this.status = C.STATUS_NOT_READY; + this.error = C.CONFIGURATION_ERROR; + throw e; + } + + // Initialize registerContext + this.registerContext = new SIP.RegisterContext(this); + this.registerContext.on('failed', selfEmit('registrationFailed')); + this.registerContext.on('registered', selfEmit('registered')); + this.registerContext.on('unregistered', selfEmit('unregistered')); + + if(this.configuration.autostart) { + this.start(); + } +}; +UA.prototype = Object.create(SIP.EventEmitter.prototype); + +//================= +// High Level API +//================= + +UA.prototype.register = function(options) { + this.configuration.register = true; + this.registerContext.register(options); + + return this; +}; + +/** + * Unregister. + * + * @param {Boolean} [all] unregister all user bindings. + * + */ +UA.prototype.unregister = function(options) { + this.configuration.register = false; + + var context = this.registerContext; + this.afterConnected(context.unregister.bind(context, options)); + + return this; +}; + +UA.prototype.isRegistered = function() { + return this.registerContext.registered; +}; + +/** + * Connection state. + * @param {Boolean} + */ +UA.prototype.isConnected = function() { + return this.transport ? this.transport.connected : false; +}; + +UA.prototype.afterConnected = function afterConnected (callback) { + if (this.isConnected()) { + callback(); + } else { + this.once('connected', callback); + } +}; + +/** + * Make an outgoing call. + * + * @param {String} target + * @param {Object} views + * @param {Object} [options.media] gets passed to SIP.MediaHandler.getDescription as mediaHint + * + * @throws {TypeError} + * + */ +UA.prototype.invite = function(target, options) { + var context = new SIP.InviteClientContext(this, target, options); + + this.afterConnected(context.invite.bind(context)); + this.emit('inviteSent', context); + return context; +}; + +UA.prototype.subscribe = function(target, event, options) { + var sub = new SIP.Subscription(this, target, event, options); + + this.afterConnected(sub.subscribe.bind(sub)); + return sub; +}; + +/** + * Send a message. + * + * @param {String} target + * @param {String} body + * @param {Object} [options] + * + * @throws {TypeError} + * + */ +UA.prototype.message = function(target, body, options) { + if (body === undefined) { + throw new TypeError('Not enough arguments'); + } + + // There is no Message module, so it is okay that the UA handles defaults here. + options = Object.create(options || Object.prototype); + options.contentType || (options.contentType = 'text/plain'); + options.body = body; + + return this.request(SIP.C.MESSAGE, target, options); +}; + +UA.prototype.request = function (method, target, options) { + var req = new SIP.ClientContext(this, method, target, options); + + this.afterConnected(req.send.bind(req)); + return req; +}; + +/** + * Gracefully close. + * + */ +UA.prototype.stop = function() { + var session, subscription, applicant, + ua = this; + + function transactionsListener() { + if (ua.nistTransactionsCount === 0 && ua.nictTransactionsCount === 0) { + ua.removeListener('transactionDestroyed', transactionsListener); + ua.transport.disconnect(); + } + } + + this.logger.log('user requested closure...'); + + if(this.status === C.STATUS_USER_CLOSED) { + this.logger.warn('UA already closed'); + return this; + } + + // Clear transportRecoveryTimer + SIP.Timers.clearTimeout(this.transportRecoveryTimer); + + // Close registerContext + this.logger.log('closing registerContext'); + this.registerContext.close(); + + // Run _terminate_ on every Session + for(session in this.sessions) { + this.logger.log('closing session ' + session); + this.sessions[session].terminate(); + } + + //Run _close_ on every confirmed Subscription + for(subscription in this.subscriptions) { + this.logger.log('unsubscribing from subscription ' + subscription); + this.subscriptions[subscription].close(); + } + + //Run _close_ on every early Subscription + for(subscription in this.earlySubscriptions) { + this.logger.log('unsubscribing from early subscription ' + subscription); + this.earlySubscriptions[subscription].close(); + } + + // Run _close_ on every applicant + for(applicant in this.applicants) { + this.applicants[applicant].close(); + } + + this.status = C.STATUS_USER_CLOSED; + + /* + * If the remaining transactions are all INVITE transactions, there is no need to + * wait anymore because every session has already been closed by this method. + * - locally originated sessions where terminated (CANCEL or BYE) + * - remotely originated sessions where rejected (4XX) or terminated (BYE) + * Remaining INVITE transactions belong tho sessions that where answered. This are in + * 'accepted' state due to timers 'L' and 'M' defined in [RFC 6026] + */ + if (this.nistTransactionsCount === 0 && this.nictTransactionsCount === 0) { + this.transport.disconnect(); + } else { + this.on('transactionDestroyed', transactionsListener); + } + + if (typeof environment.removeEventListener === 'function') { + // Google Chrome Packaged Apps don't allow 'unload' listeners: + // unload is not available in packaged apps + if (!(global.chrome && global.chrome.app && global.chrome.app.runtime)) { + environment.removeEventListener('unload', this.environListener); + } + } + + return this; +}; + +/** + * Connect to the WS server if status = STATUS_INIT. + * Resume UA after being closed. + * + */ +UA.prototype.start = function() { + var server; + + this.logger.log('user requested startup...'); + if (this.status === C.STATUS_INIT) { + server = this.getNextWsServer(); + this.status = C.STATUS_STARTING; + new SIP.Transport(this, server); + } else if(this.status === C.STATUS_USER_CLOSED) { + this.logger.log('resuming'); + this.status = C.STATUS_READY; + this.transport.connect(); + } else if (this.status === C.STATUS_STARTING) { + this.logger.log('UA is in STARTING status, not opening new connection'); + } else if (this.status === C.STATUS_READY) { + this.logger.log('UA is in READY status, not resuming'); + } else { + this.logger.error('Connection is down. Auto-Recovery system is trying to connect'); + } + + if (this.configuration.autostop && typeof environment.addEventListener === 'function') { + // Google Chrome Packaged Apps don't allow 'unload' listeners: + // unload is not available in packaged apps + if (!(global.chrome && global.chrome.app && global.chrome.app.runtime)) { + this.environListener = this.stop.bind(this); + environment.addEventListener('unload', this.environListener); + } + } + + return this; +}; + +/** + * Normalize a string into a valid SIP request URI + * + * @param {String} target + * + * @returns {SIP.URI|undefined} + */ +UA.prototype.normalizeTarget = function(target) { + return SIP.Utils.normalizeTarget(target, this.configuration.hostportParams); +}; + + +//=============================== +// Private (For internal use) +//=============================== + +UA.prototype.saveCredentials = function(credentials) { + this.cache.credentials[credentials.realm] = this.cache.credentials[credentials.realm] || {}; + this.cache.credentials[credentials.realm][credentials.uri] = credentials; + + return this; +}; + +UA.prototype.getCredentials = function(request) { + var realm, credentials; + + realm = request.ruri.host; + + if (this.cache.credentials[realm] && this.cache.credentials[realm][request.ruri]) { + credentials = this.cache.credentials[realm][request.ruri]; + credentials.method = request.method; + } + + return credentials; +}; + +UA.prototype.getLogger = function(category, label) { + return this.log.getLogger(category, label); +}; + + +//============================== +// Event Handlers +//============================== + +/** + * Transport Close event + * @private + * @event + * @param {SIP.Transport} transport. + */ +UA.prototype.onTransportClosed = function(transport) { + // Run _onTransportError_ callback on every client transaction using _transport_ + var type, idx, length, + client_transactions = ['nict', 'ict', 'nist', 'ist']; + + transport.server.status = SIP.Transport.C.STATUS_DISCONNECTED; + this.logger.log('connection state set to '+ SIP.Transport.C.STATUS_DISCONNECTED); + + length = client_transactions.length; + for (type = 0; type < length; type++) { + for(idx in this.transactions[client_transactions[type]]) { + this.transactions[client_transactions[type]][idx].onTransportError(); + } + } + + // Close sessions if GRUU is not being used + if (!this.contact.pub_gruu) { + this.closeSessionsOnTransportError(); + } + +}; + +/** + * Unrecoverable transport event. + * Connection reattempt logic has been done and didn't success. + * @private + * @event + * @param {SIP.Transport} transport. + */ +UA.prototype.onTransportError = function(transport) { + var server; + + this.logger.log('transport ' + transport.server.ws_uri + ' failed | connection state set to '+ SIP.Transport.C.STATUS_ERROR); + + // Close sessions. + //Mark this transport as 'down' + transport.server.status = SIP.Transport.C.STATUS_ERROR; + + this.emit('disconnected', { + transport: transport + }); + + // try the next transport if the UA isn't closed + if(this.status === C.STATUS_USER_CLOSED) { + return; + } + + server = this.getNextWsServer(); + + if(server) { + new SIP.Transport(this, server); + }else { + this.closeSessionsOnTransportError(); + if (!this.error || this.error !== C.NETWORK_ERROR) { + this.status = C.STATUS_NOT_READY; + this.error = C.NETWORK_ERROR; + } + // Transport Recovery process + this.recoverTransport(); + } +}; + +/** + * Transport connection event. + * @private + * @event + * @param {SIP.Transport} transport. + */ +UA.prototype.onTransportConnected = function(transport) { + this.transport = transport; + + // Reset transport recovery counter + this.transportRecoverAttempts = 0; + + transport.server.status = SIP.Transport.C.STATUS_READY; + this.logger.log('connection state set to '+ SIP.Transport.C.STATUS_READY); + + if(this.status === C.STATUS_USER_CLOSED) { + return; + } + + this.status = C.STATUS_READY; + this.error = null; + + if(this.configuration.register) { + this.configuration.authenticationFactory.initialize().then(function () { + this.registerContext.onTransportConnected(); + }.bind(this)); + } + + this.emit('connected', { + transport: transport + }); +}; + + +/** + * Transport connecting event + * @private + * @param {SIP.Transport} transport. + * #param {Integer} attempts. + */ + UA.prototype.onTransportConnecting = function(transport, attempts) { + this.emit('connecting', { + transport: transport, + attempts: attempts + }); + }; + + +/** + * new Transaction + * @private + * @param {SIP.Transaction} transaction. + */ +UA.prototype.newTransaction = function(transaction) { + this.transactions[transaction.type][transaction.id] = transaction; + this.emit('newTransaction', {transaction: transaction}); +}; + + +/** + * destroy Transaction + * @private + * @param {SIP.Transaction} transaction. + */ +UA.prototype.destroyTransaction = function(transaction) { + delete this.transactions[transaction.type][transaction.id]; + this.emit('transactionDestroyed', { + transaction: transaction + }); +}; + + +//========================= +// receiveRequest +//========================= + +/** + * Request reception + * @private + * @param {SIP.IncomingRequest} request. + */ +UA.prototype.receiveRequest = function(request) { + var dialog, session, message, earlySubscription, + method = request.method, + transaction, + replaces, + replacedDialog, + self = this; + + function ruriMatches (uri) { + return uri && uri.user === request.ruri.user; + } + + // Check that request URI points to us + if(!(ruriMatches(this.configuration.uri) || + ruriMatches(this.contact.uri) || + ruriMatches(this.contact.pub_gruu) || + ruriMatches(this.contact.temp_gruu))) { + this.logger.warn('Request-URI does not point to us'); + if (request.method !== SIP.C.ACK) { + request.reply_sl(404); + } + return; + } + + // Check request URI scheme + if(request.ruri.scheme === SIP.C.SIPS) { + request.reply_sl(416); + return; + } + + // Check transaction + if(SIP.Transactions.checkTransaction(this, request)) { + return; + } + + /* RFC3261 12.2.2 + * Requests that do not change in any way the state of a dialog may be + * received within a dialog (for example, an OPTIONS request). + * They are processed as if they had been received outside the dialog. + */ + if(method === SIP.C.OPTIONS) { + new SIP.Transactions.NonInviteServerTransaction(request, this); + request.reply(200, null, [ + 'Allow: '+ SIP.UA.C.ALLOWED_METHODS.toString(), + 'Accept: '+ C.ACCEPTED_BODY_TYPES + ]); + } else if (method === SIP.C.MESSAGE) { + message = new SIP.ServerContext(this, request); + message.body = request.body; + message.content_type = request.getHeader('Content-Type') || 'text/plain'; + + request.reply(200, null); + this.emit('message', message); + } else if (method !== SIP.C.INVITE && + method !== SIP.C.ACK) { + // Let those methods pass through to normal processing for now. + transaction = new SIP.ServerContext(this, request); + } + + // Initial Request + if(!request.to_tag) { + switch(method) { + case SIP.C.INVITE: + replaces = + this.configuration.replaces !== SIP.C.supported.UNSUPPORTED && + request.parseHeader('replaces'); + + if (replaces) { + replacedDialog = this.dialogs[replaces.call_id + replaces.replaces_to_tag + replaces.replaces_from_tag]; + + if (!replacedDialog) { + //Replaced header without a matching dialog, reject + request.reply_sl(481, null); + return; + } else if (replacedDialog.owner.status === SIP.Session.C.STATUS_TERMINATED) { + request.reply_sl(603, null); + return; + } else if (replacedDialog.state === SIP.Dialog.C.STATUS_CONFIRMED && replaces.early_only) { + request.reply_sl(486, null); + return; + } + } + + var isMediaSupported = this.configuration.mediaHandlerFactory.isSupported; + if(!isMediaSupported || isMediaSupported()) { + session = new SIP.InviteServerContext(this, request); + session.replacee = replacedDialog && replacedDialog.owner; + session.on('invite', function() { + self.emit('invite', this); + }); + } else { + this.logger.warn('INVITE received but WebRTC is not supported'); + request.reply(488); + } + break; + case SIP.C.BYE: + // Out of dialog BYE received + request.reply(481); + break; + case SIP.C.CANCEL: + session = this.findSession(request); + if(session) { + session.receiveRequest(request); + } else { + this.logger.warn('received CANCEL request for a non existent session'); + } + break; + case SIP.C.ACK: + /* Absorb it. + * ACK request without a corresponding Invite Transaction + * and without To tag. + */ + break; + case SIP.C.NOTIFY: + if (this.configuration.allowLegacyNotifications && this.listeners('notify').length > 0) { + request.reply(200, null); + self.emit('notify', {request: request}); + } else { + request.reply(481, 'Subscription does not exist'); + } + break; + default: + request.reply(405); + break; + } + } + // In-dialog request + else { + dialog = this.findDialog(request); + + if(dialog) { + if (method === SIP.C.INVITE) { + new SIP.Transactions.InviteServerTransaction(request, this); + } + dialog.receiveRequest(request); + } else if (method === SIP.C.NOTIFY) { + session = this.findSession(request); + earlySubscription = this.findEarlySubscription(request); + if(session) { + session.receiveRequest(request); + } else if(earlySubscription) { + earlySubscription.receiveRequest(request); + } else { + this.logger.warn('received NOTIFY request for a non existent session or subscription'); + request.reply(481, 'Subscription does not exist'); + } + } + /* RFC3261 12.2.2 + * Request with to tag, but no matching dialog found. + * Exception: ACK for an Invite request for which a dialog has not + * been created. + */ + else { + if(method !== SIP.C.ACK) { + request.reply(481); + } + } + } +}; + +//================= +// Utils +//================= + +/** + * Get the session to which the request belongs to, if any. + * @private + * @param {SIP.IncomingRequest} request. + * @returns {SIP.OutgoingSession|SIP.IncomingSession|null} + */ +UA.prototype.findSession = function(request) { + return this.sessions[request.call_id + request.from_tag] || + this.sessions[request.call_id + request.to_tag] || + null; +}; + +/** + * Get the dialog to which the request belongs to, if any. + * @private + * @param {SIP.IncomingRequest} + * @returns {SIP.Dialog|null} + */ +UA.prototype.findDialog = function(request) { + return this.dialogs[request.call_id + request.from_tag + request.to_tag] || + this.dialogs[request.call_id + request.to_tag + request.from_tag] || + null; +}; + +/** + * Get the subscription which has not been confirmed to which the request belongs to, if any + * @private + * @param {SIP.IncomingRequest} + * @returns {SIP.Subscription|null} + */ +UA.prototype.findEarlySubscription = function(request) { + return this.earlySubscriptions[request.call_id + request.to_tag + request.getHeader('event')] || null; +}; + +/** + * Retrieve the next server to which connect. + * @private + * @returns {Object} ws_server + */ +UA.prototype.getNextWsServer = function() { + // Order servers by weight + var idx, length, ws_server, + candidates = []; + + length = this.configuration.wsServers.length; + for (idx = 0; idx < length; idx++) { + ws_server = this.configuration.wsServers[idx]; + + if (ws_server.status === SIP.Transport.C.STATUS_ERROR) { + continue; + } else if (candidates.length === 0) { + candidates.push(ws_server); + } else if (ws_server.weight > candidates[0].weight) { + candidates = [ws_server]; + } else if (ws_server.weight === candidates[0].weight) { + candidates.push(ws_server); + } + } + + idx = Math.floor(Math.random() * candidates.length); + + return candidates[idx]; +}; + +/** + * Close all sessions on transport error. + * @private + */ +UA.prototype.closeSessionsOnTransportError = function() { + var idx; + + // Run _transportError_ for every Session + for(idx in this.sessions) { + this.sessions[idx].onTransportError(); + } + // Call registerContext _onTransportClosed_ + this.registerContext.onTransportClosed(); +}; + +UA.prototype.recoverTransport = function(ua) { + var idx, length, k, nextRetry, count, server; + + ua = ua || this; + count = ua.transportRecoverAttempts; + + length = ua.configuration.wsServers.length; + for (idx = 0; idx < length; idx++) { + ua.configuration.wsServers[idx].status = 0; + } + + server = ua.getNextWsServer(); + + k = Math.floor((Math.random() * Math.pow(2,count)) +1); + nextRetry = k * ua.configuration.connectionRecoveryMinInterval; + + if (nextRetry > ua.configuration.connectionRecoveryMaxInterval) { + this.logger.log('time for next connection attempt exceeds connectionRecoveryMaxInterval, resetting counter'); + nextRetry = ua.configuration.connectionRecoveryMinInterval; + count = 0; + } + + this.logger.log('next connection attempt in '+ nextRetry +' seconds'); + + this.transportRecoveryTimer = SIP.Timers.setTimeout( + function(){ + ua.transportRecoverAttempts = count + 1; + new SIP.Transport(ua, server); + }, nextRetry * 1000); +}; + +function checkAuthenticationFactory (authenticationFactory) { + if (!(authenticationFactory instanceof Function)) { + return; + } + if (!authenticationFactory.initialize) { + authenticationFactory.initialize = function initialize () { + return SIP.Utils.Promise.resolve(); + }; + } + return authenticationFactory; +} + +/** + * Configuration load. + * @private + * returns {Boolean} + */ +UA.prototype.loadConfig = function(configuration) { + // Settings and default values + var parameter, value, checked_value, hostportParams, registrarServer, + settings = { + /* Host address + * Value to be set in Via sent_by and host part of Contact FQDN + */ + viaHost: SIP.Utils.createRandomToken(12) + '.invalid', + + uri: new SIP.URI('sip', 'anonymous.' + SIP.Utils.createRandomToken(6), 'anonymous.invalid', null, null), + wsServers: [{ + scheme: 'WSS', + sip_uri: '<sip:edge.sip.onsip.com;transport=ws;lr>', + status: 0, + weight: 0, + ws_uri: 'wss://edge.sip.onsip.com' + }], + + //Custom Configuration Settings + custom: {}, + + //Display name + displayName: '', + + // Password + password: null, + + // Registration parameters + registerExpires: 600, + register: true, + registrarServer: null, + + // Transport related parameters + wsServerMaxReconnection: 3, + wsServerReconnectionTimeout: 4, + + connectionRecoveryMinInterval: 2, + connectionRecoveryMaxInterval: 30, + + keepAliveInterval: 0, + + extraSupported: [], + + usePreloadedRoute: false, + + //string to be inserted into User-Agent request header + userAgentString: SIP.C.USER_AGENT, + + // Session parameters + iceCheckingTimeout: 5000, + noAnswerTimeout: 60, + stunServers: ['stun:stun.l.google.com:19302'], + turnServers: [], + + // Logging parameters + traceSip: false, + + // Hacks + hackViaTcp: false, + hackIpInContact: false, + hackWssInTransport: false, + hackAllowUnregisteredOptionTags: false, + hackCleanJitsiSdpImageattr: false, + hackStripTcp: false, + + contactTransport: 'ws', + forceRport: false, + + //autostarting + autostart: true, + autostop: true, + + //Reliable Provisional Responses + rel100: SIP.C.supported.UNSUPPORTED, + + // Replaces header (RFC 3891) + // http://tools.ietf.org/html/rfc3891 + replaces: SIP.C.supported.UNSUPPORTED, + + mediaHandlerFactory: SIP.WebRTC.MediaHandler.defaultFactory, + + authenticationFactory: checkAuthenticationFactory(function authenticationFactory (ua) { + return new SIP.DigestAuthentication(ua); + }), + + allowLegacyNotifications: false + }; + + // Pre-Configuration + function aliasUnderscored (parameter, logger) { + var underscored = parameter.replace(/([a-z][A-Z])/g, function (m) { + return m[0] + '_' + m[1].toLowerCase(); + }); + + if (parameter === underscored) { + return; + } + + var hasParameter = configuration.hasOwnProperty(parameter); + if (configuration.hasOwnProperty(underscored)) { + logger.warn(underscored + ' is deprecated, please use ' + parameter); + if (hasParameter) { + logger.warn(parameter + ' overriding ' + underscored); + } + } + + configuration[parameter] = hasParameter ? configuration[parameter] : configuration[underscored]; + } + + var configCheck = this.getConfigurationCheck(); + + // Check Mandatory parameters + for(parameter in configCheck.mandatory) { + aliasUnderscored(parameter, this.logger); + if(!configuration.hasOwnProperty(parameter)) { + throw new SIP.Exceptions.ConfigurationError(parameter); + } else { + value = configuration[parameter]; + checked_value = configCheck.mandatory[parameter](value); + if (checked_value !== undefined) { + settings[parameter] = checked_value; + } else { + throw new SIP.Exceptions.ConfigurationError(parameter, value); + } + } + } + + SIP.Utils.optionsOverride(configuration, 'rel100', 'reliable', true, this.logger, SIP.C.supported.UNSUPPORTED); + + var emptyArraysAllowed = ['stunServers', 'turnServers']; + + // Check Optional parameters + for(parameter in configCheck.optional) { + aliasUnderscored(parameter, this.logger); + if(configuration.hasOwnProperty(parameter)) { + value = configuration[parameter]; + + // If the parameter value is an empty array, but shouldn't be, apply its default value. + if (value instanceof Array && value.length === 0 && emptyArraysAllowed.indexOf(parameter) < 0) { continue; } + + // If the parameter value is null, empty string, or undefined then apply its default value. + if(value === null || value === "" || value === undefined) { continue; } + // If it's a number with NaN value then also apply its default value. + // NOTE: JS does not allow "value === NaN", the following does the work: + else if(typeof(value) === 'number' && isNaN(value)) { continue; } + + checked_value = configCheck.optional[parameter](value); + if (checked_value !== undefined) { + settings[parameter] = checked_value; + } else { + throw new SIP.Exceptions.ConfigurationError(parameter, value); + } + } + } + + // Sanity Checks + + // Connection recovery intervals + if(settings.connectionRecoveryMaxInterval < settings.connectionRecoveryMinInterval) { + throw new SIP.Exceptions.ConfigurationError('connectionRecoveryMaxInterval', settings.connectionRecoveryMaxInterval); + } + + // Post Configuration Process + + // Allow passing 0 number as displayName. + if (settings.displayName === 0) { + settings.displayName = '0'; + } + + // Instance-id for GRUU + if (!settings.instanceId) { + settings.instanceId = SIP.Utils.newUUID(); + } + + // sipjsId instance parameter. Static random tag of length 5 + settings.sipjsId = SIP.Utils.createRandomToken(5); + + // String containing settings.uri without scheme and user. + hostportParams = settings.uri.clone(); + hostportParams.user = null; + settings.hostportParams = hostportParams.toRaw().replace(/^sip:/i, ''); + + /* Check whether authorizationUser is explicitly defined. + * Take 'settings.uri.user' value if not. + */ + if (!settings.authorizationUser) { + settings.authorizationUser = settings.uri.user; + } + + /* If no 'registrarServer' is set use the 'uri' value without user portion. */ + if (!settings.registrarServer) { + registrarServer = settings.uri.clone(); + registrarServer.user = null; + settings.registrarServer = registrarServer; + } + + // User noAnswerTimeout + settings.noAnswerTimeout = settings.noAnswerTimeout * 1000; + + // Via Host + if (settings.hackIpInContact) { + if (typeof settings.hackIpInContact === 'boolean') { + settings.viaHost = SIP.Utils.getRandomTestNetIP(); + } + else if (typeof settings.hackIpInContact === 'string') { + settings.viaHost = settings.hackIpInContact; + } + } + + // Contact transport parameter + if (settings.hackWssInTransport) { + settings.contactTransport = 'wss'; + } + + this.contact = { + pub_gruu: null, + temp_gruu: null, + uri: new SIP.URI('sip', SIP.Utils.createRandomToken(8), settings.viaHost, null, {transport: settings.contactTransport}), + toString: function(options){ + options = options || {}; + + var + anonymous = options.anonymous || null, + outbound = options.outbound || null, + contact = '<'; + + if (anonymous) { + contact += (this.temp_gruu || ('sip:anonymous@anonymous.invalid;transport='+settings.contactTransport)).toString(); + } else { + contact += (this.pub_gruu || this.uri).toString(); + } + + if (outbound) { + contact += ';ob'; + } + + contact += '>'; + + return contact; + } + }; + + // media overrides mediaConstraints + SIP.Utils.optionsOverride(settings, 'media', 'mediaConstraints', true, this.logger); + + var skeleton = {}; + // Fill the value of the configuration_skeleton + for(parameter in settings) { + skeleton[parameter] = { + value: settings[parameter], + writable: (parameter === 'register' || parameter === 'custom'), + configurable: false + }; + } + + Object.defineProperties(this.configuration, skeleton); + + this.logger.log('configuration parameters after validation:'); + for(parameter in settings) { + switch(parameter) { + case 'uri': + case 'registrarServer': + case 'mediaHandlerFactory': + this.logger.log('· ' + parameter + ': ' + settings[parameter]); + break; + case 'password': + this.logger.log('· ' + parameter + ': ' + 'NOT SHOWN'); + break; + default: + this.logger.log('· ' + parameter + ': ' + JSON.stringify(settings[parameter])); + } + } + + return; +}; + +/** + * Configuration checker. + * @private + * @return {Boolean} + */ +UA.prototype.getConfigurationCheck = function () { + return { + mandatory: { + }, + + optional: { + + uri: function(uri) { + var parsed; + + if (!(/^sip:/i).test(uri)) { + uri = SIP.C.SIP + ':' + uri; + } + parsed = SIP.URI.parse(uri); + + if(!parsed) { + return; + } else if(!parsed.user) { + return; + } else { + return parsed; + } + }, + + //Note: this function used to call 'this.logger.error' but calling 'this' with anything here is invalid + wsServers: function(wsServers) { + var idx, length, url; + + /* Allow defining wsServers parameter as: + * String: "host" + * Array of Strings: ["host1", "host2"] + * Array of Objects: [{ws_uri:"host1", weight:1}, {ws_uri:"host2", weight:0}] + * Array of Objects and Strings: [{ws_uri:"host1"}, "host2"] + */ + if (typeof wsServers === 'string') { + wsServers = [{ws_uri: wsServers}]; + } else if (wsServers instanceof Array) { + length = wsServers.length; + for (idx = 0; idx < length; idx++) { + if (typeof wsServers[idx] === 'string'){ + wsServers[idx] = {ws_uri: wsServers[idx]}; + } + } + } else { + return; + } + + if (wsServers.length === 0) { + return false; + } + + length = wsServers.length; + for (idx = 0; idx < length; idx++) { + if (!wsServers[idx].ws_uri) { + return; + } + if (wsServers[idx].weight && !Number(wsServers[idx].weight)) { + return; + } + + url = SIP.Grammar.parse(wsServers[idx].ws_uri, 'absoluteURI'); + + if(url === -1) { + return; + } else if(['wss', 'ws', 'udp'].indexOf(url.scheme) < 0) { + return; + } else { + wsServers[idx].sip_uri = '<sip:' + url.host + (url.port ? ':' + url.port : '') + ';transport=' + url.scheme.replace(/^wss$/i, 'ws') + ';lr>'; + + if (!wsServers[idx].weight) { + wsServers[idx].weight = 0; + } + + wsServers[idx].status = 0; + wsServers[idx].scheme = url.scheme.toUpperCase(); + } + } + return wsServers; + }, + + authorizationUser: function(authorizationUser) { + if(SIP.Grammar.parse('"'+ authorizationUser +'"', 'quoted_string') === -1) { + return; + } else { + return authorizationUser; + } + }, + + connectionRecoveryMaxInterval: function(connectionRecoveryMaxInterval) { + var value; + if(SIP.Utils.isDecimal(connectionRecoveryMaxInterval)) { + value = Number(connectionRecoveryMaxInterval); + if(value > 0) { + return value; + } + } + }, + + connectionRecoveryMinInterval: function(connectionRecoveryMinInterval) { + var value; + if(SIP.Utils.isDecimal(connectionRecoveryMinInterval)) { + value = Number(connectionRecoveryMinInterval); + if(value > 0) { + return value; + } + } + }, + + displayName: function(displayName) { + if(SIP.Grammar.parse('"' + displayName + '"', 'displayName') === -1) { + return; + } else { + return displayName; + } + }, + + hackViaTcp: function(hackViaTcp) { + if (typeof hackViaTcp === 'boolean') { + return hackViaTcp; + } + }, + + hackIpInContact: function(hackIpInContact) { + if (typeof hackIpInContact === 'boolean') { + return hackIpInContact; + } + else if (typeof hackIpInContact === 'string' && SIP.Grammar.parse(hackIpInContact, 'host') !== -1) { + return hackIpInContact; + } + }, + + iceCheckingTimeout: function(iceCheckingTimeout) { + if(SIP.Utils.isDecimal(iceCheckingTimeout)) { + return Math.max(500, iceCheckingTimeout); + } + }, + + hackWssInTransport: function(hackWssInTransport) { + if (typeof hackWssInTransport === 'boolean') { + return hackWssInTransport; + } + }, + + hackAllowUnregisteredOptionTags: function(hackAllowUnregisteredOptionTags) { + if (typeof hackAllowUnregisteredOptionTags === 'boolean') { + return hackAllowUnregisteredOptionTags; + } + }, + + hackCleanJitsiSdpImageattr: function(hackCleanJitsiSdpImageattr) { + if (typeof hackCleanJitsiSdpImageattr === 'boolean') { + return hackCleanJitsiSdpImageattr; + } + }, + + hackStripTcp: function(hackStripTcp) { + if (typeof hackStripTcp === 'boolean') { + return hackStripTcp; + } + }, + + contactTransport: function(contactTransport) { + if (typeof contactTransport === 'string') { + return contactTransport; + } + }, + + forceRport: function(forceRport) { + if (typeof forceRport === 'boolean') { + return forceRport; + } + }, + + instanceId: function(instanceId) { + if(typeof instanceId !== 'string') { + return; + } + + if ((/^uuid:/i.test(instanceId))) { + instanceId = instanceId.substr(5); + } + + if(SIP.Grammar.parse(instanceId, 'uuid') === -1) { + return; + } else { + return instanceId; + } + }, + + keepAliveInterval: function(keepAliveInterval) { + var value; + if (SIP.Utils.isDecimal(keepAliveInterval)) { + value = Number(keepAliveInterval); + if (value > 0) { + return value; + } + } + }, + + extraSupported: function(optionTags) { + var idx, length; + + if (!(optionTags instanceof Array)) { + return; + } + + length = optionTags.length; + for (idx = 0; idx < length; idx++) { + if (typeof optionTags[idx] !== 'string') { + return; + } + } + + return optionTags; + }, + + noAnswerTimeout: function(noAnswerTimeout) { + var value; + if (SIP.Utils.isDecimal(noAnswerTimeout)) { + value = Number(noAnswerTimeout); + if (value > 0) { + return value; + } + } + }, + + password: function(password) { + return String(password); + }, + + rel100: function(rel100) { + if(rel100 === SIP.C.supported.REQUIRED) { + return SIP.C.supported.REQUIRED; + } else if (rel100 === SIP.C.supported.SUPPORTED) { + return SIP.C.supported.SUPPORTED; + } else { + return SIP.C.supported.UNSUPPORTED; + } + }, + + replaces: function(replaces) { + if(replaces === SIP.C.supported.REQUIRED) { + return SIP.C.supported.REQUIRED; + } else if (replaces === SIP.C.supported.SUPPORTED) { + return SIP.C.supported.SUPPORTED; + } else { + return SIP.C.supported.UNSUPPORTED; + } + }, + + register: function(register) { + if (typeof register === 'boolean') { + return register; + } + }, + + registerExpires: function(registerExpires) { + var value; + if (SIP.Utils.isDecimal(registerExpires)) { + value = Number(registerExpires); + if (value > 0) { + return value; + } + } + }, + + registrarServer: function(registrarServer) { + var parsed; + + if(typeof registrarServer !== 'string') { + return; + } + + if (!/^sip:/i.test(registrarServer)) { + registrarServer = SIP.C.SIP + ':' + registrarServer; + } + parsed = SIP.URI.parse(registrarServer); + + if(!parsed) { + return; + } else if(parsed.user) { + return; + } else { + return parsed; + } + }, + + stunServers: function(stunServers) { + var idx, length, stun_server; + + if (typeof stunServers === 'string') { + stunServers = [stunServers]; + } else if (!(stunServers instanceof Array)) { + return; + } + + length = stunServers.length; + for (idx = 0; idx < length; idx++) { + stun_server = stunServers[idx]; + if (!(/^stuns?:/.test(stun_server))) { + stun_server = 'stun:' + stun_server; + } + + if(SIP.Grammar.parse(stun_server, 'stun_URI') === -1) { + return; + } else { + stunServers[idx] = stun_server; + } + } + return stunServers; + }, + + traceSip: function(traceSip) { + if (typeof traceSip === 'boolean') { + return traceSip; + } + }, + + turnServers: function(turnServers) { + var idx, jdx, length, turn_server, num_turn_server_urls, url; + + if (turnServers instanceof Array) { + // Do nothing + } else { + turnServers = [turnServers]; + } + + length = turnServers.length; + for (idx = 0; idx < length; idx++) { + turn_server = turnServers[idx]; + //Backwards compatibility: Allow defining the turn_server url with the 'server' property. + if (turn_server.server) { + turn_server.urls = [turn_server.server]; + } + + if (!turn_server.urls) { + return; + } + + if (turn_server.urls instanceof Array) { + num_turn_server_urls = turn_server.urls.length; + } else { + turn_server.urls = [turn_server.urls]; + num_turn_server_urls = 1; + } + + for (jdx = 0; jdx < num_turn_server_urls; jdx++) { + url = turn_server.urls[jdx]; + + if (!(/^turns?:/.test(url))) { + url = 'turn:' + url; + } + + if(SIP.Grammar.parse(url, 'turn_URI') === -1) { + return; + } + } + } + return turnServers; + }, + + rtcpMuxPolicy: function(rtcpMuxPolicy) { + if (typeof rtcpMuxPolicy === 'string') { + return rtcpMuxPolicy; + } + }, + + userAgentString: function(userAgentString) { + if (typeof userAgentString === 'string') { + return userAgentString; + } + }, + + usePreloadedRoute: function(usePreloadedRoute) { + if (typeof usePreloadedRoute === 'boolean') { + return usePreloadedRoute; + } + }, + + wsServerMaxReconnection: function(wsServerMaxReconnection) { + var value; + if (SIP.Utils.isDecimal(wsServerMaxReconnection)) { + value = Number(wsServerMaxReconnection); + if (value > 0) { + return value; + } + } + }, + + wsServerReconnectionTimeout: function(wsServerReconnectionTimeout) { + var value; + if (SIP.Utils.isDecimal(wsServerReconnectionTimeout)) { + value = Number(wsServerReconnectionTimeout); + if (value > 0) { + return value; + } + } + }, + + autostart: function(autostart) { + if (typeof autostart === 'boolean') { + return autostart; + } + }, + + autostop: function(autostop) { + if (typeof autostop === 'boolean') { + return autostop; + } + }, + + mediaHandlerFactory: function(mediaHandlerFactory) { + if (mediaHandlerFactory instanceof Function) { + var promisifiedFactory = function promisifiedFactory () { + var mediaHandler = mediaHandlerFactory.apply(this, arguments); + + function patchMethod (methodName) { + var method = mediaHandler[methodName]; + if (method.length > 1) { + var callbacksFirst = methodName === 'getDescription'; + mediaHandler[methodName] = SIP.Utils.promisify(mediaHandler, methodName, callbacksFirst); + } + } + + patchMethod('getDescription'); + patchMethod('setDescription'); + + return mediaHandler; + }; + + promisifiedFactory.isSupported = mediaHandlerFactory.isSupported; + return promisifiedFactory; + } + }, + + authenticationFactory: checkAuthenticationFactory, + + allowLegacyNotifications: function(allowLegacyNotifications) { + if (typeof allowLegacyNotifications === 'boolean') { + return allowLegacyNotifications; + } + }, + + custom: function(custom) { + if (typeof custom === 'object') { + return custom; + } + } + } + }; +}; + +UA.C = C; +SIP.UA = UA; +}; + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{}],30:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview SIP URI + */ + +/** + * @augments SIP + * @class Class creating a SIP URI. + * + * @param {String} [scheme] + * @param {String} [user] + * @param {String} host + * @param {String} [port] + * @param {Object} [parameters] + * @param {Object} [headers] + * + */ +module.exports = function (SIP) { +var URI; + +URI = function(scheme, user, host, port, parameters, headers) { + var param, header, raw, normal; + + // Checks + if(!host) { + throw new TypeError('missing or invalid "host" parameter'); + } + + // Initialize parameters + scheme = scheme || SIP.C.SIP; + this.parameters = {}; + this.headers = {}; + + for (param in parameters) { + this.setParam(param, parameters[param]); + } + + for (header in headers) { + this.setHeader(header, headers[header]); + } + + // Raw URI + raw = { + scheme: scheme, + user: user, + host: host, + port: port + }; + + // Normalized URI + normal = { + scheme: scheme.toLowerCase(), + user: user, + host: host.toLowerCase(), + port: port + }; + + Object.defineProperties(this, { + _normal: { + get: function() { return normal; } + }, + + _raw: { + get: function() { return raw; } + }, + + scheme: { + get: function() { return normal.scheme; }, + set: function(value) { + raw.scheme = value; + normal.scheme = value.toLowerCase(); + } + }, + + user: { + get: function() { return normal.user; }, + set: function(value) { + normal.user = raw.user = value; + } + }, + + host: { + get: function() { return normal.host; }, + set: function(value) { + raw.host = value; + normal.host = value.toLowerCase(); + } + }, + + aor: { + get: function() { return normal.user + '@' + normal.host; } + }, + + port: { + get: function() { return normal.port; }, + set: function(value) { + normal.port = raw.port = value === 0 ? value : (parseInt(value,10) || null); + } + } + }); +}; + +URI.prototype = { + setParam: function(key, value) { + if(key) { + this.parameters[key.toLowerCase()] = (typeof value === 'undefined' || value === null) ? null : value.toString().toLowerCase(); + } + }, + + getParam: function(key) { + if(key) { + return this.parameters[key.toLowerCase()]; + } + }, + + hasParam: function(key) { + if(key) { + return (this.parameters.hasOwnProperty(key.toLowerCase()) && true) || false; + } + }, + + deleteParam: function(parameter) { + var value; + parameter = parameter.toLowerCase(); + if (this.parameters.hasOwnProperty(parameter)) { + value = this.parameters[parameter]; + delete this.parameters[parameter]; + return value; + } + }, + + clearParams: function() { + this.parameters = {}; + }, + + setHeader: function(name, value) { + this.headers[SIP.Utils.headerize(name)] = (value instanceof Array) ? value : [value]; + }, + + getHeader: function(name) { + if(name) { + return this.headers[SIP.Utils.headerize(name)]; + } + }, + + hasHeader: function(name) { + if(name) { + return (this.headers.hasOwnProperty(SIP.Utils.headerize(name)) && true) || false; + } + }, + + deleteHeader: function(header) { + var value; + header = SIP.Utils.headerize(header); + if(this.headers.hasOwnProperty(header)) { + value = this.headers[header]; + delete this.headers[header]; + return value; + } + }, + + clearHeaders: function() { + this.headers = {}; + }, + + clone: function() { + return new URI( + this._raw.scheme, + this._raw.user, + this._raw.host, + this._raw.port, + JSON.parse(JSON.stringify(this.parameters)), + JSON.parse(JSON.stringify(this.headers))); + }, + + toRaw: function() { + return this._toString(this._raw); + }, + + toString: function() { + return this._toString(this._normal); + }, + + _toString: function(uri) { + var header, parameter, idx, uriString, headers = []; + + uriString = uri.scheme + ':'; + // add slashes if it's not a sip(s) URI + if (!uri.scheme.toLowerCase().match("^sips?$")) { + uriString += "//"; + } + if (uri.user) { + uriString += SIP.Utils.escapeUser(uri.user) + '@'; + } + uriString += uri.host; + if (uri.port || uri.port === 0) { + uriString += ':' + uri.port; + } + + for (parameter in this.parameters) { + uriString += ';' + parameter; + + if (this.parameters[parameter] !== null) { + uriString += '='+ this.parameters[parameter]; + } + } + + for(header in this.headers) { + for(idx in this.headers[header]) { + headers.push(header + '=' + this.headers[header][idx]); + } + } + + if (headers.length > 0) { + uriString += '?' + headers.join('&'); + } + + return uriString; + } +}; + + +/** + * Parse the given string and returns a SIP.URI instance or undefined if + * it is an invalid URI. + * @public + * @param {String} uri + */ +URI.parse = function(uri) { + uri = SIP.Grammar.parse(uri,'SIP_URI'); + + if (uri !== -1) { + return uri; + } else { + return undefined; + } +}; + +SIP.URI = URI; +}; + +},{}],31:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview Utils + */ + +module.exports = function (SIP, environment) { +var Utils; + +Utils= { + + Promise: environment.Promise, + + defer: function defer () { + var deferred = {}; + deferred.promise = new Utils.Promise(function (resolve, reject) { + deferred.resolve = resolve; + deferred.reject = reject; + }); + return deferred; + }, + + promisify: function promisify (object, methodName, callbacksFirst) { + var oldMethod = object[methodName]; + return function promisifiedMethod (arg, onSuccess, onFailure) { + return new Utils.Promise(function (resolve, reject) { + var oldArgs = [arg, resolve, reject]; + if (callbacksFirst) { + oldArgs = [resolve, reject, arg]; + } + oldMethod.apply(object, oldArgs); + }).then(onSuccess, onFailure); + }; + }, + + augment: function (object, constructor, args, override) { + var idx, proto; + + // Add public properties from constructor's prototype onto object + proto = constructor.prototype; + for (idx in proto) { + if (override || object[idx] === undefined) { + object[idx] = proto[idx]; + } + } + + // Construct the object as though it were just created by constructor + constructor.apply(object, args); + }, + + optionsOverride: function (options, winner, loser, isDeprecated, logger, defaultValue) { + if (isDeprecated && options[loser]) { + logger.warn(loser + ' is deprecated, please use ' + winner + ' instead'); + } + + if (options[winner] && options[loser]) { + logger.warn(winner + ' overriding ' + loser); + } + + options[winner] = options[winner] || options[loser] || defaultValue; + }, + + str_utf8_length: function(string) { + return encodeURIComponent(string).replace(/%[A-F\d]{2}/g, 'U').length; + }, + + generateFakeSDP: function(body) { + if (!body) { + return; + } + + var start = body.indexOf('o='); + var end = body.indexOf('\r\n', start); + + return 'v=0\r\n' + body.slice(start, end) + '\r\ns=-\r\nt=0 0\r\nc=IN IP4 0.0.0.0'; + }, + + isFunction: function(fn) { + if (fn !== undefined) { + return Object.prototype.toString.call(fn) === '[object Function]'; + } else { + return false; + } + }, + + isDecimal: function (num) { + return !isNaN(num) && (parseFloat(num) === parseInt(num,10)); + }, + + createRandomToken: function(size, base) { + var i, r, + token = ''; + + base = base || 32; + + for( i=0; i < size; i++ ) { + r = Math.random() * base|0; + token += r.toString(base); + } + + return token; + }, + + newTag: function() { + return SIP.Utils.createRandomToken(SIP.UA.C.TAG_LENGTH); + }, + + // http://stackoverflow.com/users/109538/broofa + newUUID: function() { + var UUID = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { + var r = Math.random()*16|0, v = c === 'x' ? r : (r&0x3|0x8); + return v.toString(16); + }); + + return UUID; + }, + + hostType: function(host) { + if (!host) { + return; + } else { + host = SIP.Grammar.parse(host,'host'); + if (host !== -1) { + return host.host_type; + } + } + }, + + /** + * Normalize SIP URI. + * NOTE: It does not allow a SIP URI without username. + * Accepts 'sip', 'sips' and 'tel' URIs and convert them into 'sip'. + * Detects the domain part (if given) and properly hex-escapes the user portion. + * If the user portion has only 'tel' number symbols the user portion is clean of 'tel' visual separators. + * @private + * @param {String} target + * @param {String} [domain] + */ + normalizeTarget: function(target, domain) { + var uri, target_array, target_user, target_domain; + + // If no target is given then raise an error. + if (!target) { + return; + // If a SIP.URI instance is given then return it. + } else if (target instanceof SIP.URI) { + return target; + + // If a string is given split it by '@': + // - Last fragment is the desired domain. + // - Otherwise append the given domain argument. + } else if (typeof target === 'string') { + target_array = target.split('@'); + + switch(target_array.length) { + case 1: + if (!domain) { + return; + } + target_user = target; + target_domain = domain; + break; + case 2: + target_user = target_array[0]; + target_domain = target_array[1]; + break; + default: + target_user = target_array.slice(0, target_array.length-1).join('@'); + target_domain = target_array[target_array.length-1]; + } + + // Remove the URI scheme (if present). + target_user = target_user.replace(/^(sips?|tel):/i, ''); + + // Remove 'tel' visual separators if the user portion just contains 'tel' number symbols. + if (/^[\-\.\(\)]*\+?[0-9\-\.\(\)]+$/.test(target_user)) { + target_user = target_user.replace(/[\-\.\(\)]/g, ''); + } + + // Build the complete SIP URI. + target = SIP.C.SIP + ':' + SIP.Utils.escapeUser(target_user) + '@' + target_domain; + + // Finally parse the resulting URI. + if (uri = SIP.URI.parse(target)) { + return uri; + } else { + return; + } + } else { + return; + } + }, + + /** + * Hex-escape a SIP URI user. + * @private + * @param {String} user + */ + escapeUser: function(user) { + // Don't hex-escape ':' (%3A), '+' (%2B), '?' (%3F"), '/' (%2F). + return encodeURIComponent(decodeURIComponent(user)).replace(/%3A/ig, ':').replace(/%2B/ig, '+').replace(/%3F/ig, '?').replace(/%2F/ig, '/'); + }, + + headerize: function(string) { + var exceptions = { + 'Call-Id': 'Call-ID', + 'Cseq': 'CSeq', + 'Min-Se': 'Min-SE', + 'Rack': 'RAck', + 'Rseq': 'RSeq', + 'Www-Authenticate': 'WWW-Authenticate' + }, + name = string.toLowerCase().replace(/_/g,'-').split('-'), + hname = '', + parts = name.length, part; + + for (part = 0; part < parts; part++) { + if (part !== 0) { + hname +='-'; + } + hname += name[part].charAt(0).toUpperCase()+name[part].substring(1); + } + if (exceptions[hname]) { + hname = exceptions[hname]; + } + return hname; + }, + + sipErrorCause: function(status_code) { + var cause; + + for (cause in SIP.C.SIP_ERROR_CAUSES) { + if (SIP.C.SIP_ERROR_CAUSES[cause].indexOf(status_code) !== -1) { + return SIP.C.causes[cause]; + } + } + + return SIP.C.causes.SIP_FAILURE_CODE; + }, + + getReasonPhrase: function getReasonPhrase (code, specific) { + return specific || SIP.C.REASON_PHRASE[code] || ''; + }, + + getReasonHeaderValue: function getReasonHeaderValue (code, reason) { + reason = SIP.Utils.getReasonPhrase(code, reason); + return 'SIP ;cause=' + code + ' ;text="' + reason + '"'; + }, + + getCancelReason: function getCancelReason (code, reason) { + if (code && code < 200 || code > 699) { + throw new TypeError('Invalid status_code: ' + code); + } else if (code) { + return SIP.Utils.getReasonHeaderValue(code, reason); + } + }, + + buildStatusLine: function buildStatusLine (code, reason) { + code = code || null; + reason = reason || null; + + // Validate code and reason values + if (!code || (code < 100 || code > 699)) { + throw new TypeError('Invalid status_code: '+ code); + } else if (reason && typeof reason !== 'string' && !(reason instanceof String)) { + throw new TypeError('Invalid reason_phrase: '+ reason); + } + + reason = Utils.getReasonPhrase(code, reason); + + return 'SIP/2.0 ' + code + ' ' + reason + '\r\n'; + }, + + /** + * Generate a random Test-Net IP (http://tools.ietf.org/html/rfc5735) + * @private + */ + getRandomTestNetIP: function() { + function getOctet(from,to) { + return Math.floor(Math.random()*(to-from+1)+from); + } + return '192.0.2.' + getOctet(1, 254); + }, + + // MD5 (Message-Digest Algorithm) http://www.webtoolkit.info + calculateMD5: function(string) { + function RotateLeft(lValue, iShiftBits) { + return (lValue<<iShiftBits) | (lValue>>>(32-iShiftBits)); + } + + function AddUnsigned(lX,lY) { + var lX4,lY4,lX8,lY8,lResult; + lX8 = (lX & 0x80000000); + lY8 = (lY & 0x80000000); + lX4 = (lX & 0x40000000); + lY4 = (lY & 0x40000000); + lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF); + if (lX4 & lY4) { + return (lResult ^ 0x80000000 ^ lX8 ^ lY8); + } + if (lX4 | lY4) { + if (lResult & 0x40000000) { + return (lResult ^ 0xC0000000 ^ lX8 ^ lY8); + } else { + return (lResult ^ 0x40000000 ^ lX8 ^ lY8); + } + } else { + return (lResult ^ lX8 ^ lY8); + } + } + + function F(x,y,z) { + return (x & y) | ((~x) & z); + } + + function G(x,y,z) { + return (x & z) | (y & (~z)); + } + + function H(x,y,z) { + return (x ^ y ^ z); + } + + function I(x,y,z) { + return (y ^ (x | (~z))); + } + + function FF(a,b,c,d,x,s,ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + + function GG(a,b,c,d,x,s,ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + + function HH(a,b,c,d,x,s,ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + + function II(a,b,c,d,x,s,ac) { + a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac)); + return AddUnsigned(RotateLeft(a, s), b); + } + + function ConvertToWordArray(string) { + var lWordCount; + var lMessageLength = string.length; + var lNumberOfWords_temp1=lMessageLength + 8; + var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64; + var lNumberOfWords = (lNumberOfWords_temp2+1)*16; + var lWordArray=Array(lNumberOfWords-1); + var lBytePosition = 0; + var lByteCount = 0; + while ( lByteCount < lMessageLength ) { + lWordCount = (lByteCount-(lByteCount % 4))/4; + lBytePosition = (lByteCount % 4)*8; + lWordArray[lWordCount] = (lWordArray[lWordCount] | (string.charCodeAt(lByteCount)<<lBytePosition)); + lByteCount++; + } + lWordCount = (lByteCount-(lByteCount % 4))/4; + lBytePosition = (lByteCount % 4)*8; + lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80<<lBytePosition); + lWordArray[lNumberOfWords-2] = lMessageLength<<3; + lWordArray[lNumberOfWords-1] = lMessageLength>>>29; + return lWordArray; + } + + function WordToHex(lValue) { + var WordToHexValue="",WordToHexValue_temp="",lByte,lCount; + for (lCount = 0;lCount<=3;lCount++) { + lByte = (lValue>>>(lCount*8)) & 255; + WordToHexValue_temp = "0" + lByte.toString(16); + WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length-2,2); + } + return WordToHexValue; + } + + function Utf8Encode(string) { + string = string.replace(/\r\n/g,"\n"); + var utftext = ""; + + for (var n = 0; n < string.length; n++) { + var c = string.charCodeAt(n); + + if (c < 128) { + utftext += String.fromCharCode(c); + } + else if((c > 127) && (c < 2048)) { + utftext += String.fromCharCode((c >> 6) | 192); + utftext += String.fromCharCode((c & 63) | 128); + } + else { + utftext += String.fromCharCode((c >> 12) | 224); + utftext += String.fromCharCode(((c >> 6) & 63) | 128); + utftext += String.fromCharCode((c & 63) | 128); + } + } + return utftext; + } + + var x=[]; + var k,AA,BB,CC,DD,a,b,c,d; + var S11=7, S12=12, S13=17, S14=22; + var S21=5, S22=9 , S23=14, S24=20; + var S31=4, S32=11, S33=16, S34=23; + var S41=6, S42=10, S43=15, S44=21; + + string = Utf8Encode(string); + + x = ConvertToWordArray(string); + + a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476; + + for (k=0;k<x.length;k+=16) { + AA=a; BB=b; CC=c; DD=d; + a=FF(a,b,c,d,x[k+0], S11,0xD76AA478); + d=FF(d,a,b,c,x[k+1], S12,0xE8C7B756); + c=FF(c,d,a,b,x[k+2], S13,0x242070DB); + b=FF(b,c,d,a,x[k+3], S14,0xC1BDCEEE); + a=FF(a,b,c,d,x[k+4], S11,0xF57C0FAF); + d=FF(d,a,b,c,x[k+5], S12,0x4787C62A); + c=FF(c,d,a,b,x[k+6], S13,0xA8304613); + b=FF(b,c,d,a,x[k+7], S14,0xFD469501); + a=FF(a,b,c,d,x[k+8], S11,0x698098D8); + d=FF(d,a,b,c,x[k+9], S12,0x8B44F7AF); + c=FF(c,d,a,b,x[k+10],S13,0xFFFF5BB1); + b=FF(b,c,d,a,x[k+11],S14,0x895CD7BE); + a=FF(a,b,c,d,x[k+12],S11,0x6B901122); + d=FF(d,a,b,c,x[k+13],S12,0xFD987193); + c=FF(c,d,a,b,x[k+14],S13,0xA679438E); + b=FF(b,c,d,a,x[k+15],S14,0x49B40821); + a=GG(a,b,c,d,x[k+1], S21,0xF61E2562); + d=GG(d,a,b,c,x[k+6], S22,0xC040B340); + c=GG(c,d,a,b,x[k+11],S23,0x265E5A51); + b=GG(b,c,d,a,x[k+0], S24,0xE9B6C7AA); + a=GG(a,b,c,d,x[k+5], S21,0xD62F105D); + d=GG(d,a,b,c,x[k+10],S22,0x2441453); + c=GG(c,d,a,b,x[k+15],S23,0xD8A1E681); + b=GG(b,c,d,a,x[k+4], S24,0xE7D3FBC8); + a=GG(a,b,c,d,x[k+9], S21,0x21E1CDE6); + d=GG(d,a,b,c,x[k+14],S22,0xC33707D6); + c=GG(c,d,a,b,x[k+3], S23,0xF4D50D87); + b=GG(b,c,d,a,x[k+8], S24,0x455A14ED); + a=GG(a,b,c,d,x[k+13],S21,0xA9E3E905); + d=GG(d,a,b,c,x[k+2], S22,0xFCEFA3F8); + c=GG(c,d,a,b,x[k+7], S23,0x676F02D9); + b=GG(b,c,d,a,x[k+12],S24,0x8D2A4C8A); + a=HH(a,b,c,d,x[k+5], S31,0xFFFA3942); + d=HH(d,a,b,c,x[k+8], S32,0x8771F681); + c=HH(c,d,a,b,x[k+11],S33,0x6D9D6122); + b=HH(b,c,d,a,x[k+14],S34,0xFDE5380C); + a=HH(a,b,c,d,x[k+1], S31,0xA4BEEA44); + d=HH(d,a,b,c,x[k+4], S32,0x4BDECFA9); + c=HH(c,d,a,b,x[k+7], S33,0xF6BB4B60); + b=HH(b,c,d,a,x[k+10],S34,0xBEBFBC70); + a=HH(a,b,c,d,x[k+13],S31,0x289B7EC6); + d=HH(d,a,b,c,x[k+0], S32,0xEAA127FA); + c=HH(c,d,a,b,x[k+3], S33,0xD4EF3085); + b=HH(b,c,d,a,x[k+6], S34,0x4881D05); + a=HH(a,b,c,d,x[k+9], S31,0xD9D4D039); + d=HH(d,a,b,c,x[k+12],S32,0xE6DB99E5); + c=HH(c,d,a,b,x[k+15],S33,0x1FA27CF8); + b=HH(b,c,d,a,x[k+2], S34,0xC4AC5665); + a=II(a,b,c,d,x[k+0], S41,0xF4292244); + d=II(d,a,b,c,x[k+7], S42,0x432AFF97); + c=II(c,d,a,b,x[k+14],S43,0xAB9423A7); + b=II(b,c,d,a,x[k+5], S44,0xFC93A039); + a=II(a,b,c,d,x[k+12],S41,0x655B59C3); + d=II(d,a,b,c,x[k+3], S42,0x8F0CCC92); + c=II(c,d,a,b,x[k+10],S43,0xFFEFF47D); + b=II(b,c,d,a,x[k+1], S44,0x85845DD1); + a=II(a,b,c,d,x[k+8], S41,0x6FA87E4F); + d=II(d,a,b,c,x[k+15],S42,0xFE2CE6E0); + c=II(c,d,a,b,x[k+6], S43,0xA3014314); + b=II(b,c,d,a,x[k+13],S44,0x4E0811A1); + a=II(a,b,c,d,x[k+4], S41,0xF7537E82); + d=II(d,a,b,c,x[k+11],S42,0xBD3AF235); + c=II(c,d,a,b,x[k+2], S43,0x2AD7D2BB); + b=II(b,c,d,a,x[k+9], S44,0xEB86D391); + a=AddUnsigned(a,AA); + b=AddUnsigned(b,BB); + c=AddUnsigned(c,CC); + d=AddUnsigned(d,DD); + } + + var temp = WordToHex(a)+WordToHex(b)+WordToHex(c)+WordToHex(d); + + return temp.toLowerCase(); + } +}; + +SIP.Utils = Utils; +}; + +},{}],32:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview WebRTC + */ + +module.exports = function (SIP, environment) { +var WebRTC; + +WebRTC = {}; + +WebRTC.MediaHandler = require('./WebRTC/MediaHandler')(SIP); +WebRTC.MediaStreamManager = require('./WebRTC/MediaStreamManager')(SIP, environment); + +var _isSupported; + +WebRTC.isSupported = function () { + if (_isSupported !== undefined) { + return _isSupported; + } + + WebRTC.MediaStream = environment.MediaStream; + WebRTC.getUserMedia = environment.getUserMedia; + WebRTC.RTCPeerConnection = environment.RTCPeerConnection; + WebRTC.RTCSessionDescription = environment.RTCSessionDescription; + + if (WebRTC.RTCPeerConnection && WebRTC.RTCSessionDescription) { + if (WebRTC.getUserMedia) { + WebRTC.getUserMedia = SIP.Utils.promisify(environment, 'getUserMedia'); + } + _isSupported = true; + } + else { + _isSupported = false; + } + return _isSupported; +}; + +return WebRTC; +}; + +},{"./WebRTC/MediaHandler":33,"./WebRTC/MediaStreamManager":34}],33:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview MediaHandler + */ + +/* MediaHandler + * @class PeerConnection helper Class. + * @param {SIP.Session} session + * @param {Object} [options] + * @param {SIP.WebRTC.MediaStreamManager} [options.mediaStreamManager] + * The MediaStreamManager to acquire/release streams from/to. + * If not provided, a default MediaStreamManager will be used. + */ +module.exports = function (SIP) { + +var MediaHandler = function(session, options) { + options = options || {}; + + this.logger = session.ua.getLogger('sip.invitecontext.mediahandler', session.id); + this.session = session; + this.localMedia = null; + this.ready = true; + this.mediaStreamManager = options.mediaStreamManager || new SIP.WebRTC.MediaStreamManager(this.logger); + this.audioMuted = false; + this.videoMuted = false; + this.local_hold = false; + this.remote_hold = false; + + // old init() from here on + var servers = this.prepareIceServers(options.stunServers, options.turnServers); + this.RTCConstraints = options.RTCConstraints || {}; + + this.initPeerConnection(servers); + + function selfEmit(mh, event) { + if (mh.mediaStreamManager.on) { + mh.mediaStreamManager.on(event, function () { + mh.emit.apply(mh, [event].concat(Array.prototype.slice.call(arguments))); + }); + } + } + + selfEmit(this, 'userMediaRequest'); + selfEmit(this, 'userMedia'); + selfEmit(this, 'userMediaFailed'); +}; + +MediaHandler.defaultFactory = function defaultFactory (session, options) { + return new MediaHandler(session, options); +}; +MediaHandler.defaultFactory.isSupported = function () { + return SIP.WebRTC.isSupported(); +}; + +MediaHandler.prototype = Object.create(SIP.MediaHandler.prototype, { +// Functions the session can use + isReady: {writable: true, value: function isReady () { + return this.ready; + }}, + + close: {writable: true, value: function close () { + this.logger.log('closing PeerConnection'); + this._remoteStreams = []; + // have to check signalingState since this.close() gets called multiple times + // TODO figure out why that happens + if(this.peerConnection && this.peerConnection.signalingState !== 'closed') { + this.peerConnection.close(); + + if(this.localMedia) { + this.mediaStreamManager.release(this.localMedia); + } + } + }}, + + /** + * @param {SIP.WebRTC.MediaStream | (getUserMedia constraints)} [mediaHint] + * the MediaStream (or the constraints describing it) to be used for the session + */ + getDescription: {writable: true, value: function getDescription (mediaHint) { + var self = this; + var acquire = self.mediaStreamManager.acquire; + if (acquire.length > 1) { + acquire = SIP.Utils.promisify(this.mediaStreamManager, 'acquire', true); + } + mediaHint = mediaHint || {}; + if (mediaHint.dataChannel === true) { + mediaHint.dataChannel = {}; + } + this.mediaHint = mediaHint; + + /* + * 1. acquire streams (skip if MediaStreams passed in) + * 2. addStreams + * 3. createOffer/createAnswer + */ + + var streamPromise; + if (self.localMedia) { + self.logger.log('already have local media'); + streamPromise = SIP.Utils.Promise.resolve(self.localMedia); + } + else { + self.logger.log('acquiring local media'); + streamPromise = acquire.call(self.mediaStreamManager, mediaHint) + .then(function acquireSucceeded(streams) { + self.logger.log('acquired local media streams'); + self.localMedia = streams; + self.session.connecting(); + return streams; + }, function acquireFailed(err) { + self.logger.error('unable to acquire streams'); + self.logger.error(err); + self.session.connecting(); + throw err; + }) + .then(this.addStreams.bind(this)) + ; + } + + return streamPromise + .then(function streamAdditionSucceeded() { + if (self.hasOffer('remote')) { + self.peerConnection.ondatachannel = function (evt) { + self.dataChannel = evt.channel; + self.emit('dataChannel', self.dataChannel); + }; + } else if (mediaHint.dataChannel && + self.peerConnection.createDataChannel) { + self.dataChannel = self.peerConnection.createDataChannel( + 'sipjs', + mediaHint.dataChannel + ); + self.emit('dataChannel', self.dataChannel); + } + + self.render(); + return self.createOfferOrAnswer(self.RTCConstraints); + }) + .then(function(sdp) { + sdp = SIP.Hacks.Firefox.hasMissingCLineInSDP(sdp); + + if (self.local_hold) { + // Don't receive media + // TODO - This will break for media streams with different directions. + if (!(/a=(sendrecv|sendonly|recvonly|inactive)/).test(sdp)) { + sdp = sdp.replace(/(m=[^\r]*\r\n)/g, '$1a=sendonly\r\n'); + } else { + sdp = sdp.replace(/a=sendrecv\r\n/g, 'a=sendonly\r\n'); + sdp = sdp.replace(/a=recvonly\r\n/g, 'a=inactive\r\n'); + } + } + + return { + body: sdp, + contentType: 'application/sdp' + }; + }) + ; + }}, + + /** + * Check if a SIP message contains a session description. + * @param {SIP.SIPMessage} message + * @returns {boolean} + */ + hasDescription: {writeable: true, value: function hasDescription (message) { + return message.getHeader('Content-Type') === 'application/sdp' && !!message.body; + }}, + + /** + * Set the session description contained in a SIP message. + * @param {SIP.SIPMessage} message + * @returns {Promise} + */ + setDescription: {writable: true, value: function setDescription (message) { + var self = this; + var sdp = message.body; + + this.remote_hold = /a=(sendonly|inactive)/.test(sdp); + + sdp = SIP.Hacks.Firefox.cannotHandleExtraWhitespace(sdp); + sdp = SIP.Hacks.AllBrowsers.maskDtls(sdp); + + var rawDescription = { + type: this.hasOffer('local') ? 'answer' : 'offer', + sdp: sdp + }; + + this.emit('setDescription', rawDescription); + + var description = new SIP.WebRTC.RTCSessionDescription(rawDescription); + return SIP.Utils.promisify(this.peerConnection, 'setRemoteDescription')(description) + .catch(function setRemoteDescriptionError(e) { + self.emit('peerConnection-setRemoteDescriptionFailed', e); + throw e; + }); + }}, + + /** + * If the Session associated with this MediaHandler were to be referred, + * what mediaHint should be provided to the UA's invite method? + */ + getReferMedia: {writable: true, value: function getReferMedia () { + function hasTracks (trackGetter, stream) { + return stream[trackGetter]().length > 0; + } + + function bothHaveTracks (trackGetter) { + /* jshint validthis:true */ + return this.getLocalStreams().some(hasTracks.bind(null, trackGetter)) && + this.getRemoteStreams().some(hasTracks.bind(null, trackGetter)); + } + + return { + constraints: { + audio: bothHaveTracks.call(this, 'getAudioTracks'), + video: bothHaveTracks.call(this, 'getVideoTracks') + } + }; + }}, + + updateIceServers: {writeable:true, value: function (options) { + var servers = this.prepareIceServers(options.stunServers, options.turnServers); + this.RTCConstraints = options.RTCConstraints || this.RTCConstraints; + + this.initPeerConnection(servers); + + /* once updateIce is implemented correctly, this is better than above + //no op if browser does not support this + if (!this.peerConnection.updateIce) { + return; + } + + this.peerConnection.updateIce({'iceServers': servers}, this.RTCConstraints); + */ + }}, + +// Functions the session can use, but only because it's convenient for the application + isMuted: {writable: true, value: function isMuted () { + return { + audio: this.audioMuted, + video: this.videoMuted + }; + }}, + + mute: {writable: true, value: function mute (options) { + if (this.getLocalStreams().length === 0) { + return; + } + + options = options || { + audio: this.getLocalStreams()[0].getAudioTracks().length > 0, + video: this.getLocalStreams()[0].getVideoTracks().length > 0 + }; + + var audioMuted = false, + videoMuted = false; + + if (options.audio && !this.audioMuted) { + audioMuted = true; + this.audioMuted = true; + this.toggleMuteAudio(true); + } + + if (options.video && !this.videoMuted) { + videoMuted = true; + this.videoMuted = true; + this.toggleMuteVideo(true); + } + + //REVISIT + if (audioMuted || videoMuted) { + return { + audio: audioMuted, + video: videoMuted + }; + /*this.session.onmute({ + audio: audioMuted, + video: videoMuted + });*/ + } + }}, + + unmute: {writable: true, value: function unmute (options) { + if (this.getLocalStreams().length === 0) { + return; + } + + options = options || { + audio: this.getLocalStreams()[0].getAudioTracks().length > 0, + video: this.getLocalStreams()[0].getVideoTracks().length > 0 + }; + + var audioUnMuted = false, + videoUnMuted = false; + + if (options.audio && this.audioMuted) { + audioUnMuted = true; + this.audioMuted = false; + this.toggleMuteAudio(false); + } + + if (options.video && this.videoMuted) { + videoUnMuted = true; + this.videoMuted = false; + this.toggleMuteVideo(false); + } + + //REVISIT + if (audioUnMuted || videoUnMuted) { + return { + audio: audioUnMuted, + video: videoUnMuted + }; + /*this.session.onunmute({ + audio: audioUnMuted, + video: videoUnMuted + });*/ + } + }}, + + hold: {writable: true, value: function hold () { + this.local_hold = true; + this.toggleMuteAudio(true); + this.toggleMuteVideo(true); + }}, + + unhold: {writable: true, value: function unhold () { + this.local_hold = false; + + if (!this.audioMuted) { + this.toggleMuteAudio(false); + } + + if (!this.videoMuted) { + this.toggleMuteVideo(false); + } + }}, + +// Functions the application can use, but not the session + getLocalStreams: {writable: true, value: function getLocalStreams () { + var pc = this.peerConnection; + if (pc && pc.signalingState === 'closed') { + this.logger.warn('peerConnection is closed, getLocalStreams returning []'); + return []; + } + return (pc.getLocalStreams && pc.getLocalStreams()) || + pc.localStreams || []; + }}, + + getRemoteStreams: {writable: true, value: function getRemoteStreams () { + var pc = this.peerConnection; + if (pc && pc.signalingState === 'closed') { + this.logger.warn('peerConnection is closed, getRemoteStreams returning this._remoteStreams'); + return this._remoteStreams; + } + return(pc.getRemoteStreams && pc.getRemoteStreams()) || + pc.remoteStreams || []; + }}, + + render: {writable: true, value: function render (renderHint) { + renderHint = renderHint || (this.mediaHint && this.mediaHint.render); + if (!renderHint) { + return false; + } + var streamGetters = { + local: 'getLocalStreams', + remote: 'getRemoteStreams' + }; + Object.keys(streamGetters).forEach(function (loc) { + var streamGetter = streamGetters[loc]; + var streams = this[streamGetter](); + SIP.WebRTC.MediaStreamManager.render(streams, renderHint[loc]); + }.bind(this)); + }}, + +// Internal functions + hasOffer: {writable: true, value: function hasOffer (where) { + var offerState = 'have-' + where + '-offer'; + return this.peerConnection.signalingState === offerState; + // TODO consider signalingStates with 'pranswer'? + }}, + + prepareIceServers: {writable: true, value: function prepareIceServers (stunServers, turnServers) { + var servers = [], + config = this.session.ua.configuration; + + stunServers = stunServers || config.stunServers; + turnServers = turnServers || config.turnServers; + + [].concat(stunServers).forEach(function (server) { + servers.push({'urls': server}); + }); + + [].concat(turnServers).forEach(function (server) { + var turnServer = {'urls': server.urls}; + if (server.username) { + turnServer.username = server.username; + } + if (server.password) { + turnServer.credential = server.password; + } + servers.push(turnServer); + }); + + return servers; + }}, + + initPeerConnection: {writable: true, value: function initPeerConnection(servers) { + var self = this, + config = this.session.ua.configuration; + + this.onIceCompleted = SIP.Utils.defer(); + this.onIceCompleted.promise.then(function(pc) { + self.emit('iceGatheringComplete', pc); + if (self.iceCheckingTimer) { + SIP.Timers.clearTimeout(self.iceCheckingTimer); + self.iceCheckingTimer = null; + } + }); + + if (this.peerConnection) { + this.peerConnection.close(); + } + + var connConfig = { + iceServers: servers + }; + + if (config.rtcpMuxPolicy) { + connConfig.rtcpMuxPolicy = config.rtcpMuxPolicy; + } + + this.peerConnection = new SIP.WebRTC.RTCPeerConnection(connConfig); + + // Firefox (35.0.1) sometimes throws on calls to peerConnection.getRemoteStreams + // even if peerConnection.onaddstream was just called. In order to make + // MediaHandler.prototype.getRemoteStreams work, keep track of them manually + this._remoteStreams = []; + + this.peerConnection.onaddstream = function(e) { + self.logger.log('stream added: '+ e.stream.id); + self._remoteStreams.push(e.stream); + self.render(); + self.emit('addStream', e); + }; + + this.peerConnection.onremovestream = function(e) { + self.logger.log('stream removed: '+ e.stream.id); + }; + + this.startIceCheckingTimer = function () { + if (!self.iceCheckingTimer) { + self.iceCheckingTimer = SIP.Timers.setTimeout(function() { + self.logger.log('RTCIceChecking Timeout Triggered after '+config.iceCheckingTimeout+' milliseconds'); + self.onIceCompleted.resolve(this); + }.bind(this.peerConnection), config.iceCheckingTimeout); + } + }; + + this.peerConnection.onicecandidate = function(e) { + self.emit('iceCandidate', e); + if (e.candidate) { + self.logger.log('ICE candidate received: '+ (e.candidate.candidate === null ? null : e.candidate.candidate.trim())); + self.startIceCheckingTimer(); + } else { + self.onIceCompleted.resolve(this); + } + }; + + this.peerConnection.onicegatheringstatechange = function () { + self.logger.log('RTCIceGatheringState changed: ' + this.iceGatheringState); + if (this.iceGatheringState === 'gathering') { + self.emit('iceGathering', this); + } + if (this.iceGatheringState === 'complete') { + self.onIceCompleted.resolve(this); + } + }; + + this.peerConnection.oniceconnectionstatechange = function() { //need e for commented out case + var stateEvent; + + if (this.iceConnectionState === 'checking') { + self.startIceCheckingTimer(); + } + + switch (this.iceConnectionState) { + case 'new': + stateEvent = 'iceConnection'; + break; + case 'checking': + stateEvent = 'iceConnectionChecking'; + break; + case 'connected': + stateEvent = 'iceConnectionConnected'; + break; + case 'completed': + stateEvent = 'iceConnectionCompleted'; + break; + case 'failed': + stateEvent = 'iceConnectionFailed'; + break; + case 'disconnected': + stateEvent = 'iceConnectionDisconnected'; + break; + case 'closed': + stateEvent = 'iceConnectionClosed'; + break; + default: + self.logger.warn('Unknown iceConnection state:', this.iceConnectionState); + return; + } + self.emit(stateEvent, this); + + //Bria state changes are always connected -> disconnected -> connected on accept, so session gets terminated + //normal calls switch from failed to connected in some cases, so checking for failed and terminated + /*if (this.iceConnectionState === 'failed') { + self.session.terminate({ + cause: SIP.C.causes.RTP_TIMEOUT, + status_code: 200, + reason_phrase: SIP.C.causes.RTP_TIMEOUT + }); + } else if (e.currentTarget.iceGatheringState === 'complete' && this.iceConnectionState !== 'closed') { + self.onIceCompleted(this); + }*/ + }; + + this.peerConnection.onstatechange = function() { + self.logger.log('PeerConnection state changed to "'+ this.readyState +'"'); + }; + }}, + + createOfferOrAnswer: {writable: true, value: function createOfferOrAnswer (constraints) { + var self = this; + var methodName; + var pc = self.peerConnection; + + self.ready = false; + methodName = self.hasOffer('remote') ? 'createAnswer' : 'createOffer'; + + return SIP.Utils.promisify(pc, methodName, true)(constraints) + .catch(function methodError(e) { + self.emit('peerConnection-' + methodName + 'Failed', e); + throw e; + }) + .then(SIP.Utils.promisify(pc, 'setLocalDescription')) + .catch(function localDescError(e) { + self.emit('peerConnection-selLocalDescriptionFailed', e); + throw e; + }) + .then(function onSetLocalDescriptionSuccess() { + var deferred = SIP.Utils.defer(); + if (pc.iceGatheringState === 'complete' && (pc.iceConnectionState === 'connected' || pc.iceConnectionState === 'completed')) { + deferred.resolve(); + } else { + self.onIceCompleted.promise.then(deferred.resolve); + } + return deferred.promise; + }) + .then(function readySuccess () { + var sdp = pc.localDescription.sdp; + + sdp = SIP.Hacks.Chrome.needsExplicitlyInactiveSDP(sdp); + sdp = SIP.Hacks.AllBrowsers.unmaskDtls(sdp); + + var sdpWrapper = { + type: methodName === 'createOffer' ? 'offer' : 'answer', + sdp: sdp + }; + + self.emit('getDescription', sdpWrapper); + + if (self.session.ua.configuration.hackStripTcp) { + sdpWrapper.sdp = sdpWrapper.sdp.replace(/^a=candidate:\d+ \d+ tcp .*?\r\n/img, ""); + } + + self.ready = true; + return sdpWrapper.sdp; + }) + .catch(function createOfferAnswerError (e) { + self.logger.error(e); + self.ready = true; + throw new SIP.Exceptions.GetDescriptionError(e); + }) + ; + }}, + + addStreams: {writable: true, value: function addStreams (streams) { + try { + streams = [].concat(streams); + streams.forEach(function (stream) { + this.peerConnection.addStream(stream); + }, this); + } catch(e) { + this.logger.error('error adding stream'); + this.logger.error(e); + return SIP.Utils.Promise.reject(e); + } + + return SIP.Utils.Promise.resolve(); + }}, + + toggleMuteHelper: {writable: true, value: function toggleMuteHelper (trackGetter, mute) { + this.getLocalStreams().forEach(function (stream) { + stream[trackGetter]().forEach(function (track) { + track.enabled = !mute; + }); + }); + }}, + + toggleMuteAudio: {writable: true, value: function toggleMuteAudio (mute) { + this.toggleMuteHelper('getAudioTracks', mute); + }}, + + toggleMuteVideo: {writable: true, value: function toggleMuteVideo (mute) { + this.toggleMuteHelper('getVideoTracks', mute); + }} +}); + +// Return since it will be assigned to a variable. +return MediaHandler; +}; + +},{}],34:[function(require,module,exports){ +"use strict"; +/** + * @fileoverview MediaStreamManager + */ + +/* MediaStreamManager + * @class Manages the acquisition and release of MediaStreams. + * @param {mediaHint} [defaultMediaHint] The mediaHint to use if none is provided to acquire() + */ +module.exports = function (SIP, environment) { + +// Default MediaStreamManager provides single-use streams created with getUserMedia +var MediaStreamManager = function MediaStreamManager (logger, defaultMediaHint) { + if (!SIP.WebRTC.isSupported()) { + throw new SIP.Exceptions.NotSupportedError('Media not supported'); + } + + this.mediaHint = defaultMediaHint || { + constraints: {audio: true, video: true} + }; + + // map of streams to acquisition manner: + // true -> passed in as mediaHint.stream + // false -> getUserMedia + this.acquisitions = {}; +}; +MediaStreamManager.streamId = function (stream) { + return stream.getAudioTracks().concat(stream.getVideoTracks()) + .map(function trackId (track) { + return track.id; + }) + .join(''); +}; + +/** + * @param {(Array of) MediaStream} streams - The streams to render + * + * @param {(Array of) HTMLMediaElement} elements + * - The <audio>/<video> element(s) that should render the streams + * + * Each stream in streams renders to the corresponding element in elements, + * wrapping around elements if needed. + */ +MediaStreamManager.render = function render (streams, elements) { + if (!elements) { + return false; + } + if (Array.isArray(elements) && !elements.length) { + throw new TypeError('elements must not be empty'); + } + + function attachMediaStream(element, stream) { + element.srcObject = stream; + } + + function ensureMediaPlaying (mediaElement) { + var interval = 100; + mediaElement.ensurePlayingIntervalId = SIP.Timers.setInterval(function () { + if (mediaElement.paused && mediaElement.srcObject) { + mediaElement.play(); + } + else { + SIP.Timers.clearInterval(mediaElement.ensurePlayingIntervalId); + } + }, interval); + } + + function attachAndPlay (elements, stream, index) { + var element = elements[index % elements.length]; + if (typeof element === 'function') { + element = element(); + } + (environment.attachMediaStream || attachMediaStream)(element, stream); + ensureMediaPlaying(element); + } + + // [].concat "casts" `elements` into an array + // so forEach works even if `elements` was a single element + elements = [].concat(elements); + [].concat(streams).forEach(attachAndPlay.bind(null, elements)); +}; + +MediaStreamManager.prototype = Object.create(SIP.EventEmitter.prototype, { + 'acquire': {writable: true, value: function acquire (mediaHint) { + mediaHint = Object.keys(mediaHint || {}).length ? mediaHint : this.mediaHint; + + var saveSuccess = function (isHintStream, streams) { + streams = [].concat(streams); + streams.forEach(function (stream) { + var streamId = MediaStreamManager.streamId(stream); + this.acquisitions[streamId] = !!isHintStream; + }, this); + return SIP.Utils.Promise.resolve(streams); + }.bind(this); + + if (mediaHint.stream) { + return saveSuccess(true, mediaHint.stream); + } else { + // Fallback to audio/video enabled if no mediaHint can be found. + var constraints = mediaHint.constraints || + (this.mediaHint && this.mediaHint.constraints) || + {audio: true, video: true}; + + var deferred = SIP.Utils.defer(); + + /* + * Make the call asynchronous, so that ICCs have a chance + * to define callbacks to `userMediaRequest` + */ + SIP.Timers.setTimeout(function () { + this.emit('userMediaRequest', constraints); + + var emitThenCall = function (eventName, callback) { + var callbackArgs = Array.prototype.slice.call(arguments, 2); + // Emit with all of the arguments from the real callback. + var newArgs = [eventName].concat(callbackArgs); + + this.emit.apply(this, newArgs); + + return callback.apply(null, callbackArgs); + }.bind(this); + + if (constraints.audio || constraints.video) { + deferred.resolve( + SIP.WebRTC.getUserMedia(constraints) + .then( + emitThenCall.bind(this, 'userMedia', saveSuccess.bind(null, false)), + emitThenCall.bind(this, 'userMediaFailed', function(e){throw e;}) + ) + ); + } else { + // Local streams were explicitly excluded. + deferred.resolve([]); + } + }.bind(this), 0); + + return deferred.promise; + } + }}, + + 'release': {writable: true, value: function release (streams) { + streams = [].concat(streams); + streams.forEach(function (stream) { + var streamId = MediaStreamManager.streamId(stream); + if (this.acquisitions[streamId] === false) { + stream.getTracks().forEach(function (track) { + track.stop(); + }); + } + delete this.acquisitions[streamId]; + }, this); + }}, +}); + +// Return since it will be assigned to a variable. +return MediaStreamManager; +}; + +},{}],35:[function(require,module,exports){ +(function (global){ +"use strict"; + +var toplevel = global.window || global; + +function getPrefixedProperty (object, name) { + if (object == null) { + return; + } + var capitalizedName = name.charAt(0).toUpperCase() + name.slice(1); + var prefixedNames = [name, 'webkit' + capitalizedName, 'moz' + capitalizedName]; + for (var i in prefixedNames) { + var property = object[prefixedNames[i]]; + if (property) { + return property.bind(object); + } + } +} + +module.exports = { + WebSocket: toplevel.WebSocket, + Transport: require('./Transport'), + open: toplevel.open, + Promise: toplevel.Promise, + timers: toplevel, + + // Console is not defined in ECMAScript, so just in case... + console: toplevel.console || { + debug: function () {}, + log: function () {}, + warn: function () {}, + error: function () {} + }, + + MediaStream: getPrefixedProperty(toplevel, 'MediaStream'), + getUserMedia: getPrefixedProperty(toplevel.navigator, 'getUserMedia'), + RTCPeerConnection: getPrefixedProperty(toplevel, 'RTCPeerConnection'), + RTCSessionDescription: getPrefixedProperty(toplevel, 'RTCSessionDescription'), + + addEventListener: getPrefixedProperty(toplevel, 'addEventListener'), + removeEventListener: getPrefixedProperty(toplevel, 'removeEventListener'), + HTMLMediaElement: toplevel.HTMLMediaElement, + + attachMediaStream: toplevel.attachMediaStream, + createObjectURL: toplevel.URL && toplevel.URL.createObjectURL, + revokeObjectURL: toplevel.URL && toplevel.URL.revokeObjectURL +}; + +}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) +},{"./Transport":28}],36:[function(require,module,exports){ +"use strict"; +module.exports = require('./SIP')(require('./environment')); + +},{"./SIP":19,"./environment":35}]},{},[36])(36) +}); \ No newline at end of file diff --git a/bigbluebutton-html5/client/compatibility/verto-min.js b/bigbluebutton-html5/client/compatibility/verto-min.js new file mode 100644 index 0000000000000000000000000000000000000000..d236a15d307c8a8defef5e007397deb5b32f69bf --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/verto-min.js @@ -0,0 +1,561 @@ + +(function($){function findLine(sdpLines,prefix,substr){return findLineInRange(sdpLines,0,-1,prefix,substr);} +function findLineInRange(sdpLines,startLine,endLine,prefix,substr){var realEndLine=(endLine!=-1)?endLine:sdpLines.length;for(var i=startLine;i<realEndLine;++i){if(sdpLines[i].indexOf(prefix)===0){if(!substr||sdpLines[i].toLowerCase().indexOf(substr.toLowerCase())!==-1){return i;}}} +return null;} +function getCodecPayloadType(sdpLine){var pattern=new RegExp('a=rtpmap:(\\d+) \\w+\\/\\d+');var result=sdpLine.match(pattern);return(result&&result.length==2)?result[1]:null;} +function setDefaultCodec(mLine,payload){var elements=mLine.split(' ');var newLine=[];var index=0;for(var i=0;i<elements.length;i++){if(index===3){newLine[index++]=payload;} +if(elements[i]!==payload)newLine[index++]=elements[i];} +return newLine.join(' ');} +$.FSRTC=function(options){this.options=$.extend({useVideo:null,useStereo:false,userData:null,localVideo:null,screenShare:false,useCamera:"any",iceServers:false,videoParams:{},audioParams:{},callbacks:{onICEComplete:function(){},onICE:function(){},onOfferSDP:function(){}},},options);this.audioEnabled=true;this.videoEnabled=true;this.mediaData={SDP:null,profile:{},candidateList:[]};this.constraints={offerToReceiveAudio:this.options.useSpeak==="none"?false:true,offerToReceiveVideo:this.options.useVideo?true:false,};if(self.options.useVideo){self.options.useVideo.style.display='none';} +setCompat();checkCompat();};$.FSRTC.validRes=[];$.FSRTC.prototype.useVideo=function(obj,local){var self=this;if(obj){self.options.useVideo=obj;self.options.localVideo=local;self.constraints.offerToReceiveVideo=true;}else{self.options.useVideo=null;self.options.localVideo=null;self.constraints.offerToReceiveVideo=false;} +if(self.options.useVideo){self.options.useVideo.style.display='none';}};$.FSRTC.prototype.useStereo=function(on){var self=this;self.options.useStereo=on;};$.FSRTC.prototype.stereoHack=function(sdp){var self=this;if(!self.options.useStereo){return sdp;} +var sdpLines=sdp.split('\r\n');var opusIndex=findLine(sdpLines,'a=rtpmap','opus/48000'),opusPayload;if(!opusIndex){return sdp;}else{opusPayload=getCodecPayloadType(sdpLines[opusIndex]);} +var fmtpLineIndex=findLine(sdpLines,'a=fmtp:'+opusPayload.toString());if(fmtpLineIndex===null){sdpLines[opusIndex]=sdpLines[opusIndex]+'\r\na=fmtp:'+opusPayload.toString()+" stereo=1; sprop-stereo=1"}else{sdpLines[fmtpLineIndex]=sdpLines[fmtpLineIndex].concat('; stereo=1; sprop-stereo=1');} +sdp=sdpLines.join('\r\n');return sdp;};function setCompat(){} +function checkCompat(){return true;} +function onStreamError(self,e){console.log('There has been a problem retrieving the streams - did you allow access? Check Device Resolution',e);doCallback(self,"onError",e);} +function onStreamSuccess(self,stream){console.log("Stream Success");doCallback(self,"onStream",stream);} +function onICE(self,candidate){self.mediaData.candidate=candidate;self.mediaData.candidateList.push(self.mediaData.candidate);doCallback(self,"onICE");} +function doCallback(self,func,arg){if(func in self.options.callbacks){self.options.callbacks[func](self,arg);}} +function onICEComplete(self,candidate){console.log("ICE Complete");doCallback(self,"onICEComplete");} +function onChannelError(self,e){console.error("Channel Error",e);doCallback(self,"onError",e);} +function onICESDP(self,sdp){self.mediaData.SDP=self.stereoHack(sdp.sdp);console.log("ICE SDP");doCallback(self,"onICESDP");} +function onAnswerSDP(self,sdp){self.answer.SDP=self.stereoHack(sdp.sdp);console.log("ICE ANSWER SDP");doCallback(self,"onAnswerSDP",self.answer.SDP);} +function onMessage(self,msg){console.log("Message");doCallback(self,"onICESDP",msg);} +FSRTCattachMediaStream=function(element,stream){if(typeof element.srcObject!=='undefined'){element.srcObject=stream;}else if(typeof element.src!=='undefined'){element.src=URL.createObjectURL(stream);}else{console.error('Error attaching stream to element.');}} +function onRemoteStream(self,stream){if(self.options.useVideo){self.options.useVideo.style.display='block';} +var element=self.options.useAudio;console.log("REMOTE STREAM",stream,element);FSRTCattachMediaStream(element,stream);self.options.useAudio.play();self.remoteStream=stream;} +function onOfferSDP(self,sdp){self.mediaData.SDP=self.stereoHack(sdp.sdp);console.log("Offer SDP");doCallback(self,"onOfferSDP");} +$.FSRTC.prototype.answer=function(sdp,onSuccess,onError){this.peer.addAnswerSDP({type:"answer",sdp:sdp},onSuccess,onError);};$.FSRTC.prototype.stopPeer=function(){if(self.peer){console.log("stopping peer");self.peer.stop();}} +$.FSRTC.prototype.stop=function(){var self=this;if(self.options.useVideo){self.options.useVideo.style.display='none';self.options.useVideo['src']='';} +if(self.localStream){if(typeof self.localStream.stop=='function'){self.localStream.stop();}else{if(self.localStream.active){var tracks=self.localStream.getTracks();console.log(tracks);tracks.forEach(function(track,index){console.log(track);track.stop();})}} +self.localStream=null;} +if(self.options.localVideo){self.options.localVideo.style.display='none';self.options.localVideo['src']='';} +if(self.options.localVideoStream){if(typeof self.options.localVideoStream.stop=='function'){self.options.localVideoStream.stop();}else{if(self.options.localVideoStream.active){var tracks=self.options.localVideoStream.getTracks();console.log(tracks);tracks.forEach(function(track,index){console.log(track);track.stop();})}}} +if(self.peer){console.log("stopping peer");self.peer.stop();}};$.FSRTC.prototype.getMute=function(){var self=this;return self.audioEnabled;} +$.FSRTC.prototype.setMute=function(what){var self=this;var audioTracks=self.localStream.getAudioTracks();for(var i=0,len=audioTracks.length;i<len;i++){switch(what){case"on":audioTracks[i].enabled=true;break;case"off":audioTracks[i].enabled=false;break;case"toggle":audioTracks[i].enabled=!audioTracks[i].enabled;default:break;} +self.audioEnabled=audioTracks[i].enabled;} +return!self.audioEnabled;} +$.FSRTC.prototype.getVideoMute=function(){var self=this;return self.videoEnabled;} +$.FSRTC.prototype.setVideoMute=function(what){var self=this;var videoTracks=self.localStream.getVideoTracks();for(var i=0,len=videoTracks.length;i<len;i++){switch(what){case"on":videoTracks[i].enabled=true;break;case"off":videoTracks[i].enabled=false;break;case"toggle":videoTracks[i].enabled=!videoTracks[i].enabled;default:break;} +self.videoEnabled=videoTracks[i].enabled;} +return!self.videoEnabled;} +$.FSRTC.prototype.createAnswer=function(params){var self=this;self.type="answer";self.remoteSDP=params.sdp;console.debug("inbound sdp: ",params.sdp);function onSuccess(stream){self.localStream=stream;self.peer=FSRTCPeerConnection({type:self.type,attachStream:self.localStream,onICE:function(candidate){return onICE(self,candidate);},onICEComplete:function(){return onICEComplete(self);},onRemoteStream:function(stream){return onRemoteStream(self,stream);},onICESDP:function(sdp){return onICESDP(self,sdp);},onChannelError:function(e){return onChannelError(self,e);},constraints:self.constraints,iceServers:self.options.iceServers,offerSDP:{type:"offer",sdp:self.remoteSDP}});onStreamSuccess(self,stream);} +function onError(e){onStreamError(self,e);} +var mediaParams=getMediaParams(self);console.log("Audio constraints",mediaParams.audio);console.log("Video constraints",mediaParams.video);if(self.options.useVideo&&self.options.localVideo){getUserMedia({constraints:{audio:false,video:{},},localVideo:self.options.localVideo,onsuccess:function(e){self.options.localVideoStream=e;console.log("local video ready");},onerror:function(e){console.error("local video error!");}});} +getUserMedia({constraints:{audio:mediaParams.audio,video:mediaParams.video},video:mediaParams.useVideo,onsuccess:onSuccess,onerror:onError});};function getMediaParams(obj){var audio;if(obj.options.useMic&&obj.options.useMic==="none"){console.log("Microphone Disabled");audio=false;}else if(obj.options.videoParams&&obj.options.screenShare){console.error("SCREEN SHARE",obj.options.videoParams);audio=false;}else{audio={};if(obj.options.audioParams){audio=obj.options.audioParams;} +if(obj.options.useMic!=="any"){audio.deviceId={exact:obj.options.useMic};}} +if(obj.options.useVideo&&obj.options.localVideo){getUserMedia({constraints:{audio:false,video:obj.options.videoParams},localVideo:obj.options.localVideo,onsuccess:function(e){self.options.localVideoStream=e;console.log("local video ready");},onerror:function(e){console.error("local video error!");}});} +var video={};var bestFrameRate=obj.options.videoParams.vertoBestFrameRate;var minFrameRate=obj.options.videoParams.minFrameRate||15;delete obj.options.videoParams.vertoBestFrameRate;if(obj.options.screenShare){if(!obj.options.useCamera&&!!navigator.mozGetUserMedia){var dowin=window.confirm("Do you want to share an application window? If not you can share an entire screen.");video={width:{min:obj.options.videoParams.minWidth,max:obj.options.videoParams.maxWidth},height:{min:obj.options.videoParams.minHeight,max:obj.options.videoParams.maxHeight},mediaSource:dowin?"window":"screen"}}else{var opt=[];if(obj.options.useCamera){opt.push({sourceId:obj.options.useCamera});} +if(bestFrameRate){opt.push({minFrameRate:bestFrameRate});opt.push({maxFrameRate:bestFrameRate});} +video={mandatory:obj.options.videoParams,optional:opt};}}else{video={width:{min:obj.options.videoParams.minWidth,max:obj.options.videoParams.maxWidth},height:{min:obj.options.videoParams.minHeight,max:obj.options.videoParams.maxHeight}};var useVideo=obj.options.useVideo;if(useVideo&&obj.options.useCamera&&obj.options.useCamera!=="none"){if(obj.options.useCamera!=="any"){video.deviceId=obj.options.useCamera;} +if(bestFrameRate){video.frameRate={ideal:bestFrameRate,min:minFrameRate,max:30};}}else{console.log("Camera Disabled");video=false;useVideo=false;}} +return{audio:audio,video:video,useVideo:useVideo};} +$.FSRTC.prototype.call=function(profile){checkCompat();var self=this;var screen=false;self.type="offer";if(self.options.videoParams&&self.options.screenShare){screen=true;} +function onSuccess(stream){self.localStream=stream;if(screen){self.constraints.offerToReceiveVideo=false;self.constraints.offerToReceiveAudio=false;self.constraints.offerToSendAudio=false;} +self.peer=FSRTCPeerConnection({type:self.type,attachStream:self.localStream,onICE:function(candidate){return onICE(self,candidate);},onICEComplete:function(){return onICEComplete(self);},onRemoteStream:screen?function(stream){}:function(stream){return onRemoteStream(self,stream);},onOfferSDP:function(sdp){return onOfferSDP(self,sdp);},onICESDP:function(sdp){return onICESDP(self,sdp);},onChannelError:function(e){return onChannelError(self,e);},constraints:self.constraints,iceServers:self.options.iceServers,});onStreamSuccess(self,stream);} +function onError(e){onStreamError(self,e);} +var mediaParams=getMediaParams(self);console.log("Audio constraints",mediaParams.audio);console.log("Video constraints",mediaParams.video);if(mediaParams.audio||mediaParams.video){getUserMedia({constraints:{audio:mediaParams.audio,video:mediaParams.video},video:mediaParams.useVideo,onsuccess:onSuccess,onerror:onError});}else{onSuccess(null);}};function FSRTCPeerConnection(options){var gathering=false,done=false;var config={};var default_ice={urls:['stun:stun.l.google.com:19302']};if(options.iceServers){if(typeof(options.iceServers)==="boolean"){config.iceServers=[default_ice];}else{config.iceServers=options.iceServers;}} +var peer=new window.RTCPeerConnection(config);openOffererChannel();var x=0;function ice_handler(){done=true;gathering=null;if(options.onICEComplete){options.onICEComplete();} +if(options.type=="offer"){options.onICESDP(peer.localDescription);}else{if(!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}} +peer.onicecandidate=function(event){if(done){return;} +if(!gathering){gathering=setTimeout(ice_handler,1000);} +if(event){if(event.candidate){options.onICE(event.candidate);}}else{done=true;if(gathering){clearTimeout(gathering);gathering=null;} +ice_handler();}};if(options.attachStream)peer.addStream(options.attachStream);if(options.attachStreams&&options.attachStream.length){var streams=options.attachStreams;for(var i=0;i<streams.length;i++){peer.addStream(streams[i]);}} +peer.onaddstream=function(event){var remoteMediaStream=event.stream;remoteMediaStream.oninactive=function(){if(options.onRemoteStreamEnded)options.onRemoteStreamEnded(remoteMediaStream);};if(options.onRemoteStream)options.onRemoteStream(remoteMediaStream);};function createOffer(){if(!options.onOfferSDP)return;peer.createOffer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);options.onOfferSDP(sessionDescription);},onSdpError,options.constraints);} +function createAnswer(){if(options.type!="answer")return;peer.setRemoteDescription(new window.RTCSessionDescription(options.offerSDP),onSdpSuccess,onSdpError);peer.createAnswer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);if(options.onAnswerSDP){options.onAnswerSDP(sessionDescription);}},onSdpError);} +if((options.onChannelMessage)||!options.onChannelMessage){createOffer();createAnswer();} +function setBandwidth(sdp){sdp=sdp.replace(/b=AS([^\r\n]+\r\n)/g,'');sdp=sdp.replace(/a=mid:data\r\n/g,'a=mid:data\r\nb=AS:1638400\r\n');return sdp;} +function getInteropSDP(sdp){var chars='ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split(''),extractedChars='';function getChars(){extractedChars+=chars[parseInt(Math.random()*40)]||'';if(extractedChars.length<40)getChars();return extractedChars;} +if(options.onAnswerSDP)sdp=sdp.replace(/(a=crypto:0 AES_CM_128_HMAC_SHA1_32)(.*?)(\r\n)/g,'');var inline=getChars()+'\r\n'+(extractedChars='');sdp=sdp.indexOf('a=crypto')==-1?sdp.replace(/c=IN/g,'a=crypto:1 AES_CM_128_HMAC_SHA1_80 inline:'+inline+'c=IN'):sdp;return sdp;} +function serializeSdp(sdp){return sdp;} +var channel;function openOffererChannel(){if(!options.onChannelMessage)return;_openOffererChannel();return;} +function _openOffererChannel(){channel=peer.createDataChannel(options.channel||'RTCDataChannel',{reliable:false});setChannelEvents();} +function setChannelEvents(){channel.onmessage=function(event){if(options.onChannelMessage)options.onChannelMessage(event);};channel.onopen=function(){if(options.onChannelOpened)options.onChannelOpened(channel);};channel.onclose=function(event){if(options.onChannelClosed)options.onChannelClosed(event);console.warn('WebRTC DataChannel closed',event);};channel.onerror=function(event){if(options.onChannelError)options.onChannelError(event);console.error('WebRTC DataChannel error',event);};} +function openAnswererChannel(){peer.ondatachannel=function(event){channel=event.channel;channel.binaryType='blob';setChannelEvents();};return;} +function useless(){log('Error in fake:true');} +function onSdpSuccess(){} +function onSdpError(e){if(options.onChannelError){options.onChannelError(e);} +console.error('sdp error:',e);} +return{addAnswerSDP:function(sdp,cbSuccess,cbError){peer.setRemoteDescription(new window.RTCSessionDescription(sdp),cbSuccess?cbSuccess:onSdpSuccess,cbError?cbError:onSdpError);},addICE:function(candidate){peer.addIceCandidate(new window.RTCIceCandidate({sdpMLineIndex:candidate.sdpMLineIndex,candidate:candidate.candidate}));},peer:peer,channel:channel,sendData:function(message){if(channel){channel.send(message);}},stop:function(){peer.close();if(options.attachStream){if(typeof options.attachStream.stop=='function'){options.attachStream.stop();}else{options.attachStream.active=false;}}}};} +var video_constraints={};function getUserMedia(options){var n=navigator,media;n.getMedia=n.getUserMedia;n.getMedia(options.constraints||{audio:true,video:video_constraints},streaming,options.onerror||function(e){console.error(e);});function streaming(stream){if(options.localVideo){options.localVideo['src']=window.URL.createObjectURL(stream);options.localVideo.style.display='block';} +if(options.onsuccess){options.onsuccess(stream);} +media=stream;} +return media;} +$.FSRTC.resSupported=function(w,h){for(var i in $.FSRTC.validRes){if($.FSRTC.validRes[i][0]==w&&$.FSRTC.validRes[i][1]==h){return true;}} +return false;} +$.FSRTC.bestResSupported=function(){var w=0,h=0;for(var i in $.FSRTC.validRes){if($.FSRTC.validRes[i][0]>=w&&$.FSRTC.validRes[i][1]>=h){w=$.FSRTC.validRes[i][0];h=$.FSRTC.validRes[i][1];}} +return[w,h];} +var resList=[[160,120],[320,180],[320,240],[640,360],[640,480],[1280,720],[1920,1080]];var resI=0;var ttl=0;var checkRes=function(cam,func){if(resI>=resList.length){var res={'validRes':$.FSRTC.validRes,'bestResSupported':$.FSRTC.bestResSupported()};localStorage.setItem("res_"+cam,$.toJSON(res));if(func)return func(res);return;} +var video={} +if(cam){video.deviceId={exact:cam};} +w=resList[resI][0];h=resList[resI][1];resI++;video={width:{exact:w},height:{exact:h}};getUserMedia({constraints:{audio:ttl++==0,video:video},onsuccess:function(e){e.getTracks().forEach(function(track){track.stop();});console.info(w+"x"+h+" supported.");$.FSRTC.validRes.push([w,h]);checkRes(cam,func);},onerror:function(e){console.warn(w+"x"+h+" not supported.");checkRes(cam,func);}});} +$.FSRTC.getValidRes=function(cam,func){var used=[];var cached=localStorage.getItem("res_"+cam);if(cached){var cache=$.parseJSON(cached);if(cache){$.FSRTC.validRes=cache.validRes;console.log("CACHED RES FOR CAM "+cam,cache);}else{console.error("INVALID CACHE");} +return func?func(cache):null;} +$.FSRTC.validRes=[];resI=0;checkRes(cam,func);} +$.FSRTC.checkPerms=function(runtime,check_audio,check_video){getUserMedia({constraints:{audio:check_audio,video:check_video,},onsuccess:function(e){e.getTracks().forEach(function(track){track.stop();});console.info("media perm init complete");if(runtime){setTimeout(runtime,100,true);}},onerror:function(e){if(check_video&&check_audio){console.error("error, retesting with audio params only");return $.FSRTC.checkPerms(runtime,check_audio,false);} +console.error("media perm init error");if(runtime){runtime(false)}}});}})(jQuery);(function($){$.JsonRpcClient=function(options){var self=this;this.options=$.extend({ajaxUrl:null,socketUrl:null,onmessage:null,login:null,passwd:null,sessid:null,loginParams:null,userVariables:null,getSocket:function(onmessage_cb){return self._getSocket(onmessage_cb);}},options);self.ws_cnt=0;this.wsOnMessage=function(event){self._wsOnMessage(event);};};$.JsonRpcClient.prototype._ws_socket=null;$.JsonRpcClient.prototype._ws_callbacks={};$.JsonRpcClient.prototype._current_id=1;$.JsonRpcClient.prototype.speedTest=function(bytes,cb){var socket=this.options.getSocket(this.wsOnMessage);if(socket!==null){this.speedCB=cb;this.speedBytes=bytes;socket.send("#SPU "+bytes);var loops=bytes/1024;var rem=bytes%1024;var i;var data=new Array(1024).join(".");for(i=0;i<loops;i++){socket.send("#SPB "+data);} +if(rem){socket.send("#SPB "+data);} +socket.send("#SPE");}};$.JsonRpcClient.prototype.call=function(method,params,success_cb,error_cb){if(!params){params={};} +if(this.options.sessid){params.sessid=this.options.sessid;} +var request={jsonrpc:'2.0',method:method,params:params,id:this._current_id++};if(!success_cb){success_cb=function(e){console.log("Success: ",e);};} +if(!error_cb){error_cb=function(e){console.log("Error: ",e);};} +var socket=this.options.getSocket(this.wsOnMessage);if(socket!==null){this._wsCall(socket,request,success_cb,error_cb);return;} +if(this.options.ajaxUrl===null){throw"$.JsonRpcClient.call used with no websocket and no http endpoint.";} +$.ajax({type:'POST',url:this.options.ajaxUrl,data:$.toJSON(request),dataType:'json',cache:false,success:function(data){if('error'in data)error_cb(data.error,this);success_cb(data.result,this);},error:function(jqXHR,textStatus,errorThrown){try{var response=$.parseJSON(jqXHR.responseText);if('console'in window)console.log(response);error_cb(response.error,this);}catch(err){error_cb({error:jqXHR.responseText},this);}}});};$.JsonRpcClient.prototype.notify=function(method,params){if(this.options.sessid){params.sessid=this.options.sessid;} +var request={jsonrpc:'2.0',method:method,params:params};var socket=this.options.getSocket(this.wsOnMessage);if(socket!==null){this._wsCall(socket,request);return;} +if(this.options.ajaxUrl===null){throw"$.JsonRpcClient.notify used with no websocket and no http endpoint.";} +$.ajax({type:'POST',url:this.options.ajaxUrl,data:$.toJSON(request),dataType:'json',cache:false});};$.JsonRpcClient.prototype.batch=function(callback,all_done_cb,error_cb){var batch=new $.JsonRpcClient._batchObject(this,all_done_cb,error_cb);callback(batch);batch._execute();};$.JsonRpcClient.prototype.socketReady=function(){if(this._ws_socket===null||this._ws_socket.readyState>1){return false;} +return true;};$.JsonRpcClient.prototype.closeSocket=function(){var self=this;if(self.socketReady()){self._ws_socket.onclose=function(w){console.log("Closing Socket");};self._ws_socket.close();}};$.JsonRpcClient.prototype.loginData=function(params){var self=this;self.options.login=params.login;self.options.passwd=params.passwd;self.options.loginParams=params.loginParams;self.options.userVariables=params.userVariables;};$.JsonRpcClient.prototype.connectSocket=function(onmessage_cb){var self=this;if(self.to){clearTimeout(self.to);} +if(!self.socketReady()){self.authing=false;if(self._ws_socket){delete self._ws_socket;} +self._ws_socket=new WebSocket(self.options.socketUrl);if(self._ws_socket){self._ws_socket.onmessage=onmessage_cb;self._ws_socket.onclose=function(w){if(!self.ws_sleep){self.ws_sleep=1000;} +if(self.options.onWSClose){self.options.onWSClose(self);} +console.error("Websocket Lost "+self.ws_cnt+" sleep: "+self.ws_sleep+"msec");self.to=setTimeout(function(){console.log("Attempting Reconnection....");self.connectSocket(onmessage_cb);},self.ws_sleep);self.ws_cnt++;if(self.ws_sleep<3000&&(self.ws_cnt%10)===0){self.ws_sleep+=1000;}};self._ws_socket.onopen=function(){if(self.to){clearTimeout(self.to);} +self.ws_sleep=1000;self.ws_cnt=0;if(self.options.onWSConnect){self.options.onWSConnect(self);} +var req;while((req=$.JsonRpcClient.q.pop())){self._ws_socket.send(req);}};}} +return self._ws_socket?true:false;};$.JsonRpcClient.prototype.stopRetrying=function(){if(self.to) +clearTimeout(self.to);} +$.JsonRpcClient.prototype._getSocket=function(onmessage_cb){if(this.options.socketUrl===null||!("WebSocket"in window))return null;this.connectSocket(onmessage_cb);return this._ws_socket;};$.JsonRpcClient.q=[];$.JsonRpcClient.prototype._wsCall=function(socket,request,success_cb,error_cb){var request_json=$.toJSON(request);if(socket.readyState<1){self=this;$.JsonRpcClient.q.push(request_json);}else{socket.send(request_json);} +if('id'in request&&typeof success_cb!=='undefined'){this._ws_callbacks[request.id]={request:request_json,request_obj:request,success_cb:success_cb,error_cb:error_cb};}};$.JsonRpcClient.prototype._wsOnMessage=function(event){var response;if(event.data[0]=="#"&&event.data[1]=="S"&&event.data[2]=="P"){if(event.data[3]=="U"){this.up_dur=parseInt(event.data.substring(4));}else if(this.speedCB&&event.data[3]=="D"){this.down_dur=parseInt(event.data.substring(4));var up_kps=(((this.speedBytes*8)/(this.up_dur/1000))/1024).toFixed(0);var down_kps=(((this.speedBytes*8)/(this.down_dur/1000))/1024).toFixed(0);console.info("Speed Test: Up: "+up_kps+" Down: "+down_kps);this.speedCB(event,{upDur:this.up_dur,downDur:this.down_dur,upKPS:up_kps,downKPS:down_kps});this.speedCB=null;} +return;} +try{response=$.parseJSON(event.data);if(typeof response==='object'&&'jsonrpc'in response&&response.jsonrpc==='2.0'){if('result'in response&&this._ws_callbacks[response.id]){var success_cb=this._ws_callbacks[response.id].success_cb;delete this._ws_callbacks[response.id];success_cb(response.result,this);return;}else if('error'in response&&this._ws_callbacks[response.id]){var error_cb=this._ws_callbacks[response.id].error_cb;var orig_req=this._ws_callbacks[response.id].request;if(!self.authing&&response.error.code==-32000&&self.options.login&&self.options.passwd){self.authing=true;this.call("login",{login:self.options.login,passwd:self.options.passwd,loginParams:self.options.loginParams,userVariables:self.options.userVariables},this._ws_callbacks[response.id].request_obj.method=="login"?function(e){self.authing=false;console.log("logged in");delete self._ws_callbacks[response.id];if(self.options.onWSLogin){self.options.onWSLogin(true,self);}}:function(e){self.authing=false;console.log("logged in, resending request id: "+response.id);var socket=self.options.getSocket(self.wsOnMessage);if(socket!==null){socket.send(orig_req);} +if(self.options.onWSLogin){self.options.onWSLogin(true,self);}},function(e){console.log("error logging in, request id:",response.id);delete self._ws_callbacks[response.id];error_cb(response.error,this);if(self.options.onWSLogin){self.options.onWSLogin(false,self);}});return;} +delete this._ws_callbacks[response.id];error_cb(response.error,this);return;}}}catch(err){console.log("ERROR: "+err);return;} +if(typeof this.options.onmessage==='function'){event.eventData=response;if(!event.eventData){event.eventData={};} +var reply=this.options.onmessage(event);if(reply&&typeof reply==="object"&&event.eventData.id){var msg={jsonrpc:"2.0",id:event.eventData.id,result:reply};var socket=self.options.getSocket(self.wsOnMessage);if(socket!==null){socket.send($.toJSON(msg));}}}};$.JsonRpcClient._batchObject=function(jsonrpcclient,all_done_cb,error_cb){this._requests=[];this.jsonrpcclient=jsonrpcclient;this.all_done_cb=all_done_cb;this.error_cb=typeof error_cb==='function'?error_cb:function(){};};$.JsonRpcClient._batchObject.prototype.call=function(method,params,success_cb,error_cb){if(!params){params={};} +if(this.options.sessid){params.sessid=this.options.sessid;} +if(!success_cb){success_cb=function(e){console.log("Success: ",e);};} +if(!error_cb){error_cb=function(e){console.log("Error: ",e);};} +this._requests.push({request:{jsonrpc:'2.0',method:method,params:params,id:this.jsonrpcclient._current_id++},success_cb:success_cb,error_cb:error_cb});};$.JsonRpcClient._batchObject.prototype.notify=function(method,params){if(this.options.sessid){params.sessid=this.options.sessid;} +this._requests.push({request:{jsonrpc:'2.0',method:method,params:params}});};$.JsonRpcClient._batchObject.prototype._execute=function(){var self=this;if(this._requests.length===0)return;var batch_request=[];var handlers={};var i=0;var call;var success_cb;var error_cb;var socket=self.jsonrpcclient.options.getSocket(self.jsonrpcclient.wsOnMessage);if(socket!==null){for(i=0;i<this._requests.length;i++){call=this._requests[i];success_cb=('success_cb'in call)?call.success_cb:undefined;error_cb=('error_cb'in call)?call.error_cb:undefined;self.jsonrpcclient._wsCall(socket,call.request,success_cb,error_cb);} +if(typeof all_done_cb==='function')all_done_cb(result);return;} +for(i=0;i<this._requests.length;i++){call=this._requests[i];batch_request.push(call.request);if('id'in call.request){handlers[call.request.id]={success_cb:call.success_cb,error_cb:call.error_cb};}} +success_cb=function(data){self._batchCb(data,handlers,self.all_done_cb);};if(self.jsonrpcclient.options.ajaxUrl===null){throw"$.JsonRpcClient.batch used with no websocket and no http endpoint.";} +$.ajax({url:self.jsonrpcclient.options.ajaxUrl,data:$.toJSON(batch_request),dataType:'json',cache:false,type:'POST',error:function(jqXHR,textStatus,errorThrown){self.error_cb(jqXHR,textStatus,errorThrown);},success:success_cb});};$.JsonRpcClient._batchObject.prototype._batchCb=function(result,handlers,all_done_cb){for(var i=0;i<result.length;i++){var response=result[i];if('error'in response){if(response.id===null||!(response.id in handlers)){if('console'in window)console.log(response);}else{handlers[response.id].error_cb(response.error,this);}}else{if(!(response.id in handlers)&&'console'in window){console.log(response);}else{handlers[response.id].success_cb(response.result,this);}}} +if(typeof all_done_cb==='function')all_done_cb(result);};})(jQuery);(function($){var sources=[];var generateGUID=(typeof(window.crypto)!=='undefined'&&typeof(window.crypto.getRandomValues)!=='undefined')?function(){var buf=new Uint16Array(8);window.crypto.getRandomValues(buf);var S4=function(num){var ret=num.toString(16);while(ret.length<4){ret="0"+ret;} +return ret;};return(S4(buf[0])+S4(buf[1])+"-"+S4(buf[2])+"-"+S4(buf[3])+"-"+S4(buf[4])+"-"+S4(buf[5])+S4(buf[6])+S4(buf[7]));}:function(){return'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g,function(c){var r=Math.random()*16|0,v=c=='x'?r:(r&0x3|0x8);return v.toString(16);});};$.verto=function(options,callbacks){var verto=this;$.verto.saved.push(verto);verto.options=$.extend({login:null,passwd:null,socketUrl:null,tag:null,localTag:null,videoParams:{},audioParams:{},loginParams:{},deviceParams:{onResCheck:null},userVariables:{},iceServers:false,ringSleep:6000,sessid:null},options);if(verto.options.deviceParams.useCamera){$.FSRTC.getValidRes(verto.options.deviceParams.useCamera,verto.options.deviceParams.onResCheck);} +if(!verto.options.deviceParams.useMic){verto.options.deviceParams.useMic="any";} +if(!verto.options.deviceParams.useSpeak){verto.options.deviceParams.useSpeak="any";} +if(verto.options.sessid){verto.sessid=verto.options.sessid;}else{verto.sessid=localStorage.getItem("verto_session_uuid")||generateGUID();localStorage.setItem("verto_session_uuid",verto.sessid);} +verto.dialogs={};verto.callbacks=callbacks||{};verto.eventSUBS={};verto.rpcClient=new $.JsonRpcClient({login:verto.options.login,passwd:verto.options.passwd,socketUrl:verto.options.socketUrl,loginParams:verto.options.loginParams,userVariables:verto.options.userVariables,sessid:verto.sessid,onmessage:function(e){return verto.handleMessage(e.eventData);},onWSConnect:function(o){o.call('login',{});},onWSLogin:function(success){if(verto.callbacks.onWSLogin){verto.callbacks.onWSLogin(verto,success);}},onWSClose:function(success){if(verto.callbacks.onWSClose){verto.callbacks.onWSClose(verto,success);} +verto.purge();}});var tag=verto.options.tag;if(typeof(tag)==="function"){tag=tag();} +if(verto.options.ringFile&&verto.options.tag){verto.ringer=$("#"+tag);} +verto.rpcClient.call('login',{});};$.verto.prototype.deviceParams=function(obj){var verto=this;for(var i in obj){verto.options.deviceParams[i]=obj[i];} +if(obj.useCamera){$.FSRTC.getValidRes(verto.options.deviceParams.useCamera,obj?obj.onResCheck:undefined);}};$.verto.prototype.videoParams=function(obj){var verto=this;for(var i in obj){verto.options.videoParams[i]=obj[i];}};$.verto.prototype.iceServers=function(obj){var verto=this;verto.options.iceServers=obj;};$.verto.prototype.loginData=function(params){var verto=this;verto.options.login=params.login;verto.options.passwd=params.passwd;verto.rpcClient.loginData(params);};$.verto.prototype.logout=function(msg){var verto=this;verto.rpcClient.closeSocket();if(verto.callbacks.onWSClose){verto.callbacks.onWSClose(verto,false);} +verto.purge();};$.verto.prototype.login=function(msg){var verto=this;verto.logout();verto.rpcClient.call('login',{});};$.verto.prototype.message=function(msg){var verto=this;var err=0;if(!msg.to){console.error("Missing To");err++;} +if(!msg.body){console.error("Missing Body");err++;} +if(err){return false;} +verto.sendMethod("verto.info",{msg:msg});return true;};$.verto.prototype.processReply=function(method,success,e){var verto=this;var i;switch(method){case"verto.subscribe":for(i in e.unauthorizedChannels){drop_bad(verto,e.unauthorizedChannels[i]);} +for(i in e.subscribedChannels){mark_ready(verto,e.subscribedChannels[i]);} +break;case"verto.unsubscribe":break;}};$.verto.prototype.sendMethod=function(method,params){var verto=this;verto.rpcClient.call(method,params,function(e){verto.processReply(method,true,e);},function(e){verto.processReply(method,false,e);});};function do_sub(verto,channel,obj){} +function drop_bad(verto,channel){console.error("drop unauthorized channel: "+channel);delete verto.eventSUBS[channel];} +function mark_ready(verto,channel){for(var j in verto.eventSUBS[channel]){verto.eventSUBS[channel][j].ready=true;console.log("subscribed to channel: "+channel);if(verto.eventSUBS[channel][j].readyHandler){verto.eventSUBS[channel][j].readyHandler(verto,channel);}}} +var SERNO=1;function do_subscribe(verto,channel,subChannels,sparams){var params=sparams||{};var local=params.local;var obj={eventChannel:channel,userData:params.userData,handler:params.handler,ready:false,readyHandler:params.readyHandler,serno:SERNO++};var isnew=false;if(!verto.eventSUBS[channel]){verto.eventSUBS[channel]=[];subChannels.push(channel);isnew=true;} +verto.eventSUBS[channel].push(obj);if(local){obj.ready=true;obj.local=true;} +if(!isnew&&verto.eventSUBS[channel][0].ready){obj.ready=true;if(obj.readyHandler){obj.readyHandler(verto,channel);}} +return{serno:obj.serno,eventChannel:channel};} +$.verto.prototype.subscribe=function(channel,sparams){var verto=this;var r=[];var subChannels=[];var params=sparams||{};if(typeof(channel)==="string"){r.push(do_subscribe(verto,channel,subChannels,params));}else{for(var i in channel){r.push(do_subscribe(verto,channel,subChannels,params));}} +if(subChannels.length){verto.sendMethod("verto.subscribe",{eventChannel:subChannels.length==1?subChannels[0]:subChannels,subParams:params.subParams});} +return r;};$.verto.prototype.unsubscribe=function(handle){var verto=this;var i;if(!handle){for(i in verto.eventSUBS){if(verto.eventSUBS[i]){verto.unsubscribe(verto.eventSUBS[i]);}}}else{var unsubChannels={};var sendChannels=[];var channel;if(typeof(handle)=="string"){delete verto.eventSUBS[handle];unsubChannels[handle]++;}else{for(i in handle){if(typeof(handle[i])=="string"){channel=handle[i];delete verto.eventSUBS[channel];unsubChannels[channel]++;}else{var repl=[];channel=handle[i].eventChannel;for(var j in verto.eventSUBS[channel]){if(verto.eventSUBS[channel][j].serno==handle[i].serno){}else{repl.push(verto.eventSUBS[channel][j]);}} +verto.eventSUBS[channel]=repl;if(verto.eventSUBS[channel].length===0){delete verto.eventSUBS[channel];unsubChannels[channel]++;}}}} +for(var u in unsubChannels){console.log("Sending Unsubscribe for: ",u);sendChannels.push(u);} +if(sendChannels.length){verto.sendMethod("verto.unsubscribe",{eventChannel:sendChannels.length==1?sendChannels[0]:sendChannels});}}};$.verto.prototype.broadcast=function(channel,params){var verto=this;var msg={eventChannel:channel,data:{}};for(var i in params){msg.data[i]=params[i];} +verto.sendMethod("verto.broadcast",msg);};$.verto.prototype.purge=function(callID){var verto=this;var x=0;var i;for(i in verto.dialogs){if(!x){console.log("purging dialogs");} +x++;verto.dialogs[i].setState($.verto.enum.state.purge);} +for(i in verto.eventSUBS){if(verto.eventSUBS[i]){console.log("purging subscription: "+i);delete verto.eventSUBS[i];}}};$.verto.prototype.hangup=function(callID){var verto=this;if(callID){var dialog=verto.dialogs[callID];if(dialog){dialog.hangup();}}else{for(var i in verto.dialogs){verto.dialogs[i].hangup();}}};$.verto.prototype.newCall=function(args,callbacks){var verto=this;if(!verto.rpcClient.socketReady()){console.error("Not Connected...");return;} +var dialog=new $.verto.dialog($.verto.enum.direction.outbound,this,args);dialog.invite();if(callbacks){dialog.callbacks=callbacks;} +return dialog;};$.verto.prototype.handleMessage=function(data){var verto=this;if(!(data&&data.method)){console.error("Invalid Data",data);return;} +if(data.params.callID){var dialog=verto.dialogs[data.params.callID];if(data.method==="verto.attach"&&dialog){delete dialog.verto.dialogs[dialog.callID];dialog.rtc.stop();dialog=null;} +if(dialog){switch(data.method){case'verto.bye':dialog.hangup(data.params);break;case'verto.answer':dialog.handleAnswer(data.params);break;case'verto.media':dialog.handleMedia(data.params);break;case'verto.display':dialog.handleDisplay(data.params);break;case'verto.info':dialog.handleInfo(data.params);break;default:console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED",dialog,data.method);break;}}else{switch(data.method){case'verto.attach':data.params.attach=true;if(data.params.sdp&&data.params.sdp.indexOf("m=video")>0){data.params.useVideo=true;} +if(data.params.sdp&&data.params.sdp.indexOf("stereo=1")>0){data.params.useStereo=true;} +dialog=new $.verto.dialog($.verto.enum.direction.inbound,verto,data.params);dialog.setState($.verto.enum.state.recovering);break;case'verto.invite':if(data.params.sdp&&data.params.sdp.indexOf("m=video")>0){data.params.wantVideo=true;} +if(data.params.sdp&&data.params.sdp.indexOf("stereo=1")>0){data.params.useStereo=true;} +dialog=new $.verto.dialog($.verto.enum.direction.inbound,verto,data.params);break;default:console.debug("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED");break;}} +return{method:data.method};}else{switch(data.method){case'verto.punt':verto.purge();verto.logout();break;case'verto.event':var list=null;var key=null;if(data.params){key=data.params.eventChannel;} +if(key){list=verto.eventSUBS[key];if(!list){list=verto.eventSUBS[key.split(".")[0]];}} +if(!list&&key&&key===verto.sessid){if(verto.callbacks.onMessage){verto.callbacks.onMessage(verto,null,$.verto.enum.message.pvtEvent,data.params);}}else if(!list&&key&&verto.dialogs[key]){verto.dialogs[key].sendMessage($.verto.enum.message.pvtEvent,data.params);}else if(!list){if(!key){key="UNDEFINED";} +console.error("UNSUBBED or invalid EVENT "+key+" IGNORED");}else{for(var i in list){var sub=list[i];if(!sub||!sub.ready){console.error("invalid EVENT for "+key+" IGNORED");}else if(sub.handler){sub.handler(verto,data.params,sub.userData);}else if(verto.callbacks.onEvent){verto.callbacks.onEvent(verto,data.params,sub.userData);}else{console.log("EVENT:",data.params);}}} +break;case"verto.info":if(verto.callbacks.onMessage){verto.callbacks.onMessage(verto,null,$.verto.enum.message.info,data.params.msg);} +console.debug("MESSAGE from: "+data.params.msg.from,data.params.msg.body);break;default:console.error("INVALID METHOD OR NON-EXISTANT CALL REFERENCE IGNORED",data.method);break;}}};var del_array=function(array,name){var r=[];var len=array.length;for(var i=0;i<len;i++){if(array[i]!=name){r.push(array[i]);}} +return r;};var hashArray=function(){var vha=this;var hash={};var array=[];vha.reorder=function(a){array=a;var h=hash;hash={};var len=array.length;for(var i=0;i<len;i++){var key=array[i];if(h[key]){hash[key]=h[key];delete h[key];}} +h=undefined;};vha.clear=function(){hash=undefined;array=undefined;hash={};array=[];};vha.add=function(name,val,insertAt){var redraw=false;if(!hash[name]){if(insertAt===undefined||insertAt<0||insertAt>=array.length){array.push(name);}else{var x=0;var n=[];var len=array.length;for(var i=0;i<len;i++){if(x++==insertAt){n.push(name);} +n.push(array[i]);} +array=undefined;array=n;n=undefined;redraw=true;}} +hash[name]=val;return redraw;};vha.del=function(name){var r=false;if(hash[name]){array=del_array(array,name);delete hash[name];r=true;}else{console.error("can't del nonexistant key "+name);} +return r;};vha.get=function(name){return hash[name];};vha.order=function(){return array;};vha.hash=function(){return hash;};vha.indexOf=function(name){var len=array.length;for(var i=0;i<len;i++){if(array[i]==name){return i;}}};vha.arrayLen=function(){return array.length;};vha.asArray=function(){var r=[];var len=array.length;for(var i=0;i<len;i++){var key=array[i];r.push(hash[key]);} +return r;};vha.each=function(cb){var len=array.length;for(var i=0;i<len;i++){cb(array[i],hash[array[i]]);}};vha.dump=function(html){var str="";vha.each(function(name,val){str+="name: "+name+" val: "+JSON.stringify(val)+(html?"<br>":"\n");});return str;};};$.verto.liveArray=function(verto,context,name,config){var la=this;var lastSerno=0;var binding=null;var user_obj=config.userObj;var local=false;hashArray.call(la);la._add=la.add;la._del=la.del;la._reorder=la.reorder;la._clear=la.clear;la.context=context;la.name=name;la.user_obj=user_obj;la.verto=verto;la.broadcast=function(channel,obj){verto.broadcast(channel,obj);};la.errs=0;la.clear=function(){la._clear();lastSerno=0;if(la.onChange){la.onChange(la,{action:"clear"});}};la.checkSerno=function(serno){if(serno<0){return true;} +if(lastSerno>0&&serno!=(lastSerno+1)){if(la.onErr){la.onErr(la,{lastSerno:lastSerno,serno:serno});} +la.errs++;console.debug(la.errs);if(la.errs<3){la.bootstrap(la.user_obj);} +return false;}else{lastSerno=serno;return true;}};la.reorder=function(serno,a){if(la.checkSerno(serno)){la._reorder(a);if(la.onChange){la.onChange(la,{serno:serno,action:"reorder"});}}};la.init=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){if(la.onChange){la.onChange(la,{serno:serno,action:"init",index:index,key:key,data:val});}}};la.bootObj=function(serno,val){if(la.checkSerno(serno)){for(var i in val){la._add(val[i][0],val[i][1]);} +if(la.onChange){la.onChange(la,{serno:serno,action:"bootObj",data:val,redraw:true});}}};la.add=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){var redraw=la._add(key,val,index);if(la.onChange){la.onChange(la,{serno:serno,action:"add",index:index,key:key,data:val,redraw:redraw});}}};la.modify=function(serno,val,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){la._add(key,val,index);if(la.onChange){la.onChange(la,{serno:serno,action:"modify",key:key,data:val,index:index});}}};la.del=function(serno,key,index){if(key===null||key===undefined){key=serno;} +if(la.checkSerno(serno)){if(index===null||index<0||index===undefined){index=la.indexOf(key);} +var ok=la._del(key);if(ok&&la.onChange){la.onChange(la,{serno:serno,action:"del",key:key,index:index});}}};var eventHandler=function(v,e,la){var packet=e.data;if(packet.name!=la.name){return;} +switch(packet.action){case"init":la.init(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);break;case"bootObj":la.bootObj(packet.wireSerno,packet.data);break;case"add":la.add(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);break;case"modify":if(!(packet.arrIndex||packet.hashKey)){console.error("Invalid Packet",packet);}else{la.modify(packet.wireSerno,packet.data,packet.hashKey,packet.arrIndex);} +break;case"del":if(!(packet.arrIndex||packet.hashKey)){console.error("Invalid Packet",packet);}else{la.del(packet.wireSerno,packet.hashKey,packet.arrIndex);} +break;case"clear":la.clear();break;case"reorder":la.reorder(packet.wireSerno,packet.order);break;default:if(la.checkSerno(packet.wireSerno)){if(la.onChange){la.onChange(la,{serno:packet.wireSerno,action:packet.action,data:packet.data});}} +break;}};if(la.context){binding=la.verto.subscribe(la.context,{handler:eventHandler,userData:la,subParams:config.subParams});} +la.destroy=function(){la._clear();la.verto.unsubscribe(binding);};la.sendCommand=function(cmd,obj){var self=la;self.broadcast(self.context,{liveArray:{command:cmd,context:self.context,name:self.name,obj:obj}});};la.bootstrap=function(obj){var self=la;la.sendCommand("bootstrap",obj);};la.changepage=function(obj){var self=la;self.clear();self.broadcast(self.context,{liveArray:{command:"changepage",context:la.context,name:la.name,obj:obj}});};la.heartbeat=function(obj){var self=la;var callback=function(){self.heartbeat.call(self,obj);};self.broadcast(self.context,{liveArray:{command:"heartbeat",context:self.context,name:self.name,obj:obj}});self.hb_pid=setTimeout(callback,30000);};la.bootstrap(la.user_obj);};$.verto.liveTable=function(verto,context,name,jq,config){var dt;var la=new $.verto.liveArray(verto,context,name,{subParams:config.subParams});var lt=this;lt.liveArray=la;lt.dataTable=dt;lt.verto=verto;lt.destroy=function(){if(dt){dt.fnDestroy();} +if(la){la.destroy();} +dt=null;la=null;};la.onErr=function(obj,args){console.error("Error: ",obj,args);};function genRow(data){if(typeof(data[4])==="string"&&data[4].indexOf("{")>-1){var tmp=$.parseJSON(data[4]);data[4]=tmp.oldStatus;data[5]=null;} +return data;} +function genArray(obj){var data=obj.asArray();for(var i in data){data[i]=genRow(data[i]);} +return data;} +la.onChange=function(obj,args){var index=0;var iserr=0;if(!dt){if(!config.aoColumns){if(args.action!="init"){return;} +config.aoColumns=[];for(var i in args.data){config.aoColumns.push({"sTitle":args.data[i]});}} +dt=jq.dataTable(config);} +if(dt&&(args.action=="del"||args.action=="modify")){index=args.index;if(index===undefined&&args.key){index=la.indexOf(args.key);} +if(index===undefined){console.error("INVALID PACKET Missing INDEX\n",args);return;}} +if(config.onChange){config.onChange(obj,args);} +try{switch(args.action){case"bootObj":if(!args.data){console.error("missing data");return;} +dt.fnClearTable();dt.fnAddData(genArray(obj));dt.fnAdjustColumnSizing();break;case"add":if(!args.data){console.error("missing data");return;} +if(args.redraw>-1){dt.fnClearTable();dt.fnAddData(genArray(obj));}else{dt.fnAddData(genRow(args.data));} +dt.fnAdjustColumnSizing();break;case"modify":if(!args.data){return;} +dt.fnUpdate(genRow(args.data),index);dt.fnAdjustColumnSizing();break;case"del":dt.fnDeleteRow(index);dt.fnAdjustColumnSizing();break;case"clear":dt.fnClearTable();break;case"reorder":dt.fnClearTable();dt.fnAddData(genArray(obj));break;case"hide":jq.hide();break;case"show":jq.show();break;}}catch(err){console.error("ERROR: "+err);iserr++;} +if(iserr){obj.errs++;if(obj.errs<3){obj.bootstrap(obj.user_obj);}}else{obj.errs=0;}};la.onChange(la,{action:"init"});};var CONFMAN_SERNO=1;$.verto.conf=function(verto,params){var conf=this;conf.params=$.extend({dialog:null,hasVid:false,laData:null,onBroadcast:null,onLaChange:null,onLaRow:null},params);conf.verto=verto;conf.serno=CONFMAN_SERNO++;createMainModeratorMethods();verto.subscribe(conf.params.laData.modChannel,{handler:function(v,e){if(conf.params.onBroadcast){conf.params.onBroadcast(verto,conf,e.data);}}});verto.subscribe(conf.params.laData.infoChannel,{handler:function(v,e){if(typeof(conf.params.infoCallback)==="function"){conf.params.infoCallback(v,e);}}});verto.subscribe(conf.params.laData.chatChannel,{handler:function(v,e){if(typeof(conf.params.chatCallback)==="function"){conf.params.chatCallback(v,e);}}});};$.verto.conf.prototype.modCommand=function(cmd,id,value){var conf=this;conf.verto.rpcClient.call("verto.broadcast",{"eventChannel":conf.params.laData.modChannel,"data":{"application":"conf-control","command":cmd,"id":id,"value":value}});};$.verto.conf.prototype.destroy=function(){var conf=this;conf.destroyed=true;conf.params.onBroadcast(conf.verto,conf,'destroy');if(conf.params.laData.modChannel){conf.verto.unsubscribe(conf.params.laData.modChannel);} +if(conf.params.laData.chatChannel){conf.verto.unsubscribe(conf.params.laData.chatChannel);} +if(conf.params.laData.infoChannel){conf.verto.unsubscribe(conf.params.laData.infoChannel);}};function createMainModeratorMethods(){$.verto.conf.prototype.listVideoLayouts=function(){this.modCommand("list-videoLayouts",null,null);};$.verto.conf.prototype.play=function(file){this.modCommand("play",null,file);};$.verto.conf.prototype.stop=function(){this.modCommand("stop",null,"all");};$.verto.conf.prototype.deaf=function(memberID){this.modCommand("deaf",parseInt(memberID));};$.verto.conf.prototype.undeaf=function(memberID){this.modCommand("undeaf",parseInt(memberID));};$.verto.conf.prototype.record=function(file){this.modCommand("recording",null,["start",file]);};$.verto.conf.prototype.stopRecord=function(){this.modCommand("recording",null,["stop","all"]);};$.verto.conf.prototype.snapshot=function(file){if(!this.params.hasVid){throw'Conference has no video';} +this.modCommand("vid-write-png",null,file);};$.verto.conf.prototype.setVideoLayout=function(layout,canvasID){if(!this.params.hasVid){throw'Conference has no video';} +if(canvasID){this.modCommand("vid-layout",null,[layout,canvasID]);}else{this.modCommand("vid-layout",null,layout);}};$.verto.conf.prototype.kick=function(memberID){this.modCommand("kick",parseInt(memberID));};$.verto.conf.prototype.muteMic=function(memberID){this.modCommand("tmute",parseInt(memberID));};$.verto.conf.prototype.muteVideo=function(memberID){if(!this.params.hasVid){throw'Conference has no video';} +this.modCommand("tvmute",parseInt(memberID));};$.verto.conf.prototype.presenter=function(memberID){if(!this.params.hasVid){throw'Conference has no video';} +this.modCommand("vid-res-id",parseInt(memberID),"presenter");};$.verto.conf.prototype.videoFloor=function(memberID){if(!this.params.hasVid){throw'Conference has no video';} +this.modCommand("vid-floor",parseInt(memberID),"force");};$.verto.conf.prototype.banner=function(memberID,text){if(!this.params.hasVid){throw'Conference has no video';} +this.modCommand("vid-banner",parseInt(memberID),escape(text));};$.verto.conf.prototype.volumeDown=function(memberID){this.modCommand("volume_out",parseInt(memberID),"down");};$.verto.conf.prototype.volumeUp=function(memberID){this.modCommand("volume_out",parseInt(memberID),"up");};$.verto.conf.prototype.gainDown=function(memberID){this.modCommand("volume_in",parseInt(memberID),"down");};$.verto.conf.prototype.gainUp=function(memberID){this.modCommand("volume_in",parseInt(memberID),"up");};$.verto.conf.prototype.transfer=function(memberID,exten){this.modCommand("transfer",parseInt(memberID),exten);};$.verto.conf.prototype.sendChat=function(message,type){var conf=this;conf.verto.rpcClient.call("verto.broadcast",{"eventChannel":conf.params.laData.chatChannel,"data":{"action":"send","message":message,"type":type}});};} +$.verto.modfuncs={};$.verto.confMan=function(verto,params){var confMan=this;confMan.params=$.extend({tableID:null,statusID:null,mainModID:null,dialog:null,hasVid:false,laData:null,onBroadcast:null,onLaChange:null,onLaRow:null},params);confMan.verto=verto;confMan.serno=CONFMAN_SERNO++;confMan.canvasCount=confMan.params.laData.canvasCount;function genMainMod(jq){var play_id="play_"+confMan.serno;var stop_id="stop_"+confMan.serno;var recording_id="recording_"+confMan.serno;var snapshot_id="snapshot_"+confMan.serno;var rec_stop_id="recording_stop"+confMan.serno;var div_id="confman_"+confMan.serno;var html="<div id='"+div_id+"'><br>"+"<button class='ctlbtn' id='"+play_id+"'>Play</button>"+"<button class='ctlbtn' id='"+stop_id+"'>Stop</button>"+"<button class='ctlbtn' id='"+recording_id+"'>Record</button>"+"<button class='ctlbtn' id='"+rec_stop_id+"'>Record Stop</button>"+ +(confMan.params.hasVid?"<button class='ctlbtn' id='"+snapshot_id+"'>PNG Snapshot</button>":"")+"<br><br></div>";jq.html(html);$.verto.modfuncs.change_video_layout=function(id,canvas_id){var val=$("#"+id+" option:selected").text();if(val!=="none"){confMan.modCommand("vid-layout",null,[val,canvas_id]);}};if(confMan.params.hasVid){for(var j=0;j<confMan.canvasCount;j++){var vlayout_id="confman_vid_layout_"+j+"_"+confMan.serno;var vlselect_id="confman_vl_select_"+j+"_"+confMan.serno;var vlhtml="<div id='"+vlayout_id+"'><br>"+"<b>Video Layout Canvas "+(j+1)+"</b> <select onChange='$.verto.modfuncs.change_video_layout(\""+vlayout_id+"\", \""+(j+1)+"\")' id='"+vlselect_id+"'></select> "+"<br><br></div>";jq.append(vlhtml);} +$("#"+snapshot_id).click(function(){var file=prompt("Please enter file name","");if(file){confMan.modCommand("vid-write-png",null,file);}});} +$("#"+play_id).click(function(){var file=prompt("Please enter file name","");if(file){confMan.modCommand("play",null,file);}});$("#"+stop_id).click(function(){confMan.modCommand("stop",null,"all");});$("#"+recording_id).click(function(){var file=prompt("Please enter file name","");if(file){confMan.modCommand("recording",null,["start",file]);}});$("#"+rec_stop_id).click(function(){confMan.modCommand("recording",null,["stop","all"]);});} +function genControls(jq,rowid){var x=parseInt(rowid);var kick_id="kick_"+x;var canvas_in_next_id="canvas_in_next_"+x;var canvas_in_prev_id="canvas_in_prev_"+x;var canvas_out_next_id="canvas_out_next_"+x;var canvas_out_prev_id="canvas_out_prev_"+x;var canvas_in_set_id="canvas_in_set_"+x;var canvas_out_set_id="canvas_out_set_"+x;var layer_set_id="layer_set_"+x;var layer_next_id="layer_next_"+x;var layer_prev_id="layer_prev_"+x;var tmute_id="tmute_"+x;var tvmute_id="tvmute_"+x;var vbanner_id="vbanner_"+x;var tvpresenter_id="tvpresenter_"+x;var tvfloor_id="tvfloor_"+x;var box_id="box_"+x;var gainup_id="gain_in_up"+x;var gaindn_id="gain_in_dn"+x;var volup_id="vol_in_up"+x;var voldn_id="vol_in_dn"+x;var transfer_id="transfer"+x;var html="<div id='"+box_id+"'>";html+="<b>General Controls</b><hr noshade>";html+="<button class='ctlbtn' id='"+kick_id+"'>Kick</button>"+"<button class='ctlbtn' id='"+tmute_id+"'>Mute</button>"+"<button class='ctlbtn' id='"+gainup_id+"'>Gain -</button>"+"<button class='ctlbtn' id='"+gaindn_id+"'>Gain +</button>"+"<button class='ctlbtn' id='"+voldn_id+"'>Vol -</button>"+"<button class='ctlbtn' id='"+volup_id+"'>Vol +</button>"+"<button class='ctlbtn' id='"+transfer_id+"'>Transfer</button>";if(confMan.params.hasVid){html+="<br><br><b>Video Controls</b><hr noshade>";html+="<button class='ctlbtn' id='"+tvmute_id+"'>VMute</button>"+"<button class='ctlbtn' id='"+tvpresenter_id+"'>Presenter</button>"+"<button class='ctlbtn' id='"+tvfloor_id+"'>Vid Floor</button>"+"<button class='ctlbtn' id='"+vbanner_id+"'>Banner</button>";if(confMan.canvasCount>1){html+="<br><br><b>Canvas Controls</b><hr noshade>"+"<button class='ctlbtn' id='"+canvas_in_set_id+"'>Set Input Canvas</button>"+"<button class='ctlbtn' id='"+canvas_in_prev_id+"'>Prev Input Canvas</button>"+"<button class='ctlbtn' id='"+canvas_in_next_id+"'>Next Input Canvas</button>"+"<br>"+"<button class='ctlbtn' id='"+canvas_out_set_id+"'>Set Watching Canvas</button>"+"<button class='ctlbtn' id='"+canvas_out_prev_id+"'>Prev Watching Canvas</button>"+"<button class='ctlbtn' id='"+canvas_out_next_id+"'>Next Watching Canvas</button>";} +html+="<br>"+"<button class='ctlbtn' id='"+layer_set_id+"'>Set Layer</button>"+"<button class='ctlbtn' id='"+layer_prev_id+"'>Prev Layer</button>"+"<button class='ctlbtn' id='"+layer_next_id+"'>Next Layer</button>"+"</div>";} +jq.html(html);if(!jq.data("mouse")){$("#"+box_id).hide();} +jq.mouseover(function(e){jq.data({"mouse":true});$("#"+box_id).show();});jq.mouseout(function(e){jq.data({"mouse":false});$("#"+box_id).hide();});$("#"+transfer_id).click(function(){var xten=prompt("Enter Extension");if(xten){confMan.modCommand("transfer",x,xten);}});$("#"+kick_id).click(function(){confMan.modCommand("kick",x);});$("#"+layer_set_id).click(function(){var cid=prompt("Please enter layer ID","");if(cid){confMan.modCommand("vid-layer",x,cid);}});$("#"+layer_next_id).click(function(){confMan.modCommand("vid-layer",x,"next");});$("#"+layer_prev_id).click(function(){confMan.modCommand("vid-layer",x,"prev");});$("#"+canvas_in_set_id).click(function(){var cid=prompt("Please enter canvas ID","");if(cid){confMan.modCommand("vid-canvas",x,cid);}});$("#"+canvas_out_set_id).click(function(){var cid=prompt("Please enter canvas ID","");if(cid){confMan.modCommand("vid-watching-canvas",x,cid);}});$("#"+canvas_in_next_id).click(function(){confMan.modCommand("vid-canvas",x,"next");});$("#"+canvas_in_prev_id).click(function(){confMan.modCommand("vid-canvas",x,"prev");});$("#"+canvas_out_next_id).click(function(){confMan.modCommand("vid-watching-canvas",x,"next");});$("#"+canvas_out_prev_id).click(function(){confMan.modCommand("vid-watching-canvas",x,"prev");});$("#"+tmute_id).click(function(){confMan.modCommand("tmute",x);});if(confMan.params.hasVid){$("#"+tvmute_id).click(function(){confMan.modCommand("tvmute",x);});$("#"+tvpresenter_id).click(function(){confMan.modCommand("vid-res-id",x,"presenter");});$("#"+tvfloor_id).click(function(){confMan.modCommand("vid-floor",x,"force");});$("#"+vbanner_id).click(function(){var text=prompt("Please enter text","");if(text){confMan.modCommand("vid-banner",x,escape(text));}});} +$("#"+gainup_id).click(function(){confMan.modCommand("volume_in",x,"up");});$("#"+gaindn_id).click(function(){confMan.modCommand("volume_in",x,"down");});$("#"+volup_id).click(function(){confMan.modCommand("volume_out",x,"up");});$("#"+voldn_id).click(function(){confMan.modCommand("volume_out",x,"down");});return html;} +var atitle="";var awidth=0;verto.subscribe(confMan.params.laData.infoChannel,{handler:function(v,e){if(typeof(confMan.params.infoCallback)==="function"){confMan.params.infoCallback(v,e);}}});verto.subscribe(confMan.params.laData.chatChannel,{handler:function(v,e){if(typeof(confMan.params.chatCallback)==="function"){confMan.params.chatCallback(v,e);}}});if(confMan.params.laData.role==="moderator"){atitle="Action";awidth=600;if(confMan.params.mainModID){genMainMod($(confMan.params.mainModID));$(confMan.params.displayID).html("Moderator Controls Ready<br><br>");}else{$(confMan.params.mainModID).html("");} +verto.subscribe(confMan.params.laData.modChannel,{handler:function(v,e){if(confMan.params.onBroadcast){confMan.params.onBroadcast(verto,confMan,e.data);} +if(e.data["conf-command"]==="list-videoLayouts"){for(var j=0;j<confMan.canvasCount;j++){var vlselect_id="#confman_vl_select_"+j+"_"+confMan.serno;var vlayout_id="#confman_vid_layout_"+j+"_"+confMan.serno;var x=0;var options;$(vlselect_id).selectmenu({});$(vlselect_id).selectmenu("enable");$(vlselect_id).empty();$(vlselect_id).append(new Option("Choose a Layout","none"));if(e.data.responseData){var rdata=[];for(var i in e.data.responseData){rdata.push(e.data.responseData[i].name);} +options=rdata.sort(function(a,b){var ga=a.substring(0,6)=="group:"?true:false;var gb=b.substring(0,6)=="group:"?true:false;if((ga||gb)&&ga!=gb){return ga?-1:1;} +return((a==b)?0:((a>b)?1:-1));});for(var i in options){$(vlselect_id).append(new Option(options[i],options[i]));x++;}} +if(x){$(vlselect_id).selectmenu('refresh',true);}else{$(vlayout_id).hide();}}}else{if(!confMan.destroyed&&confMan.params.displayID){$(confMan.params.displayID).html(e.data.response+"<br><br>");if(confMan.lastTimeout){clearTimeout(confMan.lastTimeout);confMan.lastTimeout=0;} +confMan.lastTimeout=setTimeout(function(){$(confMan.params.displayID).html(confMan.destroyed?"":"Moderator Controls Ready<br><br>");},4000);}}}});if(confMan.params.hasVid){confMan.modCommand("list-videoLayouts",null,null);}} +var row_callback=null;if(confMan.params.laData.role==="moderator"){row_callback=function(nRow,aData,iDisplayIndex,iDisplayIndexFull){if(!aData[5]){var $row=$('td:eq(5)',nRow);genControls($row,aData);if(confMan.params.onLaRow){confMan.params.onLaRow(verto,confMan,$row,aData);}}};} +confMan.lt=new $.verto.liveTable(verto,confMan.params.laData.laChannel,confMan.params.laData.laName,$(confMan.params.tableID),{subParams:{callID:confMan.params.dialog?confMan.params.dialog.callID:null},"onChange":function(obj,args){$(confMan.params.statusID).text("Conference Members: "+" ("+obj.arrayLen()+" Total)");if(confMan.params.onLaChange){confMan.params.onLaChange(verto,confMan,$.verto.enum.confEvent.laChange,obj,args);}},"aaData":[],"aoColumns":[{"sTitle":"ID","sWidth":"50"},{"sTitle":"Number","sWidth":"250"},{"sTitle":"Name","sWidth":"250"},{"sTitle":"Codec","sWidth":"100"},{"sTitle":"Status","sWidth":confMan.params.hasVid?"200px":"150px"},{"sTitle":atitle,"sWidth":awidth,}],"bAutoWidth":true,"bDestroy":true,"bSort":false,"bInfo":false,"bFilter":false,"bLengthChange":false,"bPaginate":false,"iDisplayLength":1400,"oLanguage":{"sEmptyTable":"The Conference is Empty....."},"fnRowCallback":row_callback});};$.verto.confMan.prototype.modCommand=function(cmd,id,value){var confMan=this;confMan.verto.rpcClient.call("verto.broadcast",{"eventChannel":confMan.params.laData.modChannel,"data":{"application":"conf-control","command":cmd,"id":id,"value":value}});};$.verto.confMan.prototype.sendChat=function(message,type){var confMan=this;confMan.verto.rpcClient.call("verto.broadcast",{"eventChannel":confMan.params.laData.chatChannel,"data":{"action":"send","message":message,"type":type}});};$.verto.confMan.prototype.destroy=function(){var confMan=this;confMan.destroyed=true;if(confMan.lt){confMan.lt.destroy();} +if(confMan.params.laData.chatChannel){confMan.verto.unsubscribe(confMan.params.laData.chatChannel);} +if(confMan.params.laData.modChannel){confMan.verto.unsubscribe(confMan.params.laData.modChannel);} +if(confMan.params.mainModID){$(confMan.params.mainModID).html("");}};$.verto.dialog=function(direction,verto,params){var dialog=this;dialog.params=$.extend({useVideo:verto.options.useVideo,useStereo:verto.options.useStereo,screenShare:false,useCamera:false,useMic:verto.options.deviceParams.useMic,useSpeak:verto.options.deviceParams.useSpeak,tag:verto.options.tag,localTag:verto.options.localTag,login:verto.options.login,videoParams:verto.options.videoParams},params);if(!dialog.params.screenShare){dialog.params.useCamera=verto.options.deviceParams.useCamera;} +dialog.verto=verto;dialog.direction=direction;dialog.lastState=null;dialog.state=dialog.lastState=$.verto.enum.state.new;dialog.callbacks=verto.callbacks;dialog.answered=false;dialog.attach=params.attach||false;dialog.screenShare=params.screenShare||false;dialog.useCamera=dialog.params.useCamera;dialog.useMic=dialog.params.useMic;dialog.useSpeak=dialog.params.useSpeak;if(dialog.params.callID){dialog.callID=dialog.params.callID;}else{dialog.callID=dialog.params.callID=generateGUID();} +if(typeof(dialog.params.tag)==="function"){dialog.params.tag=dialog.params.tag();} +if(dialog.params.tag){dialog.audioStream=document.getElementById(dialog.params.tag);if(dialog.params.useVideo){dialog.videoStream=dialog.audioStream;}} +if(dialog.params.localTag){dialog.localVideo=document.getElementById(dialog.params.localTag);} +dialog.verto.dialogs[dialog.callID]=dialog;var RTCcallbacks={};if(dialog.direction==$.verto.enum.direction.inbound){if(dialog.params.display_direction==="outbound"){dialog.params.remote_caller_id_name=dialog.params.caller_id_name;dialog.params.remote_caller_id_number=dialog.params.caller_id_number;}else{dialog.params.remote_caller_id_name=dialog.params.callee_id_name;dialog.params.remote_caller_id_number=dialog.params.callee_id_number;} +if(!dialog.params.remote_caller_id_name){dialog.params.remote_caller_id_name="Nobody";} +if(!dialog.params.remote_caller_id_number){dialog.params.remote_caller_id_number="UNKNOWN";} +RTCcallbacks.onMessage=function(rtc,msg){console.debug(msg);};RTCcallbacks.onAnswerSDP=function(rtc,sdp){console.error("answer sdp",sdp);};}else{dialog.params.remote_caller_id_name="Outbound Call";dialog.params.remote_caller_id_number=dialog.params.destination_number;} +RTCcallbacks.onICESDP=function(rtc){console.log("RECV "+rtc.type+" SDP",rtc.mediaData.SDP);if(dialog.state==$.verto.enum.state.requesting||dialog.state==$.verto.enum.state.answering||dialog.state==$.verto.enum.state.active){location.reload();return;} +if(rtc.type=="offer"){if(dialog.state==$.verto.enum.state.active){dialog.setState($.verto.enum.state.requesting);dialog.sendMethod("verto.attach",{sdp:rtc.mediaData.SDP});}else{dialog.setState($.verto.enum.state.requesting);dialog.sendMethod("verto.invite",{sdp:rtc.mediaData.SDP});}}else{dialog.setState($.verto.enum.state.answering);dialog.sendMethod(dialog.attach?"verto.attach":"verto.answer",{sdp:dialog.rtc.mediaData.SDP});}};RTCcallbacks.onICE=function(rtc){if(rtc.type=="offer"){console.log("offer",rtc.mediaData.candidate);return;}};RTCcallbacks.onStream=function(rtc,stream){if(dialog.verto.options.permissionCallback&&typeof dialog.verto.options.permissionCallback.onGranted==='function'){dialog.verto.options.permissionCallback.onGranted(stream);} +console.log("stream started");};RTCcallbacks.onError=function(e){if(dialog.verto.options.permissionCallback&&typeof dialog.verto.options.permissionCallback.onDenied==='function'){dialog.verto.options.permissionCallback.onDenied();} +console.error("ERROR:",e);dialog.hangup({cause:"Device or Permission Error"});};dialog.rtc=new $.FSRTC({callbacks:RTCcallbacks,localVideo:dialog.screenShare?null:dialog.localVideo,useVideo:dialog.params.useVideo?dialog.videoStream:null,useAudio:dialog.audioStream,useStereo:dialog.params.useStereo,videoParams:dialog.params.videoParams,audioParams:verto.options.audioParams,iceServers:verto.options.iceServers,screenShare:dialog.screenShare,useCamera:dialog.useCamera,useMic:dialog.useMic,useSpeak:dialog.useSpeak});dialog.rtc.verto=dialog.verto;if(dialog.direction==$.verto.enum.direction.inbound){if(dialog.attach){dialog.answer();}else{dialog.ring();}}};$.verto.dialog.prototype.invite=function(){var dialog=this;dialog.rtc.call();};$.verto.dialog.prototype.sendMethod=function(method,obj){var dialog=this;obj.dialogParams={};for(var i in dialog.params){if(i=="sdp"&&method!="verto.invite"&&method!="verto.attach"){continue;} +if((obj.noDialogParams&&i!="callID")){continue;} +obj.dialogParams[i]=dialog.params[i];} +delete obj.noDialogParams;dialog.verto.rpcClient.call(method,obj,function(e){dialog.processReply(method,true,e);},function(e){dialog.processReply(method,false,e);});};function checkStateChange(oldS,newS){if(newS==$.verto.enum.state.purge||$.verto.enum.states[oldS.name][newS.name]){return true;} +return false;} +function find_name(id){for(var i in $.verto.audioOutDevices){var source=$.verto.audioOutDevices[i];if(source.id===id){return(source.label);}} +return id;} +$.verto.dialog.prototype.setAudioPlaybackDevice=function(sinkId,callback,arg){var dialog=this;var element=dialog.audioStream;if(typeof element.sinkId!=='undefined'){var devname=find_name(sinkId);console.info("Dialog: "+dialog.callID+" Setting speaker:",element,devname);element.setSinkId(sinkId).then(function(){console.log("Dialog: "+dialog.callID+' Success, audio output device attached: '+sinkId);if(callback){callback(true,devname,arg);}}).catch(function(error){var errorMessage=error;if(error.name==='SecurityError'){errorMessage="Dialog: "+dialog.callID+' You need to use HTTPS for selecting audio output '+'device: '+error;} +if(callback){callback(false,null,arg);} +console.error(errorMessage);});}else{console.warn("Dialog: "+dialog.callID+' Browser does not support output device selection.');if(callback){callback(false,null,arg);}}} +$.verto.dialog.prototype.setState=function(state){var dialog=this;if(dialog.state==$.verto.enum.state.ringing){dialog.stopRinging();} +if(dialog.state==state||!checkStateChange(dialog.state,state)){console.error("Dialog "+dialog.callID+": INVALID state change from "+dialog.state.name+" to "+state.name);dialog.hangup();return false;} +console.log("Dialog "+dialog.callID+": state change from "+dialog.state.name+" to "+state.name);dialog.lastState=dialog.state;dialog.state=state;if(!dialog.causeCode){dialog.causeCode=16;} +if(!dialog.cause){dialog.cause="NORMAL CLEARING";} +if(dialog.callbacks.onDialogState){dialog.callbacks.onDialogState(this);} +switch(dialog.state){case $.verto.enum.state.early:case $.verto.enum.state.active:var speaker=dialog.useSpeak;console.info("Using Speaker: ",speaker);if(speaker&&speaker!=="any"&&speaker!=="none"){setTimeout(function(){dialog.setAudioPlaybackDevice(speaker);},500);} +break;case $.verto.enum.state.trying:setTimeout(function(){if(dialog.state==$.verto.enum.state.trying){dialog.setState($.verto.enum.state.hangup);}},30000);break;case $.verto.enum.state.purge:dialog.setState($.verto.enum.state.destroy);break;case $.verto.enum.state.hangup:if(dialog.lastState.val>$.verto.enum.state.requesting.val&&dialog.lastState.val<$.verto.enum.state.hangup.val){dialog.sendMethod("verto.bye",{});} +dialog.setState($.verto.enum.state.destroy);break;case $.verto.enum.state.destroy:if(typeof(dialog.verto.options.tag)==="function"){$('#'+dialog.params.tag).remove();} +delete dialog.verto.dialogs[dialog.callID];if(dialog.params.screenShare){dialog.rtc.stopPeer();}else{dialog.rtc.stop();} +break;} +return true;};$.verto.dialog.prototype.processReply=function(method,success,e){var dialog=this;switch(method){case"verto.answer":case"verto.attach":if(success){dialog.setState($.verto.enum.state.active);}else{dialog.hangup();} +break;case"verto.invite":if(success){dialog.setState($.verto.enum.state.trying);}else{dialog.setState($.verto.enum.state.destroy);} +break;case"verto.bye":dialog.hangup();break;case"verto.modify":if(e.holdState){if(e.holdState=="held"){if(dialog.state!=$.verto.enum.state.held){dialog.setState($.verto.enum.state.held);}}else if(e.holdState=="active"){if(dialog.state!=$.verto.enum.state.active){dialog.setState($.verto.enum.state.active);}}} +if(success){} +break;default:break;}};$.verto.dialog.prototype.hangup=function(params){var dialog=this;if(params){if(params.causeCode){dialog.causeCode=params.causeCode;} +if(params.cause){dialog.cause=params.cause;}} +if(dialog.state.val>=$.verto.enum.state.new.val&&dialog.state.val<$.verto.enum.state.hangup.val){dialog.setState($.verto.enum.state.hangup);}else if(dialog.state.val<$.verto.enum.state.destroy){dialog.setState($.verto.enum.state.destroy);}};$.verto.dialog.prototype.stopRinging=function(){var dialog=this;if(dialog.verto.ringer){dialog.verto.ringer.stop();}};$.verto.dialog.prototype.indicateRing=function(){var dialog=this;if(dialog.verto.ringer){dialog.verto.ringer.attr("src",dialog.verto.options.ringFile)[0].play();setTimeout(function(){dialog.stopRinging();if(dialog.state==$.verto.enum.state.ringing){dialog.indicateRing();}},dialog.verto.options.ringSleep);}};$.verto.dialog.prototype.ring=function(){var dialog=this;dialog.setState($.verto.enum.state.ringing);dialog.indicateRing();};$.verto.dialog.prototype.useVideo=function(on){var dialog=this;dialog.params.useVideo=on;if(on){dialog.videoStream=dialog.audioStream;}else{dialog.videoStream=null;} +dialog.rtc.useVideo(dialog.videoStream,dialog.localVideo);};$.verto.dialog.prototype.setMute=function(what){var dialog=this;return dialog.rtc.setMute(what);};$.verto.dialog.prototype.getMute=function(){var dialog=this;return dialog.rtc.getMute();};$.verto.dialog.prototype.setVideoMute=function(what){var dialog=this;return dialog.rtc.setVideoMute(what);};$.verto.dialog.prototype.getVideoMute=function(){var dialog=this;return dialog.rtc.getVideoMute();};$.verto.dialog.prototype.useStereo=function(on){var dialog=this;dialog.params.useStereo=on;dialog.rtc.useStereo(on);};$.verto.dialog.prototype.dtmf=function(digits){var dialog=this;if(digits){dialog.sendMethod("verto.info",{dtmf:digits});}};$.verto.dialog.prototype.rtt=function(obj){var dialog=this;var pobj={};if(!obj){return false;} +pobj.code=obj.code;pobj.chars=obj.chars;if(pobj.chars||pobj.code){dialog.sendMethod("verto.info",{txt:obj,noDialogParams:true});}};$.verto.dialog.prototype.transfer=function(dest,params){var dialog=this;if(dest){dialog.sendMethod("verto.modify",{action:"transfer",destination:dest,params:params});}};$.verto.dialog.prototype.hold=function(params){var dialog=this;dialog.sendMethod("verto.modify",{action:"hold",params:params});};$.verto.dialog.prototype.unhold=function(params){var dialog=this;dialog.sendMethod("verto.modify",{action:"unhold",params:params});};$.verto.dialog.prototype.toggleHold=function(params){var dialog=this;dialog.sendMethod("verto.modify",{action:"toggleHold",params:params});};$.verto.dialog.prototype.message=function(msg){var dialog=this;var err=0;msg.from=dialog.params.login;if(!msg.to){console.error("Missing To");err++;} +if(!msg.body){console.error("Missing Body");err++;} +if(err){return false;} +dialog.sendMethod("verto.info",{msg:msg});return true;};$.verto.dialog.prototype.answer=function(params){var dialog=this;if(!dialog.answered){if(!params){params={};} +params.sdp=dialog.params.sdp;if(params){if(params.useVideo){dialog.useVideo(true);} +dialog.params.callee_id_name=params.callee_id_name;dialog.params.callee_id_number=params.callee_id_number;if(params.useCamera){dialog.useCamera=params.useCamera;} +if(params.useMic){dialog.useMic=params.useMic;} +if(params.useSpeak){dialog.useSpeak=params.useSpeak;}} +dialog.rtc.createAnswer(params);dialog.answered=true;}};$.verto.dialog.prototype.handleAnswer=function(params){var dialog=this;dialog.gotAnswer=true;if(dialog.state.val>=$.verto.enum.state.active.val){return;} +if(dialog.state.val>=$.verto.enum.state.early.val){dialog.setState($.verto.enum.state.active);}else{if(dialog.gotEarly){console.log("Dialog "+dialog.callID+" Got answer while still establishing early media, delaying...");}else{console.log("Dialog "+dialog.callID+" Answering Channel");dialog.rtc.answer(params.sdp,function(){dialog.setState($.verto.enum.state.active);},function(e){console.error(e);dialog.hangup();});console.log("Dialog "+dialog.callID+"ANSWER SDP",params.sdp);}}};$.verto.dialog.prototype.cidString=function(enc){var dialog=this;var party=dialog.params.remote_caller_id_name+(enc?" <":" <")+dialog.params.remote_caller_id_number+(enc?">":">");return party;};$.verto.dialog.prototype.sendMessage=function(msg,params){var dialog=this;if(dialog.callbacks.onMessage){dialog.callbacks.onMessage(dialog.verto,dialog,msg,params);}};$.verto.dialog.prototype.handleInfo=function(params){var dialog=this;dialog.sendMessage($.verto.enum.message.info,params);};$.verto.dialog.prototype.handleDisplay=function(params){var dialog=this;if(params.display_name){dialog.params.remote_caller_id_name=params.display_name;} +if(params.display_number){dialog.params.remote_caller_id_number=params.display_number;} +dialog.sendMessage($.verto.enum.message.display,{});};$.verto.dialog.prototype.handleMedia=function(params){var dialog=this;if(dialog.state.val>=$.verto.enum.state.early.val){return;} +dialog.gotEarly=true;dialog.rtc.answer(params.sdp,function(){console.log("Dialog "+dialog.callID+"Establishing early media");dialog.setState($.verto.enum.state.early);if(dialog.gotAnswer){console.log("Dialog "+dialog.callID+"Answering Channel");dialog.setState($.verto.enum.state.active);}},function(e){console.error(e);dialog.hangup();});console.log("Dialog "+dialog.callID+"EARLY SDP",params.sdp);};$.verto.ENUM=function(s){var i=0,o={};s.split(" ").map(function(x){o[x]={name:x,val:i++};});return Object.freeze(o);};$.verto.enum={};$.verto.enum.states=Object.freeze({new:{requesting:1,recovering:1,ringing:1,destroy:1,answering:1,hangup:1},requesting:{trying:1,hangup:1,active:1},recovering:{answering:1,hangup:1},trying:{active:1,early:1,hangup:1},ringing:{answering:1,hangup:1},answering:{active:1,hangup:1},active:{answering:1,requesting:1,hangup:1,held:1},held:{hangup:1,active:1},early:{hangup:1,active:1},hangup:{destroy:1},destroy:{},purge:{destroy:1}});$.verto.enum.state=$.verto.ENUM("new requesting trying recovering ringing answering early active held hangup destroy purge");$.verto.enum.direction=$.verto.ENUM("inbound outbound");$.verto.enum.message=$.verto.ENUM("display info pvtEvent");$.verto.enum=Object.freeze($.verto.enum);$.verto.saved=[];$.verto.unloadJobs=[];$(window).bind('beforeunload',function(){for(var f in $.verto.unloadJobs){$.verto.unloadJobs[f]();} +if($.verto.haltClosure) +return $.verto.haltClosure();for(var i in $.verto.saved){var verto=$.verto.saved[i];if(verto){verto.purge();verto.logout();}} +return $.verto.warnOnUnload;});$.verto.videoDevices=[];$.verto.audioInDevices=[];$.verto.audioOutDevices=[];var checkDevices=function(runtime){console.info("enumerating devices");var aud_in=[],aud_out=[],vid=[];var has_video=0,has_audio=0;var Xstream;function gotDevices(deviceInfos){for(var i=0;i!==deviceInfos.length;++i){var deviceInfo=deviceInfos[i];var text="";console.log(deviceInfo);console.log(deviceInfo.kind+": "+deviceInfo.label+" id = "+deviceInfo.deviceId);if(deviceInfo.kind==='audioinput'){text=deviceInfo.label||'microphone '+(aud_in.length+1);aud_in.push({id:deviceInfo.deviceId,kind:"audio_in",label:text});}else if(deviceInfo.kind==='audiooutput'){text=deviceInfo.label||'speaker '+(aud_out.length+1);aud_out.push({id:deviceInfo.deviceId,kind:"audio_out",label:text});}else if(deviceInfo.kind==='videoinput'){text=deviceInfo.label||'camera '+(vid.length+1);vid.push({id:deviceInfo.deviceId,kind:"video",label:text});}else{console.log('Some other kind of source/device: ',deviceInfo);}} +$.verto.videoDevices=vid;$.verto.audioInDevices=aud_in;$.verto.audioOutDevices=aud_out;console.info("Audio IN Devices",$.verto.audioInDevices);console.info("Audio Out Devices",$.verto.audioOutDevices);console.info("Video Devices",$.verto.videoDevices);if(Xstream){Xstream.getTracks().forEach(function(track){track.stop();});} +if(runtime){runtime(true);}} +function handleError(error){console.log('device enumeration error: ',error);if(runtime)runtime(false);} +function checkTypes(devs){for(var i=0;i!==devs.length;++i){if(devs[i].kind==='audioinput'){has_audio++;}else if(devs[i].kind==='videoinput'){has_video++;}} +navigator.getUserMedia({audio:(has_audio>0?true:false),video:(has_video>0?true:false)},function(stream){Xstream=stream;navigator.mediaDevices.enumerateDevices().then(gotDevices).catch(handleError);},function(err){console.log("The following error occurred: "+err.name);});} +navigator.mediaDevices.enumerateDevices().then(checkTypes).catch(handleError);};$.verto.refreshDevices=function(runtime){checkDevices(runtime);} +$.verto.init=function(obj,runtime){if(!obj){obj={};} +if(!obj.skipPermCheck&&!obj.skipDeviceCheck){$.FSRTC.checkPerms(function(status){checkDevices(runtime);},true,true);}else if(obj.skipPermCheck&&!obj.skipDeviceCheck){checkDevices(runtime);}else if(!obj.skipPermCheck&&obj.skipDeviceCheck){$.FSRTC.checkPerms(function(status){runtime(status);},true,true);}else{runtime(null);}} +$.verto.genUUID=function(){return generateGUID();}})(jQuery);(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.adapter=f()}})(function(){var define,module,exports;return(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){'use strict';var SDPUtils={};SDPUtils.generateIdentifier=function(){return Math.random().toString(36).substr(2,10);};SDPUtils.localCName=SDPUtils.generateIdentifier();SDPUtils.splitLines=function(blob){return blob.trim().split('\n').map(function(line){return line.trim();});};SDPUtils.splitSections=function(blob){var parts=blob.split('\nm=');return parts.map(function(part,index){return(index>0?'m='+part:part).trim()+'\r\n';});};SDPUtils.matchPrefix=function(blob,prefix){return SDPUtils.splitLines(blob).filter(function(line){return line.indexOf(prefix)===0;});};SDPUtils.parseCandidate=function(line){var parts;if(line.indexOf('a=candidate:')===0){parts=line.substring(12).split(' ');}else{parts=line.substring(10).split(' ');} +var candidate={foundation:parts[0],component:parseInt(parts[1],10),protocol:parts[2].toLowerCase(),priority:parseInt(parts[3],10),ip:parts[4],port:parseInt(parts[5],10),type:parts[7]};for(var i=8;i<parts.length;i+=2){switch(parts[i]){case'raddr':candidate.relatedAddress=parts[i+1];break;case'rport':candidate.relatedPort=parseInt(parts[i+1],10);break;case'tcptype':candidate.tcpType=parts[i+1];break;default:candidate[parts[i]]=parts[i+1];break;}} +return candidate;};SDPUtils.writeCandidate=function(candidate){var sdp=[];sdp.push(candidate.foundation);sdp.push(candidate.component);sdp.push(candidate.protocol.toUpperCase());sdp.push(candidate.priority);sdp.push(candidate.ip);sdp.push(candidate.port);var type=candidate.type;sdp.push('typ');sdp.push(type);if(type!=='host'&&candidate.relatedAddress&&candidate.relatedPort){sdp.push('raddr');sdp.push(candidate.relatedAddress);sdp.push('rport');sdp.push(candidate.relatedPort);} +if(candidate.tcpType&&candidate.protocol.toLowerCase()==='tcp'){sdp.push('tcptype');sdp.push(candidate.tcpType);} +if(candidate.ufrag){sdp.push('ufrag');sdp.push(candidate.ufrag);} +return'candidate:'+sdp.join(' ');};SDPUtils.parseIceOptions=function(line){return line.substr(14).split(' ');} +SDPUtils.parseRtpMap=function(line){var parts=line.substr(9).split(' ');var parsed={payloadType:parseInt(parts.shift(),10)};parts=parts[0].split('/');parsed.name=parts[0];parsed.clockRate=parseInt(parts[1],10);parsed.numChannels=parts.length===3?parseInt(parts[2],10):1;return parsed;};SDPUtils.writeRtpMap=function(codec){var pt=codec.payloadType;if(codec.preferredPayloadType!==undefined){pt=codec.preferredPayloadType;} +return'a=rtpmap:'+pt+' '+codec.name+'/'+codec.clockRate+ +(codec.numChannels!==1?'/'+codec.numChannels:'')+'\r\n';};SDPUtils.parseExtmap=function(line){var parts=line.substr(9).split(' ');return{id:parseInt(parts[0],10),direction:parts[0].indexOf('/')>0?parts[0].split('/')[1]:'sendrecv',uri:parts[1]};};SDPUtils.writeExtmap=function(headerExtension){return'a=extmap:'+(headerExtension.id||headerExtension.preferredId)+ +(headerExtension.direction&&headerExtension.direction!=='sendrecv'?'/'+headerExtension.direction:'')+' '+headerExtension.uri+'\r\n';};SDPUtils.parseFmtp=function(line){var parsed={};var kv;var parts=line.substr(line.indexOf(' ')+1).split(';');for(var j=0;j<parts.length;j++){kv=parts[j].trim().split('=');parsed[kv[0].trim()]=kv[1];} +return parsed;};SDPUtils.writeFmtp=function(codec){var line='';var pt=codec.payloadType;if(codec.preferredPayloadType!==undefined){pt=codec.preferredPayloadType;} +if(codec.parameters&&Object.keys(codec.parameters).length){var params=[];Object.keys(codec.parameters).forEach(function(param){params.push(param+'='+codec.parameters[param]);});line+='a=fmtp:'+pt+' '+params.join(';')+'\r\n';} +return line;};SDPUtils.parseRtcpFb=function(line){var parts=line.substr(line.indexOf(' ')+1).split(' ');return{type:parts.shift(),parameter:parts.join(' ')};};SDPUtils.writeRtcpFb=function(codec){var lines='';var pt=codec.payloadType;if(codec.preferredPayloadType!==undefined){pt=codec.preferredPayloadType;} +if(codec.rtcpFeedback&&codec.rtcpFeedback.length){codec.rtcpFeedback.forEach(function(fb){lines+='a=rtcp-fb:'+pt+' '+fb.type+ +(fb.parameter&&fb.parameter.length?' '+fb.parameter:'')+'\r\n';});} +return lines;};SDPUtils.parseSsrcMedia=function(line){var sp=line.indexOf(' ');var parts={ssrc:parseInt(line.substr(7,sp-7),10)};var colon=line.indexOf(':',sp);if(colon>-1){parts.attribute=line.substr(sp+1,colon-sp-1);parts.value=line.substr(colon+1);}else{parts.attribute=line.substr(sp+1);} +return parts;};SDPUtils.getMid=function(mediaSection){var mid=SDPUtils.matchPrefix(mediaSection,'a=mid:')[0];if(mid){return mid.substr(6);}} +SDPUtils.parseFingerprint=function(line){var parts=line.substr(14).split(' ');return{algorithm:parts[0].toLowerCase(),value:parts[1]};};SDPUtils.getDtlsParameters=function(mediaSection,sessionpart){var lines=SDPUtils.matchPrefix(mediaSection+sessionpart,'a=fingerprint:');return{role:'auto',fingerprints:lines.map(SDPUtils.parseFingerprint)};};SDPUtils.writeDtlsParameters=function(params,setupType){var sdp='a=setup:'+setupType+'\r\n';params.fingerprints.forEach(function(fp){sdp+='a=fingerprint:'+fp.algorithm+' '+fp.value+'\r\n';});return sdp;};SDPUtils.getIceParameters=function(mediaSection,sessionpart){var lines=SDPUtils.splitLines(mediaSection);lines=lines.concat(SDPUtils.splitLines(sessionpart));var iceParameters={usernameFragment:lines.filter(function(line){return line.indexOf('a=ice-ufrag:')===0;})[0].substr(12),password:lines.filter(function(line){return line.indexOf('a=ice-pwd:')===0;})[0].substr(10)};return iceParameters;};SDPUtils.writeIceParameters=function(params){return'a=ice-ufrag:'+params.usernameFragment+'\r\n'+'a=ice-pwd:'+params.password+'\r\n';};SDPUtils.parseRtpParameters=function(mediaSection){var description={codecs:[],headerExtensions:[],fecMechanisms:[],rtcp:[]};var lines=SDPUtils.splitLines(mediaSection);var mline=lines[0].split(' ');for(var i=3;i<mline.length;i++){var pt=mline[i];var rtpmapline=SDPUtils.matchPrefix(mediaSection,'a=rtpmap:'+pt+' ')[0];if(rtpmapline){var codec=SDPUtils.parseRtpMap(rtpmapline);var fmtps=SDPUtils.matchPrefix(mediaSection,'a=fmtp:'+pt+' ');codec.parameters=fmtps.length?SDPUtils.parseFmtp(fmtps[0]):{};codec.rtcpFeedback=SDPUtils.matchPrefix(mediaSection,'a=rtcp-fb:'+pt+' ').map(SDPUtils.parseRtcpFb);description.codecs.push(codec);switch(codec.name.toUpperCase()){case'RED':case'ULPFEC':description.fecMechanisms.push(codec.name.toUpperCase());break;default:break;}}} +SDPUtils.matchPrefix(mediaSection,'a=extmap:').forEach(function(line){description.headerExtensions.push(SDPUtils.parseExtmap(line));});return description;};SDPUtils.writeRtpDescription=function(kind,caps){var sdp='';sdp+='m='+kind+' ';sdp+=caps.codecs.length>0?'9':'0';sdp+=' UDP/TLS/RTP/SAVPF ';sdp+=caps.codecs.map(function(codec){if(codec.preferredPayloadType!==undefined){return codec.preferredPayloadType;} +return codec.payloadType;}).join(' ')+'\r\n';sdp+='c=IN IP4 0.0.0.0\r\n';sdp+='a=rtcp:9 IN IP4 0.0.0.0\r\n';caps.codecs.forEach(function(codec){sdp+=SDPUtils.writeRtpMap(codec);sdp+=SDPUtils.writeFmtp(codec);sdp+=SDPUtils.writeRtcpFb(codec);});var maxptime=0;caps.codecs.forEach(function(codec){if(codec.maxptime>maxptime){maxptime=codec.maxptime;}});if(maxptime>0){sdp+='a=maxptime:'+maxptime+'\r\n';} +sdp+='a=rtcp-mux\r\n';caps.headerExtensions.forEach(function(extension){sdp+=SDPUtils.writeExtmap(extension);});return sdp;};SDPUtils.parseRtpEncodingParameters=function(mediaSection){var encodingParameters=[];var description=SDPUtils.parseRtpParameters(mediaSection);var hasRed=description.fecMechanisms.indexOf('RED')!==-1;var hasUlpfec=description.fecMechanisms.indexOf('ULPFEC')!==-1;var ssrcs=SDPUtils.matchPrefix(mediaSection,'a=ssrc:').map(function(line){return SDPUtils.parseSsrcMedia(line);}).filter(function(parts){return parts.attribute==='cname';});var primarySsrc=ssrcs.length>0&&ssrcs[0].ssrc;var secondarySsrc;var flows=SDPUtils.matchPrefix(mediaSection,'a=ssrc-group:FID').map(function(line){var parts=line.split(' ');parts.shift();return parts.map(function(part){return parseInt(part,10);});});if(flows.length>0&&flows[0].length>1&&flows[0][0]===primarySsrc){secondarySsrc=flows[0][1];} +description.codecs.forEach(function(codec){if(codec.name.toUpperCase()==='RTX'&&codec.parameters.apt){var encParam={ssrc:primarySsrc,codecPayloadType:parseInt(codec.parameters.apt,10),rtx:{ssrc:secondarySsrc}};encodingParameters.push(encParam);if(hasRed){encParam=JSON.parse(JSON.stringify(encParam));encParam.fec={ssrc:secondarySsrc,mechanism:hasUlpfec?'red+ulpfec':'red'};encodingParameters.push(encParam);}}});if(encodingParameters.length===0&&primarySsrc){encodingParameters.push({ssrc:primarySsrc});} +var bandwidth=SDPUtils.matchPrefix(mediaSection,'b=');if(bandwidth.length){if(bandwidth[0].indexOf('b=TIAS:')===0){bandwidth=parseInt(bandwidth[0].substr(7),10);}else if(bandwidth[0].indexOf('b=AS:')===0){bandwidth=parseInt(bandwidth[0].substr(5),10)*1000*0.95 +-(50*40*8);}else{bandwidth=undefined;} +encodingParameters.forEach(function(params){params.maxBitrate=bandwidth;});} +return encodingParameters;};SDPUtils.parseRtcpParameters=function(mediaSection){var rtcpParameters={};var cname;var remoteSsrc=SDPUtils.matchPrefix(mediaSection,'a=ssrc:').map(function(line){return SDPUtils.parseSsrcMedia(line);}).filter(function(obj){return obj.attribute==='cname';})[0];if(remoteSsrc){rtcpParameters.cname=remoteSsrc.value;rtcpParameters.ssrc=remoteSsrc.ssrc;} +var rsize=SDPUtils.matchPrefix(mediaSection,'a=rtcp-rsize');rtcpParameters.reducedSize=rsize.length>0;rtcpParameters.compound=rsize.length===0;var mux=SDPUtils.matchPrefix(mediaSection,'a=rtcp-mux');rtcpParameters.mux=mux.length>0;return rtcpParameters;};SDPUtils.parseMsid=function(mediaSection){var parts;var spec=SDPUtils.matchPrefix(mediaSection,'a=msid:');if(spec.length===1){parts=spec[0].substr(7).split(' ');return{stream:parts[0],track:parts[1]};} +var planB=SDPUtils.matchPrefix(mediaSection,'a=ssrc:').map(function(line){return SDPUtils.parseSsrcMedia(line);}).filter(function(parts){return parts.attribute==='msid';});if(planB.length>0){parts=planB[0].value.split(' ');return{stream:parts[0],track:parts[1]};}};SDPUtils.generateSessionId=function(){return Math.random().toString().substr(2,21);};SDPUtils.writeSessionBoilerplate=function(sessId){var sessionId;if(sessId){sessionId=sessId;}else{sessionId=SDPUtils.generateSessionId();} +return'v=0\r\n'+'o=thisisadapterortc '+sessionId+' 2 IN IP4 127.0.0.1\r\n'+'s=-\r\n'+'t=0 0\r\n';};SDPUtils.writeMediaSection=function(transceiver,caps,type,stream){var sdp=SDPUtils.writeRtpDescription(transceiver.kind,caps);sdp+=SDPUtils.writeIceParameters(transceiver.iceGatherer.getLocalParameters());sdp+=SDPUtils.writeDtlsParameters(transceiver.dtlsTransport.getLocalParameters(),type==='offer'?'actpass':'active');sdp+='a=mid:'+transceiver.mid+'\r\n';if(transceiver.direction){sdp+='a='+transceiver.direction+'\r\n';}else if(transceiver.rtpSender&&transceiver.rtpReceiver){sdp+='a=sendrecv\r\n';}else if(transceiver.rtpSender){sdp+='a=sendonly\r\n';}else if(transceiver.rtpReceiver){sdp+='a=recvonly\r\n';}else{sdp+='a=inactive\r\n';} +if(transceiver.rtpSender){var msid='msid:'+stream.id+' '+ +transceiver.rtpSender.track.id+'\r\n';sdp+='a='+msid;sdp+='a=ssrc:'+transceiver.sendEncodingParameters[0].ssrc+' '+msid;if(transceiver.sendEncodingParameters[0].rtx){sdp+='a=ssrc:'+transceiver.sendEncodingParameters[0].rtx.ssrc+' '+msid;sdp+='a=ssrc-group:FID '+ +transceiver.sendEncodingParameters[0].ssrc+' '+ +transceiver.sendEncodingParameters[0].rtx.ssrc+'\r\n';}} +sdp+='a=ssrc:'+transceiver.sendEncodingParameters[0].ssrc+' cname:'+SDPUtils.localCName+'\r\n';if(transceiver.rtpSender&&transceiver.sendEncodingParameters[0].rtx){sdp+='a=ssrc:'+transceiver.sendEncodingParameters[0].rtx.ssrc+' cname:'+SDPUtils.localCName+'\r\n';} +return sdp;};SDPUtils.getDirection=function(mediaSection,sessionpart){var lines=SDPUtils.splitLines(mediaSection);for(var i=0;i<lines.length;i++){switch(lines[i]){case'a=sendrecv':case'a=sendonly':case'a=recvonly':case'a=inactive':return lines[i].substr(2);default:}} +if(sessionpart){return SDPUtils.getDirection(sessionpart);} +return'sendrecv';};SDPUtils.getKind=function(mediaSection){var lines=SDPUtils.splitLines(mediaSection);var mline=lines[0].split(' ');return mline[0].substr(2);};SDPUtils.isRejected=function(mediaSection){return mediaSection.split(' ',2)[1]==='0';};module.exports=SDPUtils;},{}],2:[function(require,module,exports){(function(global){'use strict';var adapterFactory=require('./adapter_factory.js');module.exports=adapterFactory({window:global.window});}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./adapter_factory.js":3}],3:[function(require,module,exports){'use strict';module.exports=function(dependencies){var window=dependencies&&dependencies.window;var utils=require('./utils');var logging=utils.log;var browserDetails=utils.detectBrowser(window);var adapter={browserDetails:browserDetails,extractVersion:utils.extractVersion,disableLog:utils.disableLog,disableWarnings:utils.disableWarnings};var chromeShim=require('./chrome/chrome_shim')||null;var edgeShim=require('./edge/edge_shim')||null;var firefoxShim=require('./firefox/firefox_shim')||null;var safariShim=require('./safari/safari_shim')||null;switch(browserDetails.browser){case'chrome':if(!chromeShim||!chromeShim.shimPeerConnection){logging('Chrome shim is not included in this adapter release.');return adapter;} +logging('adapter.js shimming chrome.');adapter.browserShim=chromeShim;chromeShim.shimGetUserMedia(window);chromeShim.shimMediaStream(window);utils.shimCreateObjectURL(window);chromeShim.shimSourceObject(window);chromeShim.shimPeerConnection(window);chromeShim.shimOnTrack(window);chromeShim.shimGetSendersWithDtmf(window);break;case'firefox':if(!firefoxShim||!firefoxShim.shimPeerConnection){logging('Firefox shim is not included in this adapter release.');return adapter;} +logging('adapter.js shimming firefox.');adapter.browserShim=firefoxShim;firefoxShim.shimGetUserMedia(window);utils.shimCreateObjectURL(window);firefoxShim.shimSourceObject(window);firefoxShim.shimPeerConnection(window);firefoxShim.shimOnTrack(window);break;case'edge':if(!edgeShim||!edgeShim.shimPeerConnection){logging('MS edge shim is not included in this adapter release.');return adapter;} +logging('adapter.js shimming edge.');adapter.browserShim=edgeShim;edgeShim.shimGetUserMedia(window);utils.shimCreateObjectURL(window);edgeShim.shimPeerConnection(window);edgeShim.shimReplaceTrack(window);break;case'safari':if(!safariShim){logging('Safari shim is not included in this adapter release.');return adapter;} +logging('adapter.js shimming safari.');adapter.browserShim=safariShim;utils.shimCreateObjectURL(window);safariShim.shimRTCIceServerUrls(window);safariShim.shimCallbacksAPI(window);safariShim.shimLocalStreamsAPI(window);safariShim.shimRemoteStreamsAPI(window);safariShim.shimGetUserMedia(window);break;default:logging('Unsupported browser!');break;} +return adapter;};},{"./chrome/chrome_shim":4,"./edge/edge_shim":6,"./firefox/firefox_shim":9,"./safari/safari_shim":11,"./utils":12}],4:[function(require,module,exports){'use strict';var utils=require('../utils.js');var logging=utils.log;var chromeShim={shimMediaStream:function(window){window.MediaStream=window.MediaStream||window.webkitMediaStream;},shimOnTrack:function(window){if(typeof window==='object'&&window.RTCPeerConnection&&!('ontrack'in +window.RTCPeerConnection.prototype)){Object.defineProperty(window.RTCPeerConnection.prototype,'ontrack',{get:function(){return this._ontrack;},set:function(f){var self=this;if(this._ontrack){this.removeEventListener('track',this._ontrack);this.removeEventListener('addstream',this._ontrackpoly);} +this.addEventListener('track',this._ontrack=f);this.addEventListener('addstream',this._ontrackpoly=function(e){e.stream.addEventListener('addtrack',function(te){var receiver;if(window.RTCPeerConnection.prototype.getReceivers){receiver=self.getReceivers().find(function(r){return r.track.id===te.track.id;});}else{receiver={track:te.track};} +var event=new Event('track');event.track=te.track;event.receiver=receiver;event.streams=[e.stream];self.dispatchEvent(event);});e.stream.getTracks().forEach(function(track){var receiver;if(window.RTCPeerConnection.prototype.getReceivers){receiver=self.getReceivers().find(function(r){return r.track.id===track.id;});}else{receiver={track:track};} +var event=new Event('track');event.track=track;event.receiver=receiver;event.streams=[e.stream];this.dispatchEvent(event);}.bind(this));}.bind(this));}});}},shimGetSendersWithDtmf:function(window){if(typeof window==='object'&&window.RTCPeerConnection&&!('getSenders'in window.RTCPeerConnection.prototype)&&'createDTMFSender'in window.RTCPeerConnection.prototype){window.RTCPeerConnection.prototype.getSenders=function(){return this._senders||[];};var origAddStream=window.RTCPeerConnection.prototype.addStream;var origRemoveStream=window.RTCPeerConnection.prototype.removeStream;if(!window.RTCPeerConnection.prototype.addTrack){window.RTCPeerConnection.prototype.addTrack=function(track,stream){var pc=this;if(pc.signalingState==='closed'){throw new DOMException('The RTCPeerConnection\'s signalingState is \'closed\'.','InvalidStateError');} +var streams=[].slice.call(arguments,1);if(streams.length!==1||!streams[0].getTracks().find(function(t){return t===track;})){throw new DOMException('The adapter.js addTrack polyfill only supports a single '+' stream which is associated with the specified track.','NotSupportedError');} +pc._senders=pc._senders||[];var alreadyExists=pc._senders.find(function(t){return t.track===track;});if(alreadyExists){throw new DOMException('Track already exists.','InvalidAccessError');} +pc._streams=pc._streams||{};var oldStream=pc._streams[stream.id];if(oldStream){oldStream.addTrack(track);pc.removeStream(oldStream);pc.addStream(oldStream);}else{var newStream=new window.MediaStream([track]);pc._streams[stream.id]=newStream;pc.addStream(newStream);} +var sender={track:track,get dtmf(){if(this._dtmf===undefined){if(track.kind==='audio'){this._dtmf=pc.createDTMFSender(track);}else{this._dtmf=null;}} +return this._dtmf;}};pc._senders.push(sender);return sender;};} +window.RTCPeerConnection.prototype.addStream=function(stream){var pc=this;pc._senders=pc._senders||[];origAddStream.apply(pc,[stream]);stream.getTracks().forEach(function(track){pc._senders.push({track:track,get dtmf(){if(this._dtmf===undefined){if(track.kind==='audio'){this._dtmf=pc.createDTMFSender(track);}else{this._dtmf=null;}} +return this._dtmf;}});});};window.RTCPeerConnection.prototype.removeStream=function(stream){var pc=this;pc._senders=pc._senders||[];origRemoveStream.apply(pc,[stream]);stream.getTracks().forEach(function(track){var sender=pc._senders.find(function(s){return s.track===track;});if(sender){pc._senders.splice(pc._senders.indexOf(sender),1);}});};}else if(typeof window==='object'&&window.RTCPeerConnection&&'getSenders'in window.RTCPeerConnection.prototype&&'createDTMFSender'in window.RTCPeerConnection.prototype&&window.RTCRtpSender&&!('dtmf'in window.RTCRtpSender.prototype)){var origGetSenders=window.RTCPeerConnection.prototype.getSenders;window.RTCPeerConnection.prototype.getSenders=function(){var pc=this;var senders=origGetSenders.apply(pc,[]);senders.forEach(function(sender){sender._pc=pc;});return senders;};Object.defineProperty(window.RTCRtpSender.prototype,'dtmf',{get:function(){if(this._dtmf===undefined){if(this.track.kind==='audio'){this._dtmf=this._pc.createDTMFSender(this.track);}else{this._dtmf=null;}} +return this._dtmf;},});}},shimSourceObject:function(window){var URL=window&&window.URL;if(typeof window==='object'){if(window.HTMLMediaElement&&!('srcObject'in window.HTMLMediaElement.prototype)){Object.defineProperty(window.HTMLMediaElement.prototype,'srcObject',{get:function(){return this._srcObject;},set:function(stream){var self=this;this._srcObject=stream;if(this.src){URL.revokeObjectURL(this.src);} +if(!stream){this.src='';return undefined;} +this.src=URL.createObjectURL(stream);stream.addEventListener('addtrack',function(){if(self.src){URL.revokeObjectURL(self.src);} +self.src=URL.createObjectURL(stream);});stream.addEventListener('removetrack',function(){if(self.src){URL.revokeObjectURL(self.src);} +self.src=URL.createObjectURL(stream);});}});}}},shimPeerConnection:function(window){var browserDetails=utils.detectBrowser(window);if(!window.RTCPeerConnection){window.RTCPeerConnection=function(pcConfig,pcConstraints){logging('PeerConnection');if(pcConfig&&pcConfig.iceTransportPolicy){pcConfig.iceTransports=pcConfig.iceTransportPolicy;} +return new window.webkitRTCPeerConnection(pcConfig,pcConstraints);};window.RTCPeerConnection.prototype=window.webkitRTCPeerConnection.prototype;if(window.webkitRTCPeerConnection.generateCertificate){Object.defineProperty(window.RTCPeerConnection,'generateCertificate',{get:function(){return window.webkitRTCPeerConnection.generateCertificate;}});}}else{var OrigPeerConnection=window.RTCPeerConnection;window.RTCPeerConnection=function(pcConfig,pcConstraints){if(pcConfig&&pcConfig.iceServers){var newIceServers=[];for(var i=0;i<pcConfig.iceServers.length;i++){var server=pcConfig.iceServers[i];if(!server.hasOwnProperty('urls')&&server.hasOwnProperty('url')){console.warn('RTCIceServer.url is deprecated! Use urls instead.');server=JSON.parse(JSON.stringify(server));server.urls=server.url;newIceServers.push(server);}else{newIceServers.push(pcConfig.iceServers[i]);}} +pcConfig.iceServers=newIceServers;} +return new OrigPeerConnection(pcConfig,pcConstraints);};window.RTCPeerConnection.prototype=OrigPeerConnection.prototype;Object.defineProperty(window.RTCPeerConnection,'generateCertificate',{get:function(){return OrigPeerConnection.generateCertificate;}});} +var origGetStats=window.RTCPeerConnection.prototype.getStats;window.RTCPeerConnection.prototype.getStats=function(selector,successCallback,errorCallback){var self=this;var args=arguments;if(arguments.length>0&&typeof selector==='function'){return origGetStats.apply(this,arguments);} +if(origGetStats.length===0&&(arguments.length===0||typeof arguments[0]!=='function')){return origGetStats.apply(this,[]);} +var fixChromeStats_=function(response){var standardReport={};var reports=response.result();reports.forEach(function(report){var standardStats={id:report.id,timestamp:report.timestamp,type:{localcandidate:'local-candidate',remotecandidate:'remote-candidate'}[report.type]||report.type};report.names().forEach(function(name){standardStats[name]=report.stat(name);});standardReport[standardStats.id]=standardStats;});return standardReport;};var makeMapStats=function(stats){return new Map(Object.keys(stats).map(function(key){return[key,stats[key]];}));};if(arguments.length>=2){var successCallbackWrapper_=function(response){args[1](makeMapStats(fixChromeStats_(response)));};return origGetStats.apply(this,[successCallbackWrapper_,arguments[0]]);} +return new Promise(function(resolve,reject){origGetStats.apply(self,[function(response){resolve(makeMapStats(fixChromeStats_(response)));},reject]);}).then(successCallback,errorCallback);};if(browserDetails.version<51){['setLocalDescription','setRemoteDescription','addIceCandidate'].forEach(function(method){var nativeMethod=window.RTCPeerConnection.prototype[method];window.RTCPeerConnection.prototype[method]=function(){var args=arguments;var self=this;var promise=new Promise(function(resolve,reject){nativeMethod.apply(self,[args[0],resolve,reject]);});if(args.length<2){return promise;} +return promise.then(function(){args[1].apply(null,[]);},function(err){if(args.length>=3){args[2].apply(null,[err]);}});};});} +if(browserDetails.version<52){['createOffer','createAnswer'].forEach(function(method){var nativeMethod=window.RTCPeerConnection.prototype[method];window.RTCPeerConnection.prototype[method]=function(){var self=this;if(arguments.length<1||(arguments.length===1&&typeof arguments[0]==='object')){var opts=arguments.length===1?arguments[0]:undefined;return new Promise(function(resolve,reject){nativeMethod.apply(self,[resolve,reject,opts]);});} +return nativeMethod.apply(this,arguments);};});} +['setLocalDescription','setRemoteDescription','addIceCandidate'].forEach(function(method){var nativeMethod=window.RTCPeerConnection.prototype[method];window.RTCPeerConnection.prototype[method]=function(){arguments[0]=new((method==='addIceCandidate')?window.RTCIceCandidate:window.RTCSessionDescription)(arguments[0]);return nativeMethod.apply(this,arguments);};});var nativeAddIceCandidate=window.RTCPeerConnection.prototype.addIceCandidate;window.RTCPeerConnection.prototype.addIceCandidate=function(){if(!arguments[0]){if(arguments[1]){arguments[1].apply(null);} +return Promise.resolve();} +return nativeAddIceCandidate.apply(this,arguments);};}};module.exports={shimMediaStream:chromeShim.shimMediaStream,shimOnTrack:chromeShim.shimOnTrack,shimGetSendersWithDtmf:chromeShim.shimGetSendersWithDtmf,shimSourceObject:chromeShim.shimSourceObject,shimPeerConnection:chromeShim.shimPeerConnection,shimGetUserMedia:require('./getusermedia')};},{"../utils.js":12,"./getusermedia":5}],5:[function(require,module,exports){'use strict';var utils=require('../utils.js');var logging=utils.log;module.exports=function(window){var browserDetails=utils.detectBrowser(window);var navigator=window&&window.navigator;var constraintsToChrome_=function(c){if(typeof c!=='object'||c.mandatory||c.optional){return c;} +var cc={};Object.keys(c).forEach(function(key){if(key==='require'||key==='advanced'||key==='mediaSource'){return;} +var r=(typeof c[key]==='object')?c[key]:{ideal:c[key]};if(r.exact!==undefined&&typeof r.exact==='number'){r.min=r.max=r.exact;} +var oldname_=function(prefix,name){if(prefix){return prefix+name.charAt(0).toUpperCase()+name.slice(1);} +return(name==='deviceId')?'sourceId':name;};if(r.ideal!==undefined){cc.optional=cc.optional||[];var oc={};if(typeof r.ideal==='number'){oc[oldname_('min',key)]=r.ideal;cc.optional.push(oc);oc={};oc[oldname_('max',key)]=r.ideal;cc.optional.push(oc);}else{oc[oldname_('',key)]=r.ideal;cc.optional.push(oc);}} +if(r.exact!==undefined&&typeof r.exact!=='number'){cc.mandatory=cc.mandatory||{};cc.mandatory[oldname_('',key)]=r.exact;}else{['min','max'].forEach(function(mix){if(r[mix]!==undefined){cc.mandatory=cc.mandatory||{};cc.mandatory[oldname_(mix,key)]=r[mix];}});}});if(c.advanced){cc.optional=(cc.optional||[]).concat(c.advanced);} +return cc;};var shimConstraints_=function(constraints,func){constraints=JSON.parse(JSON.stringify(constraints));if(constraints&&typeof constraints.audio==='object'){var remap=function(obj,a,b){if(a in obj&&!(b in obj)){obj[b]=obj[a];delete obj[a];}};constraints=JSON.parse(JSON.stringify(constraints));remap(constraints.audio,'autoGainControl','googAutoGainControl');remap(constraints.audio,'noiseSuppression','googNoiseSuppression');constraints.audio=constraintsToChrome_(constraints.audio);} +if(constraints&&typeof constraints.video==='object'){var face=constraints.video.facingMode;face=face&&((typeof face==='object')?face:{ideal:face});var getSupportedFacingModeLies=browserDetails.version<61;if((face&&(face.exact==='user'||face.exact==='environment'||face.ideal==='user'||face.ideal==='environment'))&&!(navigator.mediaDevices.getSupportedConstraints&&navigator.mediaDevices.getSupportedConstraints().facingMode&&!getSupportedFacingModeLies)){delete constraints.video.facingMode;var matches;if(face.exact==='environment'||face.ideal==='environment'){matches=['back','rear'];}else if(face.exact==='user'||face.ideal==='user'){matches=['front'];} +if(matches){return navigator.mediaDevices.enumerateDevices().then(function(devices){devices=devices.filter(function(d){return d.kind==='videoinput';});var dev=devices.find(function(d){return matches.some(function(match){return d.label.toLowerCase().indexOf(match)!==-1;});});if(!dev&&devices.length&&matches.indexOf('back')!==-1){dev=devices[devices.length-1];} +if(dev){constraints.video.deviceId=face.exact?{exact:dev.deviceId}:{ideal:dev.deviceId};} +constraints.video=constraintsToChrome_(constraints.video);logging('chrome: '+JSON.stringify(constraints));return func(constraints);});}} +constraints.video=constraintsToChrome_(constraints.video);} +logging('chrome: '+JSON.stringify(constraints));return func(constraints);};var shimError_=function(e){return{name:{PermissionDeniedError:'NotAllowedError',InvalidStateError:'NotReadableError',DevicesNotFoundError:'NotFoundError',ConstraintNotSatisfiedError:'OverconstrainedError',TrackStartError:'NotReadableError',MediaDeviceFailedDueToShutdown:'NotReadableError',MediaDeviceKillSwitchOn:'NotReadableError'}[e.name]||e.name,message:e.message,constraint:e.constraintName,toString:function(){return this.name+(this.message&&': ')+this.message;}};};var getUserMedia_=function(constraints,onSuccess,onError){shimConstraints_(constraints,function(c){navigator.webkitGetUserMedia(c,onSuccess,function(e){onError(shimError_(e));});});};navigator.getUserMedia=getUserMedia_;var getUserMediaPromise_=function(constraints){return new Promise(function(resolve,reject){navigator.getUserMedia(constraints,resolve,reject);});};if(!navigator.mediaDevices){navigator.mediaDevices={getUserMedia:getUserMediaPromise_,enumerateDevices:function(){return new Promise(function(resolve){var kinds={audio:'audioinput',video:'videoinput'};return window.MediaStreamTrack.getSources(function(devices){resolve(devices.map(function(device){return{label:device.label,kind:kinds[device.kind],deviceId:device.id,groupId:''};}));});});},getSupportedConstraints:function(){return{deviceId:true,echoCancellation:true,facingMode:true,frameRate:true,height:true,width:true};}};} +if(!navigator.mediaDevices.getUserMedia){navigator.mediaDevices.getUserMedia=function(constraints){return getUserMediaPromise_(constraints);};}else{var origGetUserMedia=navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices);navigator.mediaDevices.getUserMedia=function(cs){return shimConstraints_(cs,function(c){return origGetUserMedia(c).then(function(stream){if(c.audio&&!stream.getAudioTracks().length||c.video&&!stream.getVideoTracks().length){stream.getTracks().forEach(function(track){track.stop();});throw new DOMException('','NotFoundError');} +return stream;},function(e){return Promise.reject(shimError_(e));});});};} +if(typeof navigator.mediaDevices.addEventListener==='undefined'){navigator.mediaDevices.addEventListener=function(){logging('Dummy mediaDevices.addEventListener called.');};} +if(typeof navigator.mediaDevices.removeEventListener==='undefined'){navigator.mediaDevices.removeEventListener=function(){logging('Dummy mediaDevices.removeEventListener called.');};}};},{"../utils.js":12}],6:[function(require,module,exports){'use strict';var utils=require('../utils');var shimRTCPeerConnection=require('./rtcpeerconnection_shim');module.exports={shimGetUserMedia:require('./getusermedia'),shimPeerConnection:function(window){var browserDetails=utils.detectBrowser(window);if(window.RTCIceGatherer){if(!window.RTCIceCandidate){window.RTCIceCandidate=function(args){return args;};} +if(!window.RTCSessionDescription){window.RTCSessionDescription=function(args){return args;};} +if(browserDetails.version<15025){var origMSTEnabled=Object.getOwnPropertyDescriptor(window.MediaStreamTrack.prototype,'enabled');Object.defineProperty(window.MediaStreamTrack.prototype,'enabled',{set:function(value){origMSTEnabled.set.call(this,value);var ev=new Event('enabled');ev.enabled=value;this.dispatchEvent(ev);}});}} +window.RTCPeerConnection=shimRTCPeerConnection(window,browserDetails.version);},shimReplaceTrack:function(window){if(window.RTCRtpSender&&!('replaceTrack'in window.RTCRtpSender.prototype)){window.RTCRtpSender.prototype.replaceTrack=window.RTCRtpSender.prototype.setTrack;}}};},{"../utils":12,"./getusermedia":7,"./rtcpeerconnection_shim":8}],7:[function(require,module,exports){'use strict';module.exports=function(window){var navigator=window&&window.navigator;var shimError_=function(e){return{name:{PermissionDeniedError:'NotAllowedError'}[e.name]||e.name,message:e.message,constraint:e.constraint,toString:function(){return this.name;}};};var origGetUserMedia=navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices);navigator.mediaDevices.getUserMedia=function(c){return origGetUserMedia(c).catch(function(e){return Promise.reject(shimError_(e));});};};},{}],8:[function(require,module,exports){'use strict';var SDPUtils=require('sdp');function sortTracks(tracks){var audioTracks=tracks.filter(function(track){return track.kind==='audio';});var videoTracks=tracks.filter(function(track){return track.kind==='video';});tracks=[];while(audioTracks.length||videoTracks.length){if(audioTracks.length){tracks.push(audioTracks.shift());} +if(videoTracks.length){tracks.push(videoTracks.shift());}} +return tracks;} +function filterIceServers(iceServers,edgeVersion){var hasTurn=false;iceServers=JSON.parse(JSON.stringify(iceServers));return iceServers.filter(function(server){if(server&&(server.urls||server.url)){var urls=server.urls||server.url;if(server.url&&!server.urls){console.warn('RTCIceServer.url is deprecated! Use urls instead.');} +var isString=typeof urls==='string';if(isString){urls=[urls];} +urls=urls.filter(function(url){var validTurn=url.indexOf('turn:')===0&&url.indexOf('transport=udp')!==-1&&url.indexOf('turn:[')===-1&&!hasTurn;if(validTurn){hasTurn=true;return true;} +return url.indexOf('stun:')===0&&edgeVersion>=14393;});delete server.url;server.urls=isString?urls[0]:urls;return!!urls.length;} +return false;});} +function getCommonCapabilities(localCapabilities,remoteCapabilities){var commonCapabilities={codecs:[],headerExtensions:[],fecMechanisms:[]};var findCodecByPayloadType=function(pt,codecs){pt=parseInt(pt,10);for(var i=0;i<codecs.length;i++){if(codecs[i].payloadType===pt||codecs[i].preferredPayloadType===pt){return codecs[i];}}};var rtxCapabilityMatches=function(lRtx,rRtx,lCodecs,rCodecs){var lCodec=findCodecByPayloadType(lRtx.parameters.apt,lCodecs);var rCodec=findCodecByPayloadType(rRtx.parameters.apt,rCodecs);return lCodec&&rCodec&&lCodec.name.toLowerCase()===rCodec.name.toLowerCase();};localCapabilities.codecs.forEach(function(lCodec){for(var i=0;i<remoteCapabilities.codecs.length;i++){var rCodec=remoteCapabilities.codecs[i];if(lCodec.name.toLowerCase()===rCodec.name.toLowerCase()&&lCodec.clockRate===rCodec.clockRate){if(lCodec.name.toLowerCase()==='rtx'&&lCodec.parameters&&rCodec.parameters.apt){if(!rtxCapabilityMatches(lCodec,rCodec,localCapabilities.codecs,remoteCapabilities.codecs)){continue;}} +rCodec=JSON.parse(JSON.stringify(rCodec));rCodec.numChannels=Math.min(lCodec.numChannels,rCodec.numChannels);commonCapabilities.codecs.push(rCodec);rCodec.rtcpFeedback=rCodec.rtcpFeedback.filter(function(fb){for(var j=0;j<lCodec.rtcpFeedback.length;j++){if(lCodec.rtcpFeedback[j].type===fb.type&&lCodec.rtcpFeedback[j].parameter===fb.parameter){return true;}} +return false;});break;}}});localCapabilities.headerExtensions.forEach(function(lHeaderExtension){for(var i=0;i<remoteCapabilities.headerExtensions.length;i++){var rHeaderExtension=remoteCapabilities.headerExtensions[i];if(lHeaderExtension.uri===rHeaderExtension.uri){commonCapabilities.headerExtensions.push(rHeaderExtension);break;}}});return commonCapabilities;} +function isActionAllowedInSignalingState(action,type,signalingState){return{offer:{setLocalDescription:['stable','have-local-offer'],setRemoteDescription:['stable','have-remote-offer']},answer:{setLocalDescription:['have-remote-offer','have-local-pranswer'],setRemoteDescription:['have-local-offer','have-remote-pranswer']}}[type][action].indexOf(signalingState)!==-1;} +module.exports=function(window,edgeVersion){var RTCPeerConnection=function(config){var self=this;var _eventTarget=document.createDocumentFragment();['addEventListener','removeEventListener','dispatchEvent'].forEach(function(method){self[method]=_eventTarget[method].bind(_eventTarget);});this.needNegotiation=false;this.onicecandidate=null;this.onaddstream=null;this.ontrack=null;this.onremovestream=null;this.onsignalingstatechange=null;this.oniceconnectionstatechange=null;this.onicegatheringstatechange=null;this.onnegotiationneeded=null;this.ondatachannel=null;this.canTrickleIceCandidates=null;this.localStreams=[];this.remoteStreams=[];this.getLocalStreams=function(){return self.localStreams;};this.getRemoteStreams=function(){return self.remoteStreams;};this.localDescription=new window.RTCSessionDescription({type:'',sdp:''});this.remoteDescription=new window.RTCSessionDescription({type:'',sdp:''});this.signalingState='stable';this.iceConnectionState='new';this.iceGatheringState='new';this.iceOptions={gatherPolicy:'all',iceServers:[]};if(config&&config.iceTransportPolicy){switch(config.iceTransportPolicy){case'all':case'relay':this.iceOptions.gatherPolicy=config.iceTransportPolicy;break;default:break;}} +this.usingBundle=config&&config.bundlePolicy==='max-bundle';if(config&&config.iceServers){this.iceOptions.iceServers=filterIceServers(config.iceServers,edgeVersion);} +this._config=config||{};this.transceivers=[];this._localIceCandidatesBuffer=[];this._sdpSessionId=SDPUtils.generateSessionId();};RTCPeerConnection.prototype._emitGatheringStateChange=function(){var event=new Event('icegatheringstatechange');this.dispatchEvent(event);if(this.onicegatheringstatechange!==null){this.onicegatheringstatechange(event);}};RTCPeerConnection.prototype._emitBufferedCandidates=function(){var self=this;var sections=SDPUtils.splitSections(self.localDescription.sdp);this._localIceCandidatesBuffer.forEach(function(event){var end=!event.candidate||Object.keys(event.candidate).length===0;if(end){for(var j=1;j<sections.length;j++){if(sections[j].indexOf('\r\na=end-of-candidates\r\n')===-1){sections[j]+='a=end-of-candidates\r\n';}}}else{sections[event.candidate.sdpMLineIndex+1]+='a='+event.candidate.candidate+'\r\n';} +self.localDescription.sdp=sections.join('');self.dispatchEvent(event);if(self.onicecandidate!==null){self.onicecandidate(event);} +if(!event.candidate&&self.iceGatheringState!=='complete'){var complete=self.transceivers.every(function(transceiver){return transceiver.iceGatherer&&transceiver.iceGatherer.state==='completed';});if(complete&&self.iceGatheringStateChange!=='complete'){self.iceGatheringState='complete';self._emitGatheringStateChange();}}});this._localIceCandidatesBuffer=[];};RTCPeerConnection.prototype.getConfiguration=function(){return this._config;};RTCPeerConnection.prototype._createTransceiver=function(kind){var hasBundleTransport=this.transceivers.length>0;var transceiver={track:null,iceGatherer:null,iceTransport:null,dtlsTransport:null,localCapabilities:null,remoteCapabilities:null,rtpSender:null,rtpReceiver:null,kind:kind,mid:null,sendEncodingParameters:null,recvEncodingParameters:null,stream:null,wantReceive:true};if(this.usingBundle&&hasBundleTransport){transceiver.iceTransport=this.transceivers[0].iceTransport;transceiver.dtlsTransport=this.transceivers[0].dtlsTransport;}else{var transports=this._createIceAndDtlsTransports();transceiver.iceTransport=transports.iceTransport;transceiver.dtlsTransport=transports.dtlsTransport;} +this.transceivers.push(transceiver);return transceiver;};RTCPeerConnection.prototype.addTrack=function(track,stream){var transceiver;for(var i=0;i<this.transceivers.length;i++){if(!this.transceivers[i].track&&this.transceivers[i].kind===track.kind){transceiver=this.transceivers[i];}} +if(!transceiver){transceiver=this._createTransceiver(track.kind);} +transceiver.track=track;transceiver.stream=stream;transceiver.rtpSender=new window.RTCRtpSender(track,transceiver.dtlsTransport);this._maybeFireNegotiationNeeded();return transceiver.rtpSender;};RTCPeerConnection.prototype.addStream=function(stream){var self=this;if(edgeVersion>=15025){this.localStreams.push(stream);stream.getTracks().forEach(function(track){self.addTrack(track,stream);});}else{var clonedStream=stream.clone();stream.getTracks().forEach(function(track,idx){var clonedTrack=clonedStream.getTracks()[idx];track.addEventListener('enabled',function(event){clonedTrack.enabled=event.enabled;});});clonedStream.getTracks().forEach(function(track){self.addTrack(track,clonedStream);});this.localStreams.push(clonedStream);} +this._maybeFireNegotiationNeeded();};RTCPeerConnection.prototype.removeStream=function(stream){var idx=this.localStreams.indexOf(stream);if(idx>-1){this.localStreams.splice(idx,1);this._maybeFireNegotiationNeeded();}};RTCPeerConnection.prototype.getSenders=function(){return this.transceivers.filter(function(transceiver){return!!transceiver.rtpSender;}).map(function(transceiver){return transceiver.rtpSender;});};RTCPeerConnection.prototype.getReceivers=function(){return this.transceivers.filter(function(transceiver){return!!transceiver.rtpReceiver;}).map(function(transceiver){return transceiver.rtpReceiver;});};RTCPeerConnection.prototype._createIceGatherer=function(mid,sdpMLineIndex){var self=this;var iceGatherer=new window.RTCIceGatherer(self.iceOptions);iceGatherer.onlocalcandidate=function(evt){var event=new Event('icecandidate');event.candidate={sdpMid:mid,sdpMLineIndex:sdpMLineIndex};var cand=evt.candidate;var end=!cand||Object.keys(cand).length===0;if(end){if(iceGatherer.state===undefined){iceGatherer.state='completed';}}else{cand.component=1;event.candidate.candidate=SDPUtils.writeCandidate(cand);} +var sections=SDPUtils.splitSections(self.localDescription.sdp);if(!end){sections[event.candidate.sdpMLineIndex+1]+='a='+event.candidate.candidate+'\r\n';}else{sections[event.candidate.sdpMLineIndex+1]+='a=end-of-candidates\r\n';} +self.localDescription.sdp=sections.join('');var transceivers=self._pendingOffer?self._pendingOffer:self.transceivers;var complete=transceivers.every(function(transceiver){return transceiver.iceGatherer&&transceiver.iceGatherer.state==='completed';});switch(self.iceGatheringState){case'new':if(!end){self._localIceCandidatesBuffer.push(event);} +if(end&&complete){self._localIceCandidatesBuffer.push(new Event('icecandidate'));} +break;case'gathering':self._emitBufferedCandidates();if(!end){self.dispatchEvent(event);if(self.onicecandidate!==null){self.onicecandidate(event);}} +if(complete){self.dispatchEvent(new Event('icecandidate'));if(self.onicecandidate!==null){self.onicecandidate(new Event('icecandidate'));} +self.iceGatheringState='complete';self._emitGatheringStateChange();} +break;case'complete':break;default:break;}};return iceGatherer;};RTCPeerConnection.prototype._createIceAndDtlsTransports=function(){var self=this;var iceTransport=new window.RTCIceTransport(null);iceTransport.onicestatechange=function(){self._updateConnectionState();};var dtlsTransport=new window.RTCDtlsTransport(iceTransport);dtlsTransport.ondtlsstatechange=function(){self._updateConnectionState();};dtlsTransport.onerror=function(){Object.defineProperty(dtlsTransport,'state',{value:'failed',writable:true});self._updateConnectionState();};return{iceTransport:iceTransport,dtlsTransport:dtlsTransport};};RTCPeerConnection.prototype._disposeIceAndDtlsTransports=function(sdpMLineIndex){var iceGatherer=this.transceivers[sdpMLineIndex].iceGatherer;if(iceGatherer){delete iceGatherer.onlocalcandidate;delete this.transceivers[sdpMLineIndex].iceGatherer;} +var iceTransport=this.transceivers[sdpMLineIndex].iceTransport;if(iceTransport){delete iceTransport.onicestatechange;delete this.transceivers[sdpMLineIndex].iceTransport;} +var dtlsTransport=this.transceivers[sdpMLineIndex].dtlsTransport;if(dtlsTransport){delete dtlsTransport.ondtlssttatechange;delete dtlsTransport.onerror;delete this.transceivers[sdpMLineIndex].dtlsTransport;}};RTCPeerConnection.prototype._transceive=function(transceiver,send,recv){var params=getCommonCapabilities(transceiver.localCapabilities,transceiver.remoteCapabilities);if(send&&transceiver.rtpSender){params.encodings=transceiver.sendEncodingParameters;params.rtcp={cname:SDPUtils.localCName,compound:transceiver.rtcpParameters.compound};if(transceiver.recvEncodingParameters.length){params.rtcp.ssrc=transceiver.recvEncodingParameters[0].ssrc;} +transceiver.rtpSender.send(params);} +if(recv&&transceiver.rtpReceiver){if(transceiver.kind==='video'&&transceiver.recvEncodingParameters&&edgeVersion<15019){transceiver.recvEncodingParameters.forEach(function(p){delete p.rtx;});} +params.encodings=transceiver.recvEncodingParameters;params.rtcp={cname:transceiver.rtcpParameters.cname,compound:transceiver.rtcpParameters.compound};if(transceiver.sendEncodingParameters.length){params.rtcp.ssrc=transceiver.sendEncodingParameters[0].ssrc;} +transceiver.rtpReceiver.receive(params);}};RTCPeerConnection.prototype.setLocalDescription=function(description){var self=this;if(!isActionAllowedInSignalingState('setLocalDescription',description.type,this.signalingState)){var e=new Error('Can not set local '+description.type+' in state '+this.signalingState);e.name='InvalidStateError';if(arguments.length>2&&typeof arguments[2]==='function'){window.setTimeout(arguments[2],0,e);} +return Promise.reject(e);} +var sections;var sessionpart;if(description.type==='offer'){if(this._pendingOffer){sections=SDPUtils.splitSections(description.sdp);sessionpart=sections.shift();sections.forEach(function(mediaSection,sdpMLineIndex){var caps=SDPUtils.parseRtpParameters(mediaSection);self._pendingOffer[sdpMLineIndex].localCapabilities=caps;});this.transceivers=this._pendingOffer;delete this._pendingOffer;}}else if(description.type==='answer'){sections=SDPUtils.splitSections(self.remoteDescription.sdp);sessionpart=sections.shift();var isIceLite=SDPUtils.matchPrefix(sessionpart,'a=ice-lite').length>0;sections.forEach(function(mediaSection,sdpMLineIndex){var transceiver=self.transceivers[sdpMLineIndex];var iceGatherer=transceiver.iceGatherer;var iceTransport=transceiver.iceTransport;var dtlsTransport=transceiver.dtlsTransport;var localCapabilities=transceiver.localCapabilities;var remoteCapabilities=transceiver.remoteCapabilities;var rejected=SDPUtils.isRejected(mediaSection);if(!rejected&&!transceiver.isDatachannel){var remoteIceParameters=SDPUtils.getIceParameters(mediaSection,sessionpart);var remoteDtlsParameters=SDPUtils.getDtlsParameters(mediaSection,sessionpart);if(isIceLite){remoteDtlsParameters.role='server';} +if(!self.usingBundle||sdpMLineIndex===0){iceTransport.start(iceGatherer,remoteIceParameters,isIceLite?'controlling':'controlled');dtlsTransport.start(remoteDtlsParameters);} +var params=getCommonCapabilities(localCapabilities,remoteCapabilities);self._transceive(transceiver,params.codecs.length>0,false);}});} +this.localDescription={type:description.type,sdp:description.sdp};switch(description.type){case'offer':this._updateSignalingState('have-local-offer');break;case'answer':this._updateSignalingState('stable');break;default:throw new TypeError('unsupported type "'+description.type+'"');} +var hasCallback=arguments.length>1&&typeof arguments[1]==='function';if(hasCallback){var cb=arguments[1];window.setTimeout(function(){cb();if(self.iceGatheringState==='new'){self.iceGatheringState='gathering';self._emitGatheringStateChange();} +self._emitBufferedCandidates();},0);} +var p=Promise.resolve();p.then(function(){if(!hasCallback){if(self.iceGatheringState==='new'){self.iceGatheringState='gathering';self._emitGatheringStateChange();} +window.setTimeout(self._emitBufferedCandidates.bind(self),500);}});return p;};RTCPeerConnection.prototype.setRemoteDescription=function(description){var self=this;if(!isActionAllowedInSignalingState('setRemoteDescription',description.type,this.signalingState)){var e=new Error('Can not set remote '+description.type+' in state '+this.signalingState);e.name='InvalidStateError';if(arguments.length>2&&typeof arguments[2]==='function'){window.setTimeout(arguments[2],0,e);} +return Promise.reject(e);} +var streams={};var receiverList=[];var sections=SDPUtils.splitSections(description.sdp);var sessionpart=sections.shift();var isIceLite=SDPUtils.matchPrefix(sessionpart,'a=ice-lite').length>0;var usingBundle=SDPUtils.matchPrefix(sessionpart,'a=group:BUNDLE ').length>0;this.usingBundle=usingBundle;var iceOptions=SDPUtils.matchPrefix(sessionpart,'a=ice-options:')[0];if(iceOptions){this.canTrickleIceCandidates=iceOptions.substr(14).split(' ').indexOf('trickle')>=0;}else{this.canTrickleIceCandidates=false;} +sections.forEach(function(mediaSection,sdpMLineIndex){var lines=SDPUtils.splitLines(mediaSection);var kind=SDPUtils.getKind(mediaSection);var rejected=SDPUtils.isRejected(mediaSection);var protocol=lines[0].substr(2).split(' ')[2];var direction=SDPUtils.getDirection(mediaSection,sessionpart);var remoteMsid=SDPUtils.parseMsid(mediaSection);var mid=SDPUtils.getMid(mediaSection)||SDPUtils.generateIdentifier();if(kind==='application'&&protocol==='DTLS/SCTP'){self.transceivers[sdpMLineIndex]={mid:mid,isDatachannel:true};return;} +var transceiver;var iceGatherer;var iceTransport;var dtlsTransport;var rtpReceiver;var sendEncodingParameters;var recvEncodingParameters;var localCapabilities;var track;var remoteCapabilities=SDPUtils.parseRtpParameters(mediaSection);var remoteIceParameters;var remoteDtlsParameters;if(!rejected){remoteIceParameters=SDPUtils.getIceParameters(mediaSection,sessionpart);remoteDtlsParameters=SDPUtils.getDtlsParameters(mediaSection,sessionpart);remoteDtlsParameters.role='client';} +recvEncodingParameters=SDPUtils.parseRtpEncodingParameters(mediaSection);var rtcpParameters=SDPUtils.parseRtcpParameters(mediaSection);var isComplete=SDPUtils.matchPrefix(mediaSection,'a=end-of-candidates',sessionpart).length>0;var cands=SDPUtils.matchPrefix(mediaSection,'a=candidate:').map(function(cand){return SDPUtils.parseCandidate(cand);}).filter(function(cand){return cand.component==='1'||cand.component===1;});if((description.type==='offer'||description.type==='answer')&&!rejected&&usingBundle&&sdpMLineIndex>0&&self.transceivers[sdpMLineIndex]){self._disposeIceAndDtlsTransports(sdpMLineIndex);self.transceivers[sdpMLineIndex].iceGatherer=self.transceivers[0].iceGatherer;self.transceivers[sdpMLineIndex].iceTransport=self.transceivers[0].iceTransport;self.transceivers[sdpMLineIndex].dtlsTransport=self.transceivers[0].dtlsTransport;if(self.transceivers[sdpMLineIndex].rtpSender){self.transceivers[sdpMLineIndex].rtpSender.setTransport(self.transceivers[0].dtlsTransport);} +if(self.transceivers[sdpMLineIndex].rtpReceiver){self.transceivers[sdpMLineIndex].rtpReceiver.setTransport(self.transceivers[0].dtlsTransport);}} +if(description.type==='offer'&&!rejected){transceiver=self.transceivers[sdpMLineIndex]||self._createTransceiver(kind);transceiver.mid=mid;if(!transceiver.iceGatherer){transceiver.iceGatherer=usingBundle&&sdpMLineIndex>0?self.transceivers[0].iceGatherer:self._createIceGatherer(mid,sdpMLineIndex);} +if(isComplete&&(!usingBundle||sdpMLineIndex===0)){transceiver.iceTransport.setRemoteCandidates(cands);} +localCapabilities=window.RTCRtpReceiver.getCapabilities(kind);if(edgeVersion<15019){localCapabilities.codecs=localCapabilities.codecs.filter(function(codec){return codec.name!=='rtx';});} +sendEncodingParameters=[{ssrc:(2*sdpMLineIndex+2)*1001}];if(direction==='sendrecv'||direction==='sendonly'){rtpReceiver=new window.RTCRtpReceiver(transceiver.dtlsTransport,kind);track=rtpReceiver.track;if(remoteMsid){if(!streams[remoteMsid.stream]){streams[remoteMsid.stream]=new window.MediaStream();Object.defineProperty(streams[remoteMsid.stream],'id',{get:function(){return remoteMsid.stream;}});} +Object.defineProperty(track,'id',{get:function(){return remoteMsid.track;}});streams[remoteMsid.stream].addTrack(track);receiverList.push([track,rtpReceiver,streams[remoteMsid.stream]]);}else{if(!streams.default){streams.default=new window.MediaStream();} +streams.default.addTrack(track);receiverList.push([track,rtpReceiver,streams.default]);}} +transceiver.localCapabilities=localCapabilities;transceiver.remoteCapabilities=remoteCapabilities;transceiver.rtpReceiver=rtpReceiver;transceiver.rtcpParameters=rtcpParameters;transceiver.sendEncodingParameters=sendEncodingParameters;transceiver.recvEncodingParameters=recvEncodingParameters;self._transceive(self.transceivers[sdpMLineIndex],false,direction==='sendrecv'||direction==='sendonly');}else if(description.type==='answer'&&!rejected){transceiver=self.transceivers[sdpMLineIndex];iceGatherer=transceiver.iceGatherer;iceTransport=transceiver.iceTransport;dtlsTransport=transceiver.dtlsTransport;rtpReceiver=transceiver.rtpReceiver;sendEncodingParameters=transceiver.sendEncodingParameters;localCapabilities=transceiver.localCapabilities;self.transceivers[sdpMLineIndex].recvEncodingParameters=recvEncodingParameters;self.transceivers[sdpMLineIndex].remoteCapabilities=remoteCapabilities;self.transceivers[sdpMLineIndex].rtcpParameters=rtcpParameters;if((isIceLite||isComplete)&&cands.length){iceTransport.setRemoteCandidates(cands);} +if(!usingBundle||sdpMLineIndex===0){iceTransport.start(iceGatherer,remoteIceParameters,'controlling');dtlsTransport.start(remoteDtlsParameters);} +self._transceive(transceiver,direction==='sendrecv'||direction==='recvonly',direction==='sendrecv'||direction==='sendonly');if(rtpReceiver&&(direction==='sendrecv'||direction==='sendonly')){track=rtpReceiver.track;if(remoteMsid){if(!streams[remoteMsid.stream]){streams[remoteMsid.stream]=new window.MediaStream();} +streams[remoteMsid.stream].addTrack(track);receiverList.push([track,rtpReceiver,streams[remoteMsid.stream]]);}else{if(!streams.default){streams.default=new window.MediaStream();} +streams.default.addTrack(track);receiverList.push([track,rtpReceiver,streams.default]);}}else{delete transceiver.rtpReceiver;}}});this.remoteDescription={type:description.type,sdp:description.sdp};switch(description.type){case'offer':this._updateSignalingState('have-remote-offer');break;case'answer':this._updateSignalingState('stable');break;default:throw new TypeError('unsupported type "'+description.type+'"');} +Object.keys(streams).forEach(function(sid){var stream=streams[sid];if(stream.getTracks().length){self.remoteStreams.push(stream);var event=new Event('addstream');event.stream=stream;self.dispatchEvent(event);if(self.onaddstream!==null){window.setTimeout(function(){self.onaddstream(event);},0);} +receiverList.forEach(function(item){var track=item[0];var receiver=item[1];if(stream.id!==item[2].id){return;} +var trackEvent=new Event('track');trackEvent.track=track;trackEvent.receiver=receiver;trackEvent.streams=[stream];self.dispatchEvent(trackEvent);if(self.ontrack!==null){window.setTimeout(function(){self.ontrack(trackEvent);},0);}});}});window.setTimeout(function(){if(!(self&&self.transceivers)){return;} +self.transceivers.forEach(function(transceiver){if(transceiver.iceTransport&&transceiver.iceTransport.state==='new'&&transceiver.iceTransport.getRemoteCandidates().length>0){console.warn('Timeout for addRemoteCandidate. Consider sending '+'an end-of-candidates notification');transceiver.iceTransport.addRemoteCandidate({});}});},4000);if(arguments.length>1&&typeof arguments[1]==='function'){window.setTimeout(arguments[1],0);} +return Promise.resolve();};RTCPeerConnection.prototype.close=function(){this.transceivers.forEach(function(transceiver){if(transceiver.iceTransport){transceiver.iceTransport.stop();} +if(transceiver.dtlsTransport){transceiver.dtlsTransport.stop();} +if(transceiver.rtpSender){transceiver.rtpSender.stop();} +if(transceiver.rtpReceiver){transceiver.rtpReceiver.stop();}});this._updateSignalingState('closed');};RTCPeerConnection.prototype._updateSignalingState=function(newState){this.signalingState=newState;var event=new Event('signalingstatechange');this.dispatchEvent(event);if(this.onsignalingstatechange!==null){this.onsignalingstatechange(event);}};RTCPeerConnection.prototype._maybeFireNegotiationNeeded=function(){var self=this;if(this.signalingState!=='stable'||this.needNegotiation===true){return;} +this.needNegotiation=true;window.setTimeout(function(){if(self.needNegotiation===false){return;} +self.needNegotiation=false;var event=new Event('negotiationneeded');self.dispatchEvent(event);if(self.onnegotiationneeded!==null){self.onnegotiationneeded(event);}},0);};RTCPeerConnection.prototype._updateConnectionState=function(){var self=this;var newState;var states={'new':0,closed:0,connecting:0,checking:0,connected:0,completed:0,disconnected:0,failed:0};this.transceivers.forEach(function(transceiver){states[transceiver.iceTransport.state]++;states[transceiver.dtlsTransport.state]++;});states.connected+=states.completed;newState='new';if(states.failed>0){newState='failed';}else if(states.connecting>0||states.checking>0){newState='connecting';}else if(states.disconnected>0){newState='disconnected';}else if(states.new>0){newState='new';}else if(states.connected>0||states.completed>0){newState='connected';} +if(newState!==self.iceConnectionState){self.iceConnectionState=newState;var event=new Event('iceconnectionstatechange');this.dispatchEvent(event);if(this.oniceconnectionstatechange!==null){this.oniceconnectionstatechange(event);}}};RTCPeerConnection.prototype.createOffer=function(){var self=this;if(this._pendingOffer){throw new Error('createOffer called while there is a pending offer.');} +var offerOptions;if(arguments.length===1&&typeof arguments[0]!=='function'){offerOptions=arguments[0];}else if(arguments.length===3){offerOptions=arguments[2];} +var numAudioTracks=this.transceivers.filter(function(t){return t.kind==='audio';}).length;var numVideoTracks=this.transceivers.filter(function(t){return t.kind==='video';}).length;if(offerOptions){if(offerOptions.mandatory||offerOptions.optional){throw new TypeError('Legacy mandatory/optional constraints not supported.');} +if(offerOptions.offerToReceiveAudio!==undefined){if(offerOptions.offerToReceiveAudio===true){numAudioTracks=1;}else if(offerOptions.offerToReceiveAudio===false){numAudioTracks=0;}else{numAudioTracks=offerOptions.offerToReceiveAudio;}} +if(offerOptions.offerToReceiveVideo!==undefined){if(offerOptions.offerToReceiveVideo===true){numVideoTracks=1;}else if(offerOptions.offerToReceiveVideo===false){numVideoTracks=0;}else{numVideoTracks=offerOptions.offerToReceiveVideo;}}} +this.transceivers.forEach(function(transceiver){if(transceiver.kind==='audio'){numAudioTracks--;if(numAudioTracks<0){transceiver.wantReceive=false;}}else if(transceiver.kind==='video'){numVideoTracks--;if(numVideoTracks<0){transceiver.wantReceive=false;}}});while(numAudioTracks>0||numVideoTracks>0){if(numAudioTracks>0){this._createTransceiver('audio');numAudioTracks--;} +if(numVideoTracks>0){this._createTransceiver('video');numVideoTracks--;}} +var transceivers=sortTracks(this.transceivers);var sdp=SDPUtils.writeSessionBoilerplate(this._sdpSessionId);transceivers.forEach(function(transceiver,sdpMLineIndex){var track=transceiver.track;var kind=transceiver.kind;var mid=SDPUtils.generateIdentifier();transceiver.mid=mid;if(!transceiver.iceGatherer){transceiver.iceGatherer=self.usingBundle&&sdpMLineIndex>0?transceivers[0].iceGatherer:self._createIceGatherer(mid,sdpMLineIndex);} +var localCapabilities=window.RTCRtpSender.getCapabilities(kind);if(edgeVersion<15019){localCapabilities.codecs=localCapabilities.codecs.filter(function(codec){return codec.name!=='rtx';});} +localCapabilities.codecs.forEach(function(codec){if(codec.name==='H264'&&codec.parameters['level-asymmetry-allowed']===undefined){codec.parameters['level-asymmetry-allowed']='1';}});var sendEncodingParameters=[{ssrc:(2*sdpMLineIndex+1)*1001}];if(track){if(edgeVersion>=15019&&kind==='video'){sendEncodingParameters[0].rtx={ssrc:(2*sdpMLineIndex+1)*1001+1};}} +if(transceiver.wantReceive){transceiver.rtpReceiver=new window.RTCRtpReceiver(transceiver.dtlsTransport,kind);} +transceiver.localCapabilities=localCapabilities;transceiver.sendEncodingParameters=sendEncodingParameters;});if(this._config.bundlePolicy!=='max-compat'){sdp+='a=group:BUNDLE '+transceivers.map(function(t){return t.mid;}).join(' ')+'\r\n';} +sdp+='a=ice-options:trickle\r\n';transceivers.forEach(function(transceiver,sdpMLineIndex){sdp+=SDPUtils.writeMediaSection(transceiver,transceiver.localCapabilities,'offer',transceiver.stream);sdp+='a=rtcp-rsize\r\n';});this._pendingOffer=transceivers;var desc=new window.RTCSessionDescription({type:'offer',sdp:sdp});if(arguments.length&&typeof arguments[0]==='function'){window.setTimeout(arguments[0],0,desc);} +return Promise.resolve(desc);};RTCPeerConnection.prototype.createAnswer=function(){var sdp=SDPUtils.writeSessionBoilerplate(this._sdpSessionId);if(this.usingBundle){sdp+='a=group:BUNDLE '+this.transceivers.map(function(t){return t.mid;}).join(' ')+'\r\n';} +this.transceivers.forEach(function(transceiver,sdpMLineIndex){if(transceiver.isDatachannel){sdp+='m=application 0 DTLS/SCTP 5000\r\n'+'c=IN IP4 0.0.0.0\r\n'+'a=mid:'+transceiver.mid+'\r\n';return;} +if(transceiver.stream){var localTrack;if(transceiver.kind==='audio'){localTrack=transceiver.stream.getAudioTracks()[0];}else if(transceiver.kind==='video'){localTrack=transceiver.stream.getVideoTracks()[0];} +if(localTrack){if(edgeVersion>=15019&&transceiver.kind==='video'){transceiver.sendEncodingParameters[0].rtx={ssrc:(2*sdpMLineIndex+2)*1001+1};}}} +var commonCapabilities=getCommonCapabilities(transceiver.localCapabilities,transceiver.remoteCapabilities);var hasRtx=commonCapabilities.codecs.filter(function(c){return c.name.toLowerCase()==='rtx';}).length;if(!hasRtx&&transceiver.sendEncodingParameters[0].rtx){delete transceiver.sendEncodingParameters[0].rtx;} +sdp+=SDPUtils.writeMediaSection(transceiver,commonCapabilities,'answer',transceiver.stream);if(transceiver.rtcpParameters&&transceiver.rtcpParameters.reducedSize){sdp+='a=rtcp-rsize\r\n';}});var desc=new window.RTCSessionDescription({type:'answer',sdp:sdp});if(arguments.length&&typeof arguments[0]==='function'){window.setTimeout(arguments[0],0,desc);} +return Promise.resolve(desc);};RTCPeerConnection.prototype.addIceCandidate=function(candidate){if(!candidate){for(var j=0;j<this.transceivers.length;j++){this.transceivers[j].iceTransport.addRemoteCandidate({});if(this.usingBundle){return Promise.resolve();}}}else{var mLineIndex=candidate.sdpMLineIndex;if(candidate.sdpMid){for(var i=0;i<this.transceivers.length;i++){if(this.transceivers[i].mid===candidate.sdpMid){mLineIndex=i;break;}}} +var transceiver=this.transceivers[mLineIndex];if(transceiver){var cand=Object.keys(candidate.candidate).length>0?SDPUtils.parseCandidate(candidate.candidate):{};if(cand.protocol==='tcp'&&(cand.port===0||cand.port===9)){return Promise.resolve();} +if(cand.component&&!(cand.component==='1'||cand.component===1)){return Promise.resolve();} +transceiver.iceTransport.addRemoteCandidate(cand);var sections=SDPUtils.splitSections(this.remoteDescription.sdp);sections[mLineIndex+1]+=(cand.type?candidate.candidate.trim():'a=end-of-candidates')+'\r\n';this.remoteDescription.sdp=sections.join('');}} +if(arguments.length>1&&typeof arguments[1]==='function'){window.setTimeout(arguments[1],0);} +return Promise.resolve();};RTCPeerConnection.prototype.getStats=function(){var promises=[];this.transceivers.forEach(function(transceiver){['rtpSender','rtpReceiver','iceGatherer','iceTransport','dtlsTransport'].forEach(function(method){if(transceiver[method]){promises.push(transceiver[method].getStats());}});});var cb=arguments.length>1&&typeof arguments[1]==='function'&&arguments[1];var fixStatsType=function(stat){return{inboundrtp:'inbound-rtp',outboundrtp:'outbound-rtp',candidatepair:'candidate-pair',localcandidate:'local-candidate',remotecandidate:'remote-candidate'}[stat.type]||stat.type;};return new Promise(function(resolve){var results=new Map();Promise.all(promises).then(function(res){res.forEach(function(result){Object.keys(result).forEach(function(id){result[id].type=fixStatsType(result[id]);results.set(id,result[id]);});});if(cb){window.setTimeout(cb,0,results);} +resolve(results);});});};return RTCPeerConnection;};},{"sdp":1}],9:[function(require,module,exports){'use strict';var utils=require('../utils');var firefoxShim={shimOnTrack:function(window){if(typeof window==='object'&&window.RTCPeerConnection&&!('ontrack'in +window.RTCPeerConnection.prototype)){Object.defineProperty(window.RTCPeerConnection.prototype,'ontrack',{get:function(){return this._ontrack;},set:function(f){if(this._ontrack){this.removeEventListener('track',this._ontrack);this.removeEventListener('addstream',this._ontrackpoly);} +this.addEventListener('track',this._ontrack=f);this.addEventListener('addstream',this._ontrackpoly=function(e){e.stream.getTracks().forEach(function(track){var event=new Event('track');event.track=track;event.receiver={track:track};event.streams=[e.stream];this.dispatchEvent(event);}.bind(this));}.bind(this));}});}},shimSourceObject:function(window){if(typeof window==='object'){if(window.HTMLMediaElement&&!('srcObject'in window.HTMLMediaElement.prototype)){Object.defineProperty(window.HTMLMediaElement.prototype,'srcObject',{get:function(){return this.mozSrcObject;},set:function(stream){this.mozSrcObject=stream;}});}}},shimPeerConnection:function(window){var browserDetails=utils.detectBrowser(window);if(typeof window!=='object'||!(window.RTCPeerConnection||window.mozRTCPeerConnection)){return;} +if(!window.RTCPeerConnection){window.RTCPeerConnection=function(pcConfig,pcConstraints){if(browserDetails.version<38){if(pcConfig&&pcConfig.iceServers){var newIceServers=[];for(var i=0;i<pcConfig.iceServers.length;i++){var server=pcConfig.iceServers[i];if(server.hasOwnProperty('urls')){for(var j=0;j<server.urls.length;j++){var newServer={url:server.urls[j]};if(server.urls[j].indexOf('turn')===0){newServer.username=server.username;newServer.credential=server.credential;} +newIceServers.push(newServer);}}else{newIceServers.push(pcConfig.iceServers[i]);}} +pcConfig.iceServers=newIceServers;}} +return new window.mozRTCPeerConnection(pcConfig,pcConstraints);};window.RTCPeerConnection.prototype=window.mozRTCPeerConnection.prototype;if(window.mozRTCPeerConnection.generateCertificate){Object.defineProperty(window.RTCPeerConnection,'generateCertificate',{get:function(){return window.mozRTCPeerConnection.generateCertificate;}});} +window.RTCSessionDescription=window.mozRTCSessionDescription;window.RTCIceCandidate=window.mozRTCIceCandidate;} +['setLocalDescription','setRemoteDescription','addIceCandidate'].forEach(function(method){var nativeMethod=window.RTCPeerConnection.prototype[method];window.RTCPeerConnection.prototype[method]=function(){arguments[0]=new((method==='addIceCandidate')?window.RTCIceCandidate:window.RTCSessionDescription)(arguments[0]);return nativeMethod.apply(this,arguments);};});var nativeAddIceCandidate=window.RTCPeerConnection.prototype.addIceCandidate;window.RTCPeerConnection.prototype.addIceCandidate=function(){if(!arguments[0]){if(arguments[1]){arguments[1].apply(null);} +return Promise.resolve();} +return nativeAddIceCandidate.apply(this,arguments);};var makeMapStats=function(stats){var map=new Map();Object.keys(stats).forEach(function(key){map.set(key,stats[key]);map[key]=stats[key];});return map;};var modernStatsTypes={inboundrtp:'inbound-rtp',outboundrtp:'outbound-rtp',candidatepair:'candidate-pair',localcandidate:'local-candidate',remotecandidate:'remote-candidate'};var nativeGetStats=window.RTCPeerConnection.prototype.getStats;window.RTCPeerConnection.prototype.getStats=function(selector,onSucc,onErr){return nativeGetStats.apply(this,[selector||null]).then(function(stats){if(browserDetails.version<48){stats=makeMapStats(stats);} +if(browserDetails.version<53&&!onSucc){try{stats.forEach(function(stat){stat.type=modernStatsTypes[stat.type]||stat.type;});}catch(e){if(e.name!=='TypeError'){throw e;} +stats.forEach(function(stat,i){stats.set(i,Object.assign({},stat,{type:modernStatsTypes[stat.type]||stat.type}));});}} +return stats;}).then(onSucc,onErr);};}};module.exports={shimOnTrack:firefoxShim.shimOnTrack,shimSourceObject:firefoxShim.shimSourceObject,shimPeerConnection:firefoxShim.shimPeerConnection,shimGetUserMedia:require('./getusermedia')};},{"../utils":12,"./getusermedia":10}],10:[function(require,module,exports){'use strict';var utils=require('../utils');var logging=utils.log;module.exports=function(window){var browserDetails=utils.detectBrowser(window);var navigator=window&&window.navigator;var MediaStreamTrack=window&&window.MediaStreamTrack;var shimError_=function(e){return{name:{InternalError:'NotReadableError',NotSupportedError:'TypeError',PermissionDeniedError:'NotAllowedError',SecurityError:'NotAllowedError'}[e.name]||e.name,message:{'The operation is insecure.':'The request is not allowed by the '+'user agent or the platform in the current context.'}[e.message]||e.message,constraint:e.constraint,toString:function(){return this.name+(this.message&&': ')+this.message;}};};var getUserMedia_=function(constraints,onSuccess,onError){var constraintsToFF37_=function(c){if(typeof c!=='object'||c.require){return c;} +var require=[];Object.keys(c).forEach(function(key){if(key==='require'||key==='advanced'||key==='mediaSource'){return;} +var r=c[key]=(typeof c[key]==='object')?c[key]:{ideal:c[key]};if(r.min!==undefined||r.max!==undefined||r.exact!==undefined){require.push(key);} +if(r.exact!==undefined){if(typeof r.exact==='number'){r.min=r.max=r.exact;}else{c[key]=r.exact;} +delete r.exact;} +if(r.ideal!==undefined){c.advanced=c.advanced||[];var oc={};if(typeof r.ideal==='number'){oc[key]={min:r.ideal,max:r.ideal};}else{oc[key]=r.ideal;} +c.advanced.push(oc);delete r.ideal;if(!Object.keys(r).length){delete c[key];}}});if(require.length){c.require=require;} +return c;};constraints=JSON.parse(JSON.stringify(constraints));if(browserDetails.version<38){logging('spec: '+JSON.stringify(constraints));if(constraints.audio){constraints.audio=constraintsToFF37_(constraints.audio);} +if(constraints.video){constraints.video=constraintsToFF37_(constraints.video);} +logging('ff37: '+JSON.stringify(constraints));} +return navigator.mozGetUserMedia(constraints,onSuccess,function(e){onError(shimError_(e));});};var getUserMediaPromise_=function(constraints){return new Promise(function(resolve,reject){getUserMedia_(constraints,resolve,reject);});};if(!navigator.mediaDevices){navigator.mediaDevices={getUserMedia:getUserMediaPromise_,addEventListener:function(){},removeEventListener:function(){}};} +navigator.mediaDevices.enumerateDevices=navigator.mediaDevices.enumerateDevices||function(){return new Promise(function(resolve){var infos=[{kind:'audioinput',deviceId:'default',label:'',groupId:''},{kind:'videoinput',deviceId:'default',label:'',groupId:''}];resolve(infos);});};if(browserDetails.version<41){var orgEnumerateDevices=navigator.mediaDevices.enumerateDevices.bind(navigator.mediaDevices);navigator.mediaDevices.enumerateDevices=function(){return orgEnumerateDevices().then(undefined,function(e){if(e.name==='NotFoundError'){return[];} +throw e;});};} +if(browserDetails.version<49){var origGetUserMedia=navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices);navigator.mediaDevices.getUserMedia=function(c){return origGetUserMedia(c).then(function(stream){if(c.audio&&!stream.getAudioTracks().length||c.video&&!stream.getVideoTracks().length){stream.getTracks().forEach(function(track){track.stop();});throw new DOMException('The object can not be found here.','NotFoundError');} +return stream;},function(e){return Promise.reject(shimError_(e));});};} +if(!(browserDetails.version>55&&'autoGainControl'in navigator.mediaDevices.getSupportedConstraints())){var remap=function(obj,a,b){if(a in obj&&!(b in obj)){obj[b]=obj[a];delete obj[a];}};var nativeGetUserMedia=navigator.mediaDevices.getUserMedia.bind(navigator.mediaDevices);navigator.mediaDevices.getUserMedia=function(c){if(typeof c==='object'&&typeof c.audio==='object'){c=JSON.parse(JSON.stringify(c));remap(c.audio,'autoGainControl','mozAutoGainControl');remap(c.audio,'noiseSuppression','mozNoiseSuppression');} +return nativeGetUserMedia(c);};if(MediaStreamTrack&&MediaStreamTrack.prototype.getSettings){var nativeGetSettings=MediaStreamTrack.prototype.getSettings;MediaStreamTrack.prototype.getSettings=function(){var obj=nativeGetSettings.apply(this,arguments);remap(obj,'mozAutoGainControl','autoGainControl');remap(obj,'mozNoiseSuppression','noiseSuppression');return obj;};} +if(MediaStreamTrack&&MediaStreamTrack.prototype.applyConstraints){var nativeApplyConstraints=MediaStreamTrack.prototype.applyConstraints;MediaStreamTrack.prototype.applyConstraints=function(c){if(this.kind==='audio'&&typeof c==='object'){c=JSON.parse(JSON.stringify(c));remap(c,'autoGainControl','mozAutoGainControl');remap(c,'noiseSuppression','mozNoiseSuppression');} +return nativeApplyConstraints.apply(this,[c]);};}} +navigator.getUserMedia=function(constraints,onSuccess,onError){if(browserDetails.version<44){return getUserMedia_(constraints,onSuccess,onError);} +console.warn('navigator.getUserMedia has been replaced by '+'navigator.mediaDevices.getUserMedia');navigator.mediaDevices.getUserMedia(constraints).then(onSuccess,onError);};};},{"../utils":12}],11:[function(require,module,exports){'use strict';var utils=require('../utils');var safariShim={shimLocalStreamsAPI:function(window){if(typeof window!=='object'||!window.RTCPeerConnection){return;} +if(!('getLocalStreams'in window.RTCPeerConnection.prototype)){window.RTCPeerConnection.prototype.getLocalStreams=function(){if(!this._localStreams){this._localStreams=[];} +return this._localStreams;};} +if(!('getStreamById'in window.RTCPeerConnection.prototype)){window.RTCPeerConnection.prototype.getStreamById=function(id){var result=null;if(this._localStreams){this._localStreams.forEach(function(stream){if(stream.id===id){result=stream;}});} +if(this._remoteStreams){this._remoteStreams.forEach(function(stream){if(stream.id===id){result=stream;}});} +return result;};} +if(!('addStream'in window.RTCPeerConnection.prototype)){var _addTrack=window.RTCPeerConnection.prototype.addTrack;window.RTCPeerConnection.prototype.addStream=function(stream){if(!this._localStreams){this._localStreams=[];} +if(this._localStreams.indexOf(stream)===-1){this._localStreams.push(stream);} +var self=this;stream.getTracks().forEach(function(track){_addTrack.call(self,track,stream);});};window.RTCPeerConnection.prototype.addTrack=function(track,stream){if(stream){if(!this._localStreams){this._localStreams=[stream];}else if(this._localStreams.indexOf(stream)===-1){this._localStreams.push(stream);}} +_addTrack.call(this,track,stream);};} +if(!('removeStream'in window.RTCPeerConnection.prototype)){window.RTCPeerConnection.prototype.removeStream=function(stream){if(!this._localStreams){this._localStreams=[];} +var index=this._localStreams.indexOf(stream);if(index===-1){return;} +this._localStreams.splice(index,1);var self=this;var tracks=stream.getTracks();this.getSenders().forEach(function(sender){if(tracks.indexOf(sender.track)!==-1){self.removeTrack(sender);}});};}},shimRemoteStreamsAPI:function(window){if(typeof window!=='object'||!window.RTCPeerConnection){return;} +if(!('getRemoteStreams'in window.RTCPeerConnection.prototype)){window.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[];};} +if(!('onaddstream'in window.RTCPeerConnection.prototype)){Object.defineProperty(window.RTCPeerConnection.prototype,'onaddstream',{get:function(){return this._onaddstream;},set:function(f){if(this._onaddstream){this.removeEventListener('addstream',this._onaddstream);this.removeEventListener('track',this._onaddstreampoly);} +this.addEventListener('addstream',this._onaddstream=f);this.addEventListener('track',this._onaddstreampoly=function(e){var stream=e.streams[0];if(!this._remoteStreams){this._remoteStreams=[];} +if(this._remoteStreams.indexOf(stream)>=0){return;} +this._remoteStreams.push(stream);var event=new Event('addstream');event.stream=e.streams[0];this.dispatchEvent(event);}.bind(this));}});}},shimCallbacksAPI:function(window){if(typeof window!=='object'||!window.RTCPeerConnection){return;} +var prototype=window.RTCPeerConnection.prototype;var createOffer=prototype.createOffer;var createAnswer=prototype.createAnswer;var setLocalDescription=prototype.setLocalDescription;var setRemoteDescription=prototype.setRemoteDescription;var addIceCandidate=prototype.addIceCandidate;prototype.createOffer=function(successCallback,failureCallback){var options=(arguments.length>=2)?arguments[2]:arguments[0];var promise=createOffer.apply(this,[options]);if(!failureCallback){return promise;} +promise.then(successCallback,failureCallback);return Promise.resolve();};prototype.createAnswer=function(successCallback,failureCallback){var options=(arguments.length>=2)?arguments[2]:arguments[0];var promise=createAnswer.apply(this,[options]);if(!failureCallback){return promise;} +promise.then(successCallback,failureCallback);return Promise.resolve();};var withCallback=function(description,successCallback,failureCallback){var promise=setLocalDescription.apply(this,[description]);if(!failureCallback){return promise;} +promise.then(successCallback,failureCallback);return Promise.resolve();};prototype.setLocalDescription=withCallback;withCallback=function(description,successCallback,failureCallback){var promise=setRemoteDescription.apply(this,[description]);if(!failureCallback){return promise;} +promise.then(successCallback,failureCallback);return Promise.resolve();};prototype.setRemoteDescription=withCallback;withCallback=function(candidate,successCallback,failureCallback){var promise=addIceCandidate.apply(this,[candidate]);if(!failureCallback){return promise;} +promise.then(successCallback,failureCallback);return Promise.resolve();};prototype.addIceCandidate=withCallback;},shimGetUserMedia:function(window){var navigator=window&&window.navigator;if(!navigator.getUserMedia){if(navigator.webkitGetUserMedia){navigator.getUserMedia=navigator.webkitGetUserMedia.bind(navigator);}else if(navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){navigator.getUserMedia=function(constraints,cb,errcb){navigator.mediaDevices.getUserMedia(constraints).then(cb,errcb);}.bind(navigator);}}},shimRTCIceServerUrls:function(window){var OrigPeerConnection=window.RTCPeerConnection;window.RTCPeerConnection=function(pcConfig,pcConstraints){if(pcConfig&&pcConfig.iceServers){var newIceServers=[];for(var i=0;i<pcConfig.iceServers.length;i++){var server=pcConfig.iceServers[i];if(!server.hasOwnProperty('urls')&&server.hasOwnProperty('url')){utils.deprecated('RTCIceServer.url','RTCIceServer.urls');server=JSON.parse(JSON.stringify(server));server.urls=server.url;delete server.url;newIceServers.push(server);}else{newIceServers.push(pcConfig.iceServers[i]);}} +pcConfig.iceServers=newIceServers;} +return new OrigPeerConnection(pcConfig,pcConstraints);};window.RTCPeerConnection.prototype=OrigPeerConnection.prototype;Object.defineProperty(window.RTCPeerConnection,'generateCertificate',{get:function(){return OrigPeerConnection.generateCertificate;}});}};module.exports={shimCallbacksAPI:safariShim.shimCallbacksAPI,shimLocalStreamsAPI:safariShim.shimLocalStreamsAPI,shimRemoteStreamsAPI:safariShim.shimRemoteStreamsAPI,shimGetUserMedia:safariShim.shimGetUserMedia,shimRTCIceServerUrls:safariShim.shimRTCIceServerUrls};},{"../utils":12}],12:[function(require,module,exports){'use strict';var logDisabled_=true;var deprecationWarnings_=true;var utils={disableLog:function(bool){if(typeof bool!=='boolean'){return new Error('Argument type: '+typeof bool+'. Please use a boolean.');} +logDisabled_=bool;return(bool)?'adapter.js logging disabled':'adapter.js logging enabled';},disableWarnings:function(bool){if(typeof bool!=='boolean'){return new Error('Argument type: '+typeof bool+'. Please use a boolean.');} +deprecationWarnings_=!bool;return'adapter.js deprecation warnings '+(bool?'disabled':'enabled');},log:function(){if(typeof window==='object'){if(logDisabled_){return;} +if(typeof console!=='undefined'&&typeof console.log==='function'){console.log.apply(console,arguments);}}},deprecated:function(oldMethod,newMethod){if(!deprecationWarnings_){return;} +console.warn(oldMethod+' is deprecated, please use '+newMethod+' instead.');},extractVersion:function(uastring,expr,pos){var match=uastring.match(expr);return match&&match.length>=pos&&parseInt(match[pos],10);},detectBrowser:function(window){var navigator=window&&window.navigator;var result={};result.browser=null;result.version=null;if(typeof window==='undefined'||!window.navigator){result.browser='Not a browser.';return result;} +if(navigator.mozGetUserMedia){result.browser='firefox';result.version=this.extractVersion(navigator.userAgent,/Firefox\/(\d+)\./,1);}else if(navigator.webkitGetUserMedia){if(window.webkitRTCPeerConnection){result.browser='chrome';result.version=this.extractVersion(navigator.userAgent,/Chrom(e|ium)\/(\d+)\./,2);}else{if(navigator.userAgent.match(/Version\/(\d+).(\d+)/)){result.browser='safari';result.version=this.extractVersion(navigator.userAgent,/AppleWebKit\/(\d+)\./,1);}else{result.browser='Unsupported webkit-based browser '+'with GUM support but no WebRTC support.';return result;}}}else if(navigator.mediaDevices&&navigator.userAgent.match(/Edge\/(\d+).(\d+)$/)){result.browser='edge';result.version=this.extractVersion(navigator.userAgent,/Edge\/(\d+).(\d+)$/,2);}else if(navigator.mediaDevices&&navigator.userAgent.match(/AppleWebKit\/(\d+)\./)){result.browser='safari';result.version=this.extractVersion(navigator.userAgent,/AppleWebKit\/(\d+)\./,1);}else{result.browser='Not a supported browser.';return result;} +return result;},shimCreateObjectURL:function(window){var URL=window&&window.URL;if(!(typeof window==='object'&&window.HTMLMediaElement&&'srcObject'in window.HTMLMediaElement.prototype)){return undefined;} +var nativeCreateObjectURL=URL.createObjectURL.bind(URL);var nativeRevokeObjectURL=URL.revokeObjectURL.bind(URL);var streams=new Map(),newId=0;URL.createObjectURL=function(stream){if('getTracks'in stream){var url='polyblob:'+(++newId);streams.set(url,stream);utils.deprecated('URL.createObjectURL(stream)','elem.srcObject = stream');return url;} +return nativeCreateObjectURL(stream);};URL.revokeObjectURL=function(url){nativeRevokeObjectURL(url);streams.delete(url);};var dsc=Object.getOwnPropertyDescriptor(window.HTMLMediaElement.prototype,'src');Object.defineProperty(window.HTMLMediaElement.prototype,'src',{get:function(){return dsc.get.apply(this);},set:function(url){this.srcObject=streams.get(url)||null;return dsc.set.apply(this,[url]);}});var nativeSetAttribute=window.HTMLMediaElement.prototype.setAttribute;window.HTMLMediaElement.prototype.setAttribute=function(){if(arguments.length===2&&(''+arguments[0]).toLowerCase()==='src'){this.srcObject=streams.get(arguments[1])||null;} +return nativeSetAttribute.apply(this,arguments);};}};module.exports={log:utils.log,deprecated:utils.deprecated,disableLog:utils.disableLog,disableWarnings:utils.disableWarnings,extractVersion:utils.extractVersion,shimCreateObjectURL:utils.shimCreateObjectURL,detectBrowser:utils.detectBrowser.bind(utils)};},{}]},{},[2])(2)}); diff --git a/bigbluebutton-html5/client/compatibility/verto_extension.js b/bigbluebutton-html5/client/compatibility/verto_extension.js new file mode 100644 index 0000000000000000000000000000000000000000..65a67535faa96e9b2247263cd9cbbb89615ae30d --- /dev/null +++ b/bigbluebutton-html5/client/compatibility/verto_extension.js @@ -0,0 +1,706 @@ +Verto = function ( + tag, + voiceBridge, + conferenceUsername, + userCallback, + onFail = null, + chromeExtension = null, + stunTurnInfo = null, + loadingCallback = null) { + + voiceBridge += "-SCREENSHARE"; + this.cur_call = null; + this.share_call = null; + this.vertoHandle; + + this.vid_width = Math.max(window.screen.width, 1920); + this.vid_height = Math.max(window.screen.height, 1080); + + this.outgoingBandwidth = "default"; + this.incomingBandwidth = "default"; + // this.sessid = $.verto.genUUID(); + this.sessid = Math.random().toString(); + + this.renderTag = 'remote-media'; + + this.destination_number = voiceBridge; + this.caller_id_name = conferenceUsername; + this.caller_id_number = conferenceUsername; + + this.vertoPort = "verto"; + this.hostName = window.location.hostname; + this.socketUrl = 'wss://' + this.hostName + '/' + this.vertoPort; + this.login = "bbbuser"; + this.password = "secret"; + + this.useVideo = false; + this.useCamera = false; + this.useMic = false; + + this.callWasSuccessful = false; + this.shouldConnect = true; + this.iceServers = stunTurnInfo; + this.userCallback = userCallback; + + if (loadingCallback != null) { + this.videoLoadingCallback = Verto.normalizeCallback(loadingCallback); + } else { + this.videoLoadingCallback = function() {}; + } + + if (chromeExtension != null) { + this.chromeExtension = chromeExtension; + } + + if (onFail != null) { + this.onFail = Verto.normalizeCallback(onFail); + } else { + var _this = this; + this.onFail = function () { + _this.logError('Default error handler'); + }; + } +}; + +Verto.prototype.logger = function (obj) { + console.log(obj); +}; + +Verto.prototype.logError = function (obj) { + console.error(obj); +}; + +Verto.prototype.setRenderTag = function (tag) { + this.renderTag = tag; +}; + +// receives either a string variable holding the name of an actionscript +// registered callback, or a javascript function object. +// The function will return either the function if it is a javascript Function +// or if it is an actionscript string it will return a javascript Function +// that when invokved will invoke the actionscript registered callback +// and passes along parameters +Verto.normalizeCallback = function (callback) { + if (typeof callback == 'function') { + return callback; + } else { + return function (args) { + document.getElementById('BigBlueButton')[callback](args); + }; + } +}; + +Verto.prototype.onWSLogin = function (v, success) { + this.cur_call = null; + if (success) { + if (!this.shouldConnect) { + return; + } + + this.callWasSuccessful = true; + this.mediaCallback(); + return; + } else { + // error logging verto into freeswitch + this.logError({ status: 'failed', errorcode: '10XX' }); + this.callWasSuccessful = false; + this.onFail(); + return; + } +}; + +Verto.prototype.registerCallbacks = function () { + var callbacks = { + onMessage: function (verto, dialog, msg, data) { + + switch (msg) { + case $.verto.enum.message.pvtEvent: + if (data.pvtData) { + switch (data.pvtData.action) { + // This client has joined the live array for the conference. + case "conference-liveArray-join": + initLiveArray(verto, dialog, data); + break; + // This client has left the live array for the conference. + case "conference-liveArray-part": + // Some kind of client-side wrapup... + break; + } + } + break; + } + + }, + + onDialogState: function (d) {}, + + onWSLogin: this.onWSLogin.bind(this), + + onWSClose: function (v, success) { + cur_call = null; + if (this.callWasSuccessful) { + // the connection was dropped in an already established call + this.logError('websocket disconnected'); + + // WebSocket disconnected + this.logError({ status: 'failed', errorcode: 1001 }); + toDisplayDisconnectCallback = false; + } else { + // this callback was triggered and a call was never successfully established + this.logError('websocket connection could not be established'); + + // Could not make a WebSocket connection + this.logError({ status: 'failed', errorcode: 1002 }); + this.onFail(); + return; + } + }.bind(this), + }; + this.callbacks = callbacks; +}; + +var initLiveArray = function(verto, dialog, data) { + // Set up addtional configuration specific to the call. + window.vertoConf = new $.verto.conf(verto, { + dialog: dialog, + hasVid: true, + laData: data.pvtData, + // For subscribing to published chat messages. + chatCallback: function(verto, eventObj) { + var from = eventObj.data.fromDisplay || eventObj.data.from || 'Unknown'; + var message = eventObj.data.message || ''; + }, + }); + var config = { + subParams: { + callID: dialog ? dialog.callID : null + }, + }; + // Set up the live array, using the live array data received from FreeSWITCH. + window.liveArray = new $.verto.liveArray(window.vertoHandle, data.pvtData.laChannel, data.pvtData.laName, config); + // Subscribe to live array changes. + window.liveArray.onChange = function(liveArrayObj, args) { + console.log("Call UUID is: " + args.key); + console.log("Call data is: ", args.data); + + console.log(liveArrayObj); + console.log(args); + + try { + switch (args.action) { + + // Initial list of existing conference users. + case "bootObj": + break; + + // New user joined conference. + case "add": + break; + + // User left conference. + case "del": + break; + + // Existing user's state changed (mute/unmute, talking, floor, etc) + case "modify": + break; + } + } catch (err) { + console.error("ERROR: " + err); + } + }; + // Called if the live array throws an error. + window.liveArray.onErr = function (obj, args) { + console.error("Error: ", obj, args); + }; +}; + +Verto.prototype.hold = function () { + this.cur_call.toggleHold(); +}; + +Verto.prototype.hangup = function () { + if (this.cur_call) { + // the duration of the call + if (this.cur_call.audioStream) { + this.logger('call ended ' + this.cur_call.audioStream.currentTime); + } + + this.cur_call.hangup(); + this.cur_call = null; + } + + if (this.share_call) { + if (this.share_call.state == $.verto.enum.state.active) { + this.shouldConnect = false; + } else { + this.shouldConnect = true; + } + + // the duration of the call + this.logger('call ended ' + this.share_call.audioStream.currentTime); + this.share_call.rtc.localStream.getTracks().forEach(track => track.stop()); + this.share_call.hangup(); + this.share_call = null; + } + + // the user ended the call themself + // if (callPurposefullyEnded === true) { + if (true) { + this.logger({ status: 'ended' }); + } else { + // Call ended unexpectedly + this.logError({ status: 'failed', errorcode: 1005 }); + } +}; + +Verto.prototype.mute = function () { + this.cur_call.dtmf('0'); +}; + +Verto.prototype.localmute = function () { + // var muted = cur_call.setMute('toggle'); + // if (muted) { + // display('Talking to: ' + cur_call.cidString() + ' [LOCALLY MUTED]'); + // } else { + // display('Talking to: ' + cur_call.cidString()); + // } +}; + +Verto.prototype.localvidmute = function () { + // var muted = cur_call.setVideoMute('toggle'); + // if (muted) { + // display('Talking to: ' + cur_call.cidString() + ' [VIDEO LOCALLY MUTED]'); + // } else { + // display('Talking to: ' + cur_call.cidString()); + // } +}; + +Verto.prototype.vmute = function () { + this.cur_call.dtmf('*0'); +}; + +Verto.prototype.setWatchVideo = function (tag) { + this.mediaCallback = this.docall; + this.useVideo = true; + this.useCamera = 'none'; + this.useMic = 'none'; + this.create(tag); +}; + +Verto.prototype.setListenOnly = function (tag) { + this.mediaCallback = this.docall; + this.useVideo = false; + this.useCamera = 'none'; + this.useMic = 'none'; + this.create(tag); +}; + +Verto.prototype.setMicrophone = function (tag) { + this.mediaCallback = this.docall; + this.useVideo = false; + this.useCamera = 'none'; + this.useMic = 'any'; + this.create(tag); +}; + +Verto.prototype.setScreenShare = function (tag) { + // required for Verto to know we want to use video + // tell Verto we want to share webcam so it knows there will be a video stream + // but instead of a webcam we pass screen constraints + this.useCamera = 'any'; + this.useMic = 'none'; + this.mediaCallback = this.makeShare; + this.create(tag); +}; + +Verto.prototype.create = function (tag) { + this.setRenderTag(tag); + this.registerCallbacks(); + + // fetch ice information from server + if (this.iceServers == null) { + this.configStuns(this.init); + } else { + // already have it. proceed with init + this.init(); + } +}; + +Verto.prototype.docall = function () { + if (this.cur_call) { + this.logger('Quitting: Call already in progress'); + return; + } + + this.shouldConnect = true; + + this.cur_call = window.vertoHandle.newCall({ + destination_number: this.destination_number, + caller_id_name: this.caller_id_name, + caller_id_number: this.caller_id_number, + outgoingBandwidth: this.outgoingBandwidth, + incomingBandwidth: this.incomingBandwidth, + useVideo: this.useVideo, + useStereo: true, + useCamera: this.useCamera, + useMic: this.useMic, + useSpeak: 'any', + dedEnc: true, + tag: this.renderTag, + }); + this.logger(this.cur_call); +}; + +Verto.prototype.makeShare = function () { + if (this.share_call) { + this.logError('Quitting: Call already in progress'); + return; + } + + var screenInfo = null; + if (!!navigator.mozGetUserMedia) { + // no screen parameters for FF, just screenShare: true down below + screenInfo = {}; + this.doShare(screenInfo); + } else if (!!window.chrome) { + var _this = this; + if (!_this.chromeExtension) { + _this.logError({ + status: 'failed', + message: 'Missing Chrome Extension key', + }); + _this.onFail(); + return; + } + + // bring up Chrome screen picker + getMyScreenConstraints(function (constraints) { + if (constraints == null || constraints == "" || constraints.streamId == null || constraints.streamId == "") { + _this.onFail(); + return _this.logError(constraints); + } + + screenInfo = { + chromeMediaSource: "desktop", + chromeMediaSourceId: constraints.streamId, + }; + + _this.logger(screenInfo); + _this.doShare(screenInfo); + }, _this.chromeExtension); + } +}; + +Verto.prototype.doShare = function (screenConstraints) { + this.shouldConnect = true; + screenConstraints.maxWidth = this.vid_width; + screenConstraints.maxHeight = this.vid_height; + + this.share_call = window.vertoHandle.newCall({ + destination_number: this.destination_number, + caller_id_name: this.caller_id_name, + caller_id_number: this.caller_id_number, + outgoingBandwidth: "default", + incomingBandwidth: "default", + videoParams: screenConstraints, + useVideo: true, + screenShare: true, + dedEnc: true, + mirrorInput: false, + tag: this.renderTag, + }); + + var stopSharing = function() { + console.log("stopSharing"); + this.share_call.hangup(); + this.share_call = null; + }; + + var _this = this; + // Override onStream callback in $.FSRTC instance + this.share_call.rtc.options.callbacks.onStream = function (rtc, stream) { + _this.videoLoadingCallback(); + + if (stream) { + var StreamTrack = stream.getVideoTracks()[0]; + StreamTrack.addEventListener('ended', stopSharing.bind(_this)); + } + }; +}; + +Verto.prototype.init = function () { + this.cur_call = null; + + if (!window.vertoHandle) { + window.vertoHandle = new $.verto({ + useVideo: true, + login: this.login, + passwd: this.password, + socketUrl: this.socketUrl, + tag: this.renderTag, + ringFile: 'sounds/bell_ring2.wav', + sessid: this.sessid, + videoParams: { + minFrameRate: 15, + vertoBestFrameRate: 30, + }, + + deviceParams: { + useCamera: false, + useMic: false, + useSpeak: 'none', + }, + + audioParams: { + googAutoGainControl: false, + googNoiseSuppression: false, + googHighpassFilter: false, + }, + + iceServers: this.iceServers, + }, this.callbacks); + } else { + this.mediaCallback(); + return; + } +}; + +Verto.prototype.configStuns = function (callback) { + this.logger('Fetching STUN/TURN server info for Verto initialization'); + var _this = this; + var stunsConfig = {}; + + // flash client has api access. html5 user passes array. + // client provided no stuns and cannot make api calls + // use defaults in verto and try making a call + if (BBB.getSessionToken == undefined) { + // uses defaults + this.iceServers = true; + // run init callback + return callback(); + } + + // TODO: screensharing and audio use this exact same function. Should be + // moved to a shared library for retrieving stun/turn and just pass + // success/fail callbacks + BBB.getSessionToken(function(sessionToken) { + $.ajax({ + dataType: 'json', + url: '/bigbluebutton/api/stuns/', + data: {sessionToken}, + }).done(function (data) { + _this.logger('ajax request done'); + _this.logger(data); + if (data.response && data.response.returncode == 'FAILED') { + _this.logError(data.response.message, { error: true }); + _this.logError({ status: 'failed', errorcode: data.response.message }); + return; + } + + stunsConfig.stunServers = (data.stunServers ? data.stunServers.map(function (data) { + return { url: data.url }; + }) : []); + + stunsConfig.turnServers = (data.turnServers ? data.turnServers.map(function (data) { + return { + urls: data.url, + username: data.username, + credential: data.password, + }; + }) : []); + + stunsConfig = stunsConfig.stunServers.concat(stunsConfig.turnServers); + _this.logger('success got stun data, making verto'); + _this.iceServers = stunsConfig; + callback.apply(_this); + }).fail(function (data, textStatus, errorThrown) { + _this.logError({ status: 'failed', errorcode: 1009 }); + _this.onFail(); + return; + }); + }); +}; + +// checks whether Google Chrome or Firefox have the WebRTCPeerConnection object +Verto.prototype.isWebRTCAvailable = function () { + return (typeof window.webkitRTCPeerConnection !== 'undefined' || + typeof window.mozRTCPeerConnection !== 'undefined'); +}; + +this.VertoManager = function () { + this.vertoAudio = null; + this.vertoVideo = null; + this.vertoScreenShare = null; + window.vertoHandle = null; +}; + +Verto.prototype.logout = function () { + this.exitAudio(); + this.exitVideo(); + this.exitScreenShare(); + window.vertoHandle.logout(); +}; + +VertoManager.prototype.exitAudio = function () { + if (this.vertoAudio != null) { + console.log('Hanging up vertoAudio'); + this.vertoAudio.hangup(); + } +}; + +VertoManager.prototype.exitVideo = function () { + if (this.vertoVideo != null) { + console.log('Hanging up vertoVideo'); + this.vertoVideo.hangup(); + } +}; + +VertoManager.prototype.exitScreenShare = function () { + if (this.vertoScreenShare != null) { + console.log('Hanging up vertoScreenShare'); + this.vertoScreenShare.hangup(); + } +}; + +VertoManager.prototype.joinListenOnly = function (tag) { + this.exitAudio(); + + if (this.vertoAudio == null) { + var obj = Object.create(Verto.prototype); + Verto.apply(obj, arguments); + this.vertoAudio = obj; + } + + this.vertoAudio.setListenOnly(tag); +}; + +VertoManager.prototype.joinMicrophone = function (tag) { + this.exitAudio(); + + if (this.vertoAudio == null) { + var obj = Object.create(Verto.prototype); + Verto.apply(obj, arguments); + this.vertoAudio = obj; + } + + this.vertoAudio.setMicrophone(tag); +}; + +VertoManager.prototype.joinWatchVideo = function (tag) { + this.exitVideo(); + + if (this.vertoVideo == null) { + var obj = Object.create(Verto.prototype); + Verto.apply(obj, arguments); + this.vertoVideo = obj; + } + + this.vertoVideo.setWatchVideo(tag); +}; + +VertoManager.prototype.shareScreen = function (tag) { + this.exitScreenShare(); + + if (this.vertoScreenShare == null) { + var obj = Object.create(Verto.prototype); + Verto.apply(obj, arguments); + this.vertoScreenShare = obj; + } + + this.vertoScreenShare.setScreenShare(tag); +}; + +window.vertoInitialize = function () { + if (window.vertoManager == null || window.vertoManager == undefined) { + window.vertoManager = new VertoManager(); + } +}; + +window.vertoExitAudio = function () { + window.vertoInitialize(); + window.vertoManager.exitAudio(); +}; + +window.vertoExitVideo = function () { + window.vertoInitialize(); + window.vertoManager.exitVideo(); +}; + +window.vertoExitScreenShare = function () { + window.vertoInitialize(); + window.vertoManager.exitScreenShare(); +}; + +window.vertoJoinListenOnly = function () { + window.vertoInitialize(); + window.vertoManager.joinListenOnly.apply(window.vertoManager, arguments); +}; + +window.vertoJoinMicrophone = function () { + window.vertoInitialize(); + window.vertoManager.joinMicrophone.apply(window.vertoManager, arguments); +}; + +window.vertoWatchVideo = function () { + window.vertoInitialize(); + window.vertoManager.joinWatchVideo.apply(window.vertoManager, arguments); +}; + +window.vertoShareScreen = function () { + window.vertoInitialize(); + window.vertoManager.shareScreen.apply(window.vertoManager, arguments); +}; + +// a function to check whether the browser (Chrome only) is in an isIncognito +// session. Requires 1 mandatory callback that only gets called if the browser +// session is incognito. The callback for not being incognito is optional. +// Attempts to retrieve the chrome filesystem API. +window.checkIfIncognito = function(isIncognito, isNotIncognito = function () {}) { + isIncognito = Verto.normalizeCallback(isIncognito); + isNotIncognito = Verto.normalizeCallback(isNotIncognito); + + var fs = window.RequestFileSystem || window.webkitRequestFileSystem; + if (!fs) { + isNotIncognito(); + return; + } + fs(window.TEMPORARY, 100, function(){isNotIncognito()}, function(){isIncognito()}); +}; + +window.checkChromeExtInstalled = function (callback, chromeExtensionId) { + callback = Verto.normalizeCallback(callback); + + if (typeof chrome === "undefined" || !chrome || !chrome.runtime) { + // No API, so no extension for sure + callback(false); + return; + } + chrome.runtime.sendMessage( + chromeExtensionId, + { getVersion: true }, + function (response) { + if (!response || !response.version) { + // Communication failure - assume that no endpoint exists + callback(false); + return; + } + callback(true); + } + ); +} + +window.getMyScreenConstraints = function(theCallback, extensionId) { + theCallback = Verto.normalizeCallback(theCallback); + chrome.runtime.sendMessage(extensionId, { + getStream: true, + sources: [ + "window", + "screen", + "tab" + ]}, + function(response) { + console.log(response); + theCallback(response); + }); +}; diff --git a/bigbluebutton-html5/client/main.html b/bigbluebutton-html5/client/main.html index 8344297a488e8a26ce5370de565ce88f34071844..f4ced0416489d75b5a1bee589e2bd52c0553e678 100644 --- a/bigbluebutton-html5/client/main.html +++ b/bigbluebutton-html5/client/main.html @@ -46,11 +46,7 @@ </head> <body style="background-color: #06172A"> <div id="app" role="document"></div> - <script src="/client/lib/bowser.js"></script> - <script src="/client/lib/sip.js"></script> - <script src="/client/lib/bbb_webrtc_bridge_sip.js"></script> - <script src="/client/lib/bbblogger.js"></script> - <script src="/client/lib/jquery.json-2.4.min.js"></script> - <script src="/client/lib/verto-min.js"></script> - <script src="/client/lib/verto_extension.js"></script> + <audio id="remote-media" autoPlay="autoplay"> + <track kind="captions" /> {/* These captions are brought to you by eslint */} + </audio> </body> diff --git a/bigbluebutton-html5/client/main.jsx b/bigbluebutton-html5/client/main.jsx old mode 100755 new mode 100644 diff --git a/bigbluebutton-html5/client/stylesheets/bbb-icons.css b/bigbluebutton-html5/client/stylesheets/bbb-icons.css old mode 100755 new mode 100644 index efda7c393348ed712996ee5a1b21ec0d2bc671a2..98d69da5daff2fb30ba0d196fa883340ce26627a --- a/bigbluebutton-html5/client/stylesheets/bbb-icons.css +++ b/bigbluebutton-html5/client/stylesheets/bbb-icons.css @@ -53,7 +53,7 @@ .icon-bbb-fit_to_screen:before { content: "\e929"; } -.icon-bbb-linte_tool:before { +.icon-bbb-line_tool:before { content: "\e91c"; } .icon-bbb-circle_tool:before { diff --git a/bigbluebutton-html5/imports/api/annotations/server/methods/clearWhiteboard.js b/bigbluebutton-html5/imports/api/annotations/server/methods/clearWhiteboard.js index f34888838cdb1a8f5a07b3dcf6399f74650315b9..33a0eddeba6d1070f09b4234fb1c30c4aec556f5 100644 --- a/bigbluebutton-html5/imports/api/annotations/server/methods/clearWhiteboard.js +++ b/bigbluebutton-html5/imports/api/annotations/server/methods/clearWhiteboard.js @@ -5,7 +5,7 @@ import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; export default function clearWhiteboard(credentials, whiteboardId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'ClearWhiteboardPubMsg'; @@ -18,9 +18,7 @@ export default function clearWhiteboard(credentials, whiteboardId) { const allowed = Acl.can('methods.clearWhiteboard', credentials) || getMultiUserStatus(meetingId); if (!allowed) { - throw new Meteor.Error( - 'not-allowed', `User ${requesterUserId} is not allowed to clear the whiteboard`, - ); + throw new Meteor.Error('not-allowed', `User ${requesterUserId} is not allowed to clear the whiteboard`); } const payload = { diff --git a/bigbluebutton-html5/imports/api/annotations/server/methods/sendAnnotation.js b/bigbluebutton-html5/imports/api/annotations/server/methods/sendAnnotation.js index 0b24f0712b937424494abc7b7d298b60e3bb533d..99c16cb7a1ae65102c2d397d283d90a2cc0492fc 100644 --- a/bigbluebutton-html5/imports/api/annotations/server/methods/sendAnnotation.js +++ b/bigbluebutton-html5/imports/api/annotations/server/methods/sendAnnotation.js @@ -22,7 +22,7 @@ function isLastMessage(annotation, userId) { } export default function sendAnnotation(credentials, annotation) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'SendWhiteboardAnnotationPubMsg'; @@ -45,9 +45,7 @@ export default function sendAnnotation(credentials, annotation) { isLastMessage(annotation, requesterUserId); if (!allowed) { - throw new Meteor.Error( - 'not-allowed', `User ${requesterUserId} is not allowed to send an annotation`, - ); + throw new Meteor.Error('not-allowed', `User ${requesterUserId} is not allowed to send an annotation`); } const payload = { diff --git a/bigbluebutton-html5/imports/api/annotations/server/methods/undoAnnotation.js b/bigbluebutton-html5/imports/api/annotations/server/methods/undoAnnotation.js index ddb84a4d244e2ae0ee9b9c341e8c0495d6484468..aeaa01707613fd085f13f9aa54f2be7ba37c9ea0 100644 --- a/bigbluebutton-html5/imports/api/annotations/server/methods/undoAnnotation.js +++ b/bigbluebutton-html5/imports/api/annotations/server/methods/undoAnnotation.js @@ -5,7 +5,7 @@ import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; export default function undoAnnotation(credentials, whiteboardId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'UndoWhiteboardPubMsg'; @@ -18,9 +18,7 @@ export default function undoAnnotation(credentials, whiteboardId) { const allowed = Acl.can('methods.undoAnnotation', credentials) || getMultiUserStatus(meetingId); if (!allowed) { - throw new Meteor.Error( - 'not-allowed', `User ${requesterUserId} is not allowed to undo the annotation`, - ); + throw new Meteor.Error('not-allowed', `User ${requesterUserId} is not allowed to undo the annotation`); } const payload = { diff --git a/bigbluebutton-html5/imports/api/annotations/server/modifiers/addAnnotation.js b/bigbluebutton-html5/imports/api/annotations/server/modifiers/addAnnotation.js index ba11154b81ad76f6dc10b4fb6d1bed4434a56592..c5e0dda1e8f20c69fc336cb5055d65cc8ecb107f 100644 --- a/bigbluebutton-html5/imports/api/annotations/server/modifiers/addAnnotation.js +++ b/bigbluebutton-html5/imports/api/annotations/server/modifiers/addAnnotation.js @@ -7,7 +7,9 @@ const ANNOTATION_TYPE_PENCIL = 'pencil'; // line, triangle, ellipse, rectangle function handleCommonAnnotation(meetingId, whiteboardId, userId, annotation) { - const { id, status, annotationType, annotationInfo, wbId, position } = annotation; + const { + id, status, annotationType, annotationInfo, wbId, position, + } = annotation; const selector = { meetingId, @@ -33,7 +35,9 @@ function handleCommonAnnotation(meetingId, whiteboardId, userId, annotation) { } function handleTextUpdate(meetingId, whiteboardId, userId, annotation) { - const { id, status, annotationType, annotationInfo, wbId, position } = annotation; + const { + id, status, annotationType, annotationInfo, wbId, position, + } = annotation; const selector = { meetingId, @@ -67,10 +71,12 @@ function handlePencilUpdate(meetingId, whiteboardId, userId, annotation) { const DRAW_UPDATE = ANOTATION_STATUSES.update; const DRAW_END = ANOTATION_STATUSES.end; - const SERVER_CONFIG = Meteor.settings.app; + const SERVER_CONFIG = Meteor.settings.private.app; const PENCIL_CHUNK_SIZE = SERVER_CONFIG.pencilChunkLength || 100; - const { id, status, annotationType, annotationInfo, wbId, position } = annotation; + const { + id, status, annotationType, annotationInfo, wbId, position, + } = annotation; const baseSelector = { meetingId, diff --git a/bigbluebutton-html5/imports/api/captions/server/handlers/captionHistory.js b/bigbluebutton-html5/imports/api/captions/server/handlers/captionHistory.js index c3cca42eb793ec75440e9cc6911ac88618b5c2f4..2486b5e131e6950e6ee2983db173fb49ca800b93 100644 --- a/bigbluebutton-html5/imports/api/captions/server/handlers/captionHistory.js +++ b/bigbluebutton-html5/imports/api/captions/server/handlers/captionHistory.js @@ -1,57 +1,57 @@ -import _ from 'lodash'; -import Captions from '/imports/api/captions'; -import { check } from 'meteor/check'; -import addCaption from '../modifiers/addCaption'; - -export default function handleCaptionHistory({ body }, meetingId) { - const SERVER_CONFIG = Meteor.settings.app; - const CAPTION_CHUNK_LENGTH = SERVER_CONFIG.captionsChunkLength || 1000; - - const captionHistory = body.history; - - check(meetingId, String); - check(captionHistory, Object); - - const captionsAdded = []; - _.each(captionHistory, (caption, locale) => { - const ownerId = caption[0]; - let captions = caption[1].slice(0); - const chunks = []; - - if (captions.length === 0) { - chunks.push(''); - } else { - while (captions.length > 0) { - if (captions.length > CAPTION_CHUNK_LENGTH) { - chunks.push(captions.slice(0, CAPTION_CHUNK_LENGTH)); - captions = captions.slice(CAPTION_CHUNK_LENGTH); - } else { - chunks.push(captions); - captions = captions.slice(captions.length); - } - } - } - - const selectorToRemove = { - meetingId, - locale, - 'captionHistory.index': { $gt: (chunks.length - 1) }, - }; - - Captions.remove(selectorToRemove); - - chunks.forEach((chunkCaptions, index) => { - const captionHistoryObject = { - locale, - ownerId, - chunkCaptions, - index, - next: (index < chunks.length - 1) ? index + 1 : undefined, - }; - - captionsAdded.push(addCaption(meetingId, locale, captionHistoryObject)); - }); - }); - - return captionsAdded; -} +import _ from 'lodash'; +import Captions from '/imports/api/captions'; +import { check } from 'meteor/check'; +import addCaption from '../modifiers/addCaption'; + +export default function handleCaptionHistory({ body }, meetingId) { + const SERVER_CONFIG = Meteor.settings.private.app; + const CAPTION_CHUNK_LENGTH = SERVER_CONFIG.captionsChunkLength || 1000; + + const captionHistory = body.history; + + check(meetingId, String); + check(captionHistory, Object); + + const captionsAdded = []; + _.each(captionHistory, (caption, locale) => { + const ownerId = caption[0]; + let captions = caption[1].slice(0); + const chunks = []; + + if (captions.length === 0) { + chunks.push(''); + } else { + while (captions.length > 0) { + if (captions.length > CAPTION_CHUNK_LENGTH) { + chunks.push(captions.slice(0, CAPTION_CHUNK_LENGTH)); + captions = captions.slice(CAPTION_CHUNK_LENGTH); + } else { + chunks.push(captions); + captions = captions.slice(captions.length); + } + } + } + + const selectorToRemove = { + meetingId, + locale, + 'captionHistory.index': { $gt: (chunks.length - 1) }, + }; + + Captions.remove(selectorToRemove); + + chunks.forEach((chunkCaptions, index) => { + const captionHistoryObject = { + locale, + ownerId, + chunkCaptions, + index, + next: (index < chunks.length - 1) ? index + 1 : undefined, + }; + + captionsAdded.push(addCaption(meetingId, locale, captionHistoryObject)); + }); + }); + + return captionsAdded; +} diff --git a/bigbluebutton-html5/imports/api/captions/server/handlers/captionUpdate.js b/bigbluebutton-html5/imports/api/captions/server/handlers/captionUpdate.js index 1c10cfbf4131b87f9adfa077a63e51652519ad3e..caf067f0b68061fdd3e0731b2b6b51488bcdaa6e 100644 --- a/bigbluebutton-html5/imports/api/captions/server/handlers/captionUpdate.js +++ b/bigbluebutton-html5/imports/api/captions/server/handlers/captionUpdate.js @@ -1,178 +1,181 @@ -import Captions from '/imports/api/captions'; -import { check } from 'meteor/check'; -import addCaption from '../modifiers/addCaption'; - -export default function handleCaptionUpdate({ body }, meetingId) { - const SERVER_CONFIG = Meteor.settings.app; - const CAPTION_CHUNK_LENGTH = SERVER_CONFIG.captionsChunkLength || 1000; - - const { locale } = body; - - check(meetingId, String); - check(locale, String); - - const captionsObjects = Captions.find({ - meetingId, - locale, - }, { - sort: { - locale: 1, - 'captionHistory.index': 1, - }, - }).fetch(); - - const objectsToUpdate = []; - if (captionsObjects != null) { - let startIndex; - let endIndex; - let length = 0; - let current = captionsObjects[0]; - - // looking for a start index and end index - // (end index only for the case when they are in the same block) - while (current != null) { - length += current.captionHistory.captions.length; - - // if length is bigger than start index - we found our start index - if (length >= body.startIndex && startIndex == undefined) { - // check if it's a new character somewhere in the middle of captions text - if (length - 1 >= body.startIndex) { - startIndex = body.startIndex - (length - current.captionHistory.captions.length); - - // check to see if the endIndex is in the same object as startIndex - if (length - 1 >= body.endIndex) { - endIndex = body.endIndex - (length - current.captionHistory.captions.length); - const _captions = current.captionHistory.captions; - current.captionHistory.captions = _captions.slice(0, startIndex) + - body.text + - _captions.slice(endIndex); - objectsToUpdate.push(current); - break; - - // end index is not in the same object as startIndex, we will find it later - } else { - current.captionHistory.captions = current.captionHistory.captions.slice(0, startIndex) + - body.text; - objectsToUpdate.push(current); - break; - } - - // separate case for appending new characters to the very end of the string - } else if (current.captionHistory.next == null && - length == body.startIndex && - length == body.startIndex) { - startIndex = 1; - endIndex = 1; - current.captionHistory.captions += body.text; - objectsToUpdate.push(current); - } - } - - current = captionsObjects[current.captionHistory.next]; - } - - // looking for end index here if it wasn't in the same object as start index - if (startIndex != undefined && endIndex == undefined) { - current = captionsObjects[current.captionHistory.next]; - while (current != null) { - length += current.captionHistory.captions.length; - - // check to see if the endIndex is in the current object - if (length - 1 >= body.endIndex) { - endIndex = body.endIndex - (length - current.captionHistory.captions.length); - current.captionHistory.captions = current.captionHistory.captions.slice(endIndex); - objectsToUpdate.push(current); - - break; - - // if endIndex wasn't in the current object, that means this whole object was deleted - // initializing string to '' - } else { - current.captionHistory.captions = ''; - objectsToUpdate.push(current); - } - - current = captionsObjects[current.captionHistory.next]; - } - } - - // looking for the strings which exceed the limit and split them into multiple objects - let maxIndex = captionsObjects.length - 1; - for (let i = 0; i < objectsToUpdate.length; i++) { - if (objectsToUpdate[i].captionHistory.captions.length > CAPTION_CHUNK_LENGTH) { - // string is too large. Check if the next object exists and if it can - // accomodate the part of the string that exceeds the limits - const _nextIndex = objectsToUpdate[i].captionHistory.next; - if (_nextIndex != null && - captionsObjects[_nextIndex].captionHistory.captions.length < CAPTION_CHUNK_LENGTH) { - const extraString = objectsToUpdate[i].captionHistory.captions.slice(CAPTION_CHUNK_LENGTH); - - // could assign it directly, but our linter complained - let _captions = objectsToUpdate[i].captionHistory.captions; - _captions = _captions.slice(0, CAPTION_CHUNK_LENGTH); - objectsToUpdate[i].captionHistory.captions = _captions; - - // check to see if the next object was added to objectsToUpdate array - if (objectsToUpdate[i + 1] != null && - objectsToUpdate[i].captionHistory.next == objectsToUpdate[i + 1].captionHistory.index) { - objectsToUpdate[i + 1].captionHistory.captions = extraString + - objectsToUpdate[i + 1].captionHistory.captions; - - // next object wasn't added to objectsToUpdate array, adding it from captionsObjects array. - } else { - const nextObj = captionsObjects[objectsToUpdate[i].captionHistory.next]; - nextObj.captionHistory.captions = extraString + nextObj.captionHistory.captions; - objectsToUpdate.push(nextObj); - } - - // next object was full already, so we create another and insert it in between them - } else { - // need to take a current object out of the objectsToUpdate and add it back after - // every other object, so that Captions collection could be updated in a proper order - const tempObj = objectsToUpdate.splice(i, 1); - let extraString = tempObj[0].captionHistory.captions.slice(CAPTION_CHUNK_LENGTH); - - tempObj[0].captionHistory.captions = - tempObj[0].captionHistory.captions.slice(0, CAPTION_CHUNK_LENGTH); - - maxIndex += 1; - const tempIndex = tempObj[0].captionHistory.next; - tempObj[0].captionHistory.next = maxIndex; - - while (extraString.length != 0) { - const entry = { - meetingId, - locale, - captionHistory: { - locale, - ownerId: tempObj[0].captionHistory.ownerId, - captions: extraString.slice(0, CAPTION_CHUNK_LENGTH), - index: maxIndex, - next: null, - }, - }; - maxIndex += 1; - extraString = extraString.slice(CAPTION_CHUNK_LENGTH); - if (extraString.length > 0) { - entry.captionHistory.next = maxIndex; - } else { - entry.captionHistory.next = tempIndex; - } - - objectsToUpdate.push(entry); - } - - objectsToUpdate.push(tempObj[0]); - } - } - } - } - - const captionsAdded = []; - objectsToUpdate.forEach((entry) => { - const { _id, meetingId, locale, captionHistory } = entry; - captionsAdded.push(addCaption(meetingId, locale, captionHistory, _id)); - }); - - return captionsAdded; -} +import Captions from '/imports/api/captions'; +import { check } from 'meteor/check'; +import addCaption from '../modifiers/addCaption'; + +export default function handleCaptionUpdate({ body }, meetingId) { + const SERVER_CONFIG = Meteor.settings.private.app; + const CAPTION_CHUNK_LENGTH = SERVER_CONFIG.captionsChunkLength || 1000; + + const { locale } = body; + + check(meetingId, String); + check(locale, String); + + const captionsObjects = Captions.find({ + meetingId, + locale, + }, { + sort: { + locale: 1, + 'captionHistory.index': 1, + }, + }).fetch(); + + const objectsToUpdate = []; + if (captionsObjects != null) { + let startIndex; + let endIndex; + let length = 0; + let current = captionsObjects[0]; + + // looking for a start index and end index + // (end index only for the case when they are in the same block) + while (current != null) { + length += current.captionHistory.captions.length; + + // if length is bigger than start index - we found our start index + if (length >= body.startIndex && startIndex === undefined) { + // check if it's a new character somewhere in the middle of captions text + if (length - 1 >= body.startIndex) { + startIndex = body.startIndex - (length - current.captionHistory.captions.length); + + // check to see if the endIndex is in the same object as startIndex + if (length - 1 >= body.endIndex) { + endIndex = body.endIndex - (length - current.captionHistory.captions.length); + const _captions = current.captionHistory.captions; + current.captionHistory.captions = _captions.slice(0, startIndex) + + body.text + + _captions.slice(endIndex); + objectsToUpdate.push(current); + break; + + // end index is not in the same object as startIndex, we will find it later + } else { + current.captionHistory.captions = current.captionHistory.captions.slice(0, startIndex) + + body.text; + objectsToUpdate.push(current); + break; + } + + // separate case for appending new characters to the very end of the string + } else if (current.captionHistory.next == null && + length === body.startIndex && + length === body.startIndex) { + startIndex = 1; + endIndex = 1; + current.captionHistory.captions += body.text; + objectsToUpdate.push(current); + } + } + + current = captionsObjects[current.captionHistory.next]; + } + + // looking for end index here if it wasn't in the same object as start index + if (startIndex !== undefined && endIndex === undefined) { + current = captionsObjects[current.captionHistory.next]; + while (current != null) { + length += current.captionHistory.captions.length; + + // check to see if the endIndex is in the current object + if (length - 1 >= body.endIndex) { + endIndex = body.endIndex - (length - current.captionHistory.captions.length); + current.captionHistory.captions = current.captionHistory.captions.slice(endIndex); + objectsToUpdate.push(current); + + break; + + // if endIndex wasn't in the current object, that means this whole object was deleted + // initializing string to '' + } else { + current.captionHistory.captions = ''; + objectsToUpdate.push(current); + } + + current = captionsObjects[current.captionHistory.next]; + } + } + + // looking for the strings which exceed the limit and split them into multiple objects + let maxIndex = captionsObjects.length - 1; + for (let i = 0; i < objectsToUpdate.length; i += 1) { + if (objectsToUpdate[i].captionHistory.captions.length > CAPTION_CHUNK_LENGTH) { + // string is too large. Check if the next object exists and if it can + // accomodate the part of the string that exceeds the limits + const _nextIndex = objectsToUpdate[i].captionHistory.next; + if (_nextIndex != null && + captionsObjects[_nextIndex].captionHistory.captions.length < CAPTION_CHUNK_LENGTH) { + const extraString = objectsToUpdate[i].captionHistory.captions.slice(CAPTION_CHUNK_LENGTH); + + // could assign it directly, but our linter complained + let _captions = objectsToUpdate[i].captionHistory.captions; + _captions = _captions.slice(0, CAPTION_CHUNK_LENGTH); + objectsToUpdate[i].captionHistory.captions = _captions; + + // check to see if the next object was added to objectsToUpdate array + if (objectsToUpdate[i + 1] != null && + objectsToUpdate[i].captionHistory.next === objectsToUpdate[i + 1].captionHistory.index) { + objectsToUpdate[i + 1].captionHistory.captions = extraString + + objectsToUpdate[i + 1].captionHistory.captions; + + // next object wasn't added to objectsToUpdate array + // adding it from captionsObjects array. + } else { + const nextObj = captionsObjects[objectsToUpdate[i].captionHistory.next]; + nextObj.captionHistory.captions = extraString + nextObj.captionHistory.captions; + objectsToUpdate.push(nextObj); + } + + // next object was full already, so we create another and insert it in between them + } else { + // need to take a current object out of the objectsToUpdate and add it back after + // every other object, so that Captions collection could be updated in a proper order + const tempObj = objectsToUpdate.splice(i, 1); + let extraString = tempObj[0].captionHistory.captions.slice(CAPTION_CHUNK_LENGTH); + + tempObj[0].captionHistory.captions = + tempObj[0].captionHistory.captions.slice(0, CAPTION_CHUNK_LENGTH); + + maxIndex += 1; + const tempIndex = tempObj[0].captionHistory.next; + tempObj[0].captionHistory.next = maxIndex; + + while (extraString.length !== 0) { + const entry = { + meetingId, + locale, + captionHistory: { + locale, + ownerId: tempObj[0].captionHistory.ownerId, + captions: extraString.slice(0, CAPTION_CHUNK_LENGTH), + index: maxIndex, + next: null, + }, + }; + maxIndex += 1; + extraString = extraString.slice(CAPTION_CHUNK_LENGTH); + if (extraString.length > 0) { + entry.captionHistory.next = maxIndex; + } else { + entry.captionHistory.next = tempIndex; + } + + objectsToUpdate.push(entry); + } + + objectsToUpdate.push(tempObj[0]); + } + } + } + } + + const captionsAdded = []; + objectsToUpdate.forEach((entry) => { + const { + _id, captionHistory, + } = entry; + captionsAdded.push(addCaption(meetingId, locale, captionHistory, _id)); + }); + + return captionsAdded; +} diff --git a/bigbluebutton-html5/imports/api/chat/server/methods/clearPublicChatHistory.js b/bigbluebutton-html5/imports/api/chat/server/methods/clearPublicChatHistory.js index 35bf713a682591339737ba3dde3d7a226c6a7539..6805d4b2689983f96dc3a7426129f6615c809f15 100644 --- a/bigbluebutton-html5/imports/api/chat/server/methods/clearPublicChatHistory.js +++ b/bigbluebutton-html5/imports/api/chat/server/methods/clearPublicChatHistory.js @@ -3,7 +3,7 @@ import { check } from 'meteor/check'; import RedisPubSub from '/imports/startup/server/redis'; export default function clearPublicChatHistory(credentials) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const { meetingId, requesterUserId, requesterToken } = credentials; diff --git a/bigbluebutton-html5/imports/api/chat/server/methods/sendChat.js b/bigbluebutton-html5/imports/api/chat/server/methods/sendChat.js index e93dee56d407bc1dd7ab5729251077ecb0aba31d..5c0ecf86f5c424dda0f422699774711bfc3308da 100644 --- a/bigbluebutton-html5/imports/api/chat/server/methods/sendChat.js +++ b/bigbluebutton-html5/imports/api/chat/server/methods/sendChat.js @@ -27,7 +27,7 @@ const parseMessage = (message) => { }; export default function sendChat(credentials, message) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const CHAT_CONFIG = Meteor.settings.public.chat; @@ -50,6 +50,8 @@ export default function sendChat(credentials, message) { eventName = 'SendPublicMessagePubMsg'; } - return RedisPubSub.publishUserMessage(CHANNEL, eventName, meetingId, requesterUserId, - { message: parsedMessage }); + return RedisPubSub.publishUserMessage( + CHANNEL, eventName, meetingId, requesterUserId, + { message: parsedMessage }, + ); } diff --git a/bigbluebutton-html5/imports/api/cursor/server/methods/publishCursorUpdate.js b/bigbluebutton-html5/imports/api/cursor/server/methods/publishCursorUpdate.js index 93608939774271ec13980a1fbc79ff5d8840c936..bde4f486a8c7c44b6292998ac8d5e7234ce6a646 100644 --- a/bigbluebutton-html5/imports/api/cursor/server/methods/publishCursorUpdate.js +++ b/bigbluebutton-html5/imports/api/cursor/server/methods/publishCursorUpdate.js @@ -6,7 +6,7 @@ import { check } from 'meteor/check'; export default function publishCursorUpdate(credentials, payload) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'SendCursorPositionPubMsg'; @@ -22,9 +22,7 @@ export default function publishCursorUpdate(credentials, payload) { const allowed = Acl.can('methods.moveCursor', credentials) || getMultiUserStatus(meetingId); if (!allowed) { - throw new Meteor.Error( - 'not-allowed', `User ${requesterUserId} is not allowed to move the cursor`, - ); + throw new Meteor.Error('not-allowed', `User ${requesterUserId} is not allowed to move the cursor`); } return RedisPubSub.publishUserMessage(CHANNEL, EVENT_NAME, meetingId, requesterUserId, payload); diff --git a/bigbluebutton-html5/imports/api/meetings/server/methods/endMeeting.js b/bigbluebutton-html5/imports/api/meetings/server/methods/endMeeting.js index a563891295d5cf38fde22ad07ce6ea8356e8f606..c86dcbc4009d5d832ddcda80d1b2740969e1b688 100644 --- a/bigbluebutton-html5/imports/api/meetings/server/methods/endMeeting.js +++ b/bigbluebutton-html5/imports/api/meetings/server/methods/endMeeting.js @@ -4,7 +4,7 @@ import RedisPubSub from '/imports/startup/server/redis'; import Logger from '/imports/startup/server/logger'; export default function endMeeting(credentials) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'LogoutAndEndMeetingCmdMsg'; diff --git a/bigbluebutton-html5/imports/api/polls/server/methods/publishVote.js b/bigbluebutton-html5/imports/api/polls/server/methods/publishVote.js index 011f21411ea431862f1bc721a256a38e9f9d5033..8cebcc3cadc5a2c6a352f9b308e824b232fb1b11 100644 --- a/bigbluebutton-html5/imports/api/polls/server/methods/publishVote.js +++ b/bigbluebutton-html5/imports/api/polls/server/methods/publishVote.js @@ -4,7 +4,7 @@ import Polls from '/imports/api/polls'; import Logger from '/imports/startup/server/logger'; export default function publishVote(credentials, id, pollAnswerId) { // TODO discuss location - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'RespondToPollReqMsg'; diff --git a/bigbluebutton-html5/imports/api/presentations/server/methods/removePresentation.js b/bigbluebutton-html5/imports/api/presentations/server/methods/removePresentation.js index 97b450995ec445b1a4925e48a8cdd2162c469269..28d780b260e22a18dbb6f7aa94cd5c5fe9a71f80 100644 --- a/bigbluebutton-html5/imports/api/presentations/server/methods/removePresentation.js +++ b/bigbluebutton-html5/imports/api/presentations/server/methods/removePresentation.js @@ -4,7 +4,7 @@ import Presentations from '/imports/api/presentations'; export default function removePresentation(credentials, presentationId) { const PRESENTATION_CONFIG = Meteor.settings.public.presentation; - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'RemovePresentationPubMsg'; diff --git a/bigbluebutton-html5/imports/api/presentations/server/methods/setPresentation.js b/bigbluebutton-html5/imports/api/presentations/server/methods/setPresentation.js index 26fb25e9dd4b4da6db784bcae25f8e23cdee7b1a..3a82d64ef0018e924ba650f62f32484a69cb05a4 100644 --- a/bigbluebutton-html5/imports/api/presentations/server/methods/setPresentation.js +++ b/bigbluebutton-html5/imports/api/presentations/server/methods/setPresentation.js @@ -3,7 +3,7 @@ import { check } from 'meteor/check'; import Presentations from '/imports/api/presentations'; export default function setPresentation(credentials, presentationId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'SetCurrentPresentationPubMsg'; diff --git a/bigbluebutton-html5/imports/api/screenshare/client/bridge/index.js b/bigbluebutton-html5/imports/api/screenshare/client/bridge/index.js index 5b953b2ea43f93c1add309adf8b5eb185d52ae17..2c6f548690c4ffbe20d8352b7ef5dab2392630e5 100644 --- a/bigbluebutton-html5/imports/api/screenshare/client/bridge/index.js +++ b/bigbluebutton-html5/imports/api/screenshare/client/bridge/index.js @@ -1,5 +1,7 @@ import VertoBridge from './verto'; +import KurentoBridge from './kurento'; -const screenshareBridge = new VertoBridge(); +//const screenshareBridge = new VertoBridge(); +const screenshareBridge = new KurentoBridge(); export default screenshareBridge; diff --git a/bigbluebutton-html5/imports/api/screenshare/client/bridge/kurento.js b/bigbluebutton-html5/imports/api/screenshare/client/bridge/kurento.js new file mode 100755 index 0000000000000000000000000000000000000000..77e10ef49f17aa622bb35ba843f86e073fd885d6 --- /dev/null +++ b/bigbluebutton-html5/imports/api/screenshare/client/bridge/kurento.js @@ -0,0 +1,51 @@ +import Users from '/imports/api/users'; +import Auth from '/imports/ui/services/auth'; +import BridgeService from './service'; + +const CHROME_EXTENSION_KEY = Meteor.settings.public.kurento.chromeExtensionKey; + +const getUserId = () => { + const userID = Auth.userID; + return userID; +} + +const getMeetingId = () => { + const meetingID = Auth.meetingID; + return meetingID; +} + +const getUsername = () => { + return Users.findOne({ userId: getUserId() }).name; +} + +export default class KurentoScreenshareBridge { + kurentoWatchVideo() { + window.kurentoWatchVideo( + 'screenshareVideo', + BridgeService.getConferenceBridge(), + getUsername(), + getMeetingId(), + null, + null, + ); + } + + kurentoExitVideo() { + window.kurentoExitVideo(); + } + + kurentoShareScreen() { + window.kurentoShareScreen( + 'screenshareVideo', + BridgeService.getConferenceBridge(), + getUsername(), + getMeetingId(), + null, + CHROME_EXTENSION_KEY, + ); + } + + kurentoExitScreenShare() { + window.kurentoExitScreenShare(); + } +} diff --git a/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStarted.js b/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStarted.js index 92b24864c11fe4e244538a58fc0f594d61cdcbe8..aacc7d1eeab570c5cbd5169f0105164bccd2c99d 100644 --- a/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStarted.js +++ b/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStarted.js @@ -1,7 +1,7 @@ import { check } from 'meteor/check'; import addScreenshare from '../modifiers/addScreenshare'; -export default function handleBroadcastStartedVoice({ body }, meetingId) { +export default function handleScreenshareStarted({ body }, meetingId) { check(meetingId, String); check(body, Object); diff --git a/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStopped.js b/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStopped.js index d0308ab5a312c3de18cc23175ce23e9237a92372..11e2871f0c7fb7ab0ad494fd8bb5336774b4fd55 100644 --- a/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStopped.js +++ b/bigbluebutton-html5/imports/api/screenshare/server/handlers/screenshareStopped.js @@ -1,7 +1,7 @@ import { check } from 'meteor/check'; import clearScreenshare from '../modifiers/clearScreenshare'; -export default function handleBroadcastStartedVoice({ body }, meetingId) { +export default function handleScreenshareStopped({ body }, meetingId) { const { screenshareConf } = body; check(meetingId, String); diff --git a/bigbluebutton-html5/imports/api/slides/server/methods/switchSlide.js b/bigbluebutton-html5/imports/api/slides/server/methods/switchSlide.js index 6cfead8ce108166325920b4b52cea70706936ea5..b748b4ff691ad19e13501da0b0208b900879991c 100644 --- a/bigbluebutton-html5/imports/api/slides/server/methods/switchSlide.js +++ b/bigbluebutton-html5/imports/api/slides/server/methods/switchSlide.js @@ -5,7 +5,7 @@ import { check } from 'meteor/check'; import RedisPubSub from '/imports/startup/server/redis'; export default function switchSlide(credentials, slideNumber) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'SetCurrentPagePubMsg'; @@ -25,8 +25,7 @@ export default function switchSlide(credentials, slideNumber) { const Presentation = Presentations.findOne(selector); if (!Presentation) { - throw new Meteor.Error( - 'presentation-not-found', 'You need a presentation to be able to switch slides'); + throw new Meteor.Error('presentation-not-found', 'You need a presentation to be able to switch slides'); } const Slide = Slides.findOne({ @@ -36,8 +35,7 @@ export default function switchSlide(credentials, slideNumber) { }); if (!Slide) { - throw new Meteor.Error( - 'slide-not-found', `Slide number ${slideNumber} not found in the current presentation`); + throw new Meteor.Error('slide-not-found', `Slide number ${slideNumber} not found in the current presentation`); } const payload = { diff --git a/bigbluebutton-html5/imports/api/slides/server/modifiers/addSlide.js b/bigbluebutton-html5/imports/api/slides/server/modifiers/addSlide.js index 64bcfc9bada2af0530214048c4303a2654412933..d9d9262fed20e82c01ba2a085b92dd066f01a880 100644 --- a/bigbluebutton-html5/imports/api/slides/server/modifiers/addSlide.js +++ b/bigbluebutton-html5/imports/api/slides/server/modifiers/addSlide.js @@ -9,7 +9,7 @@ import { SVG, PNG } from '/imports/utils/mimeTypes'; import calculateSlideData from '/imports/api/slides/server/helpers'; const requestWhiteboardHistory = (meetingId, slideId) => { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'GetWhiteboardAnnotationsReqMsg'; const USER_ID = 'nodeJSapp'; @@ -27,9 +27,7 @@ const fetchImageSizes = imageUri => probe(imageUri) .then((result) => { if (!SUPPORTED_TYPES.includes(result.mime)) { - throw new Meteor.Error( - 'invalid-image-type', `received ${result.mime} expecting ${SUPPORTED_TYPES.join()}`, - ); + throw new Meteor.Error('invalid-image-type', `received ${result.mime} expecting ${SUPPORTED_TYPES.join()}`); } return { diff --git a/bigbluebutton-html5/imports/api/users/server/methods.js b/bigbluebutton-html5/imports/api/users/server/methods.js index 4aa61b73a820007222945324e240caf0e0303291..0e20f98f4b15ee5997b73ed85207438f62f5e1d8 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods.js +++ b/bigbluebutton-html5/imports/api/users/server/methods.js @@ -5,15 +5,15 @@ import validateAuthToken from './methods/validateAuthToken'; import setEmojiStatus from './methods/setEmojiStatus'; import assignPresenter from './methods/assignPresenter'; import changeRole from './methods/changeRole'; -import kickUser from './methods/kickUser'; +import removeUser from './methods/removeUser'; Meteor.methods(mapToAcl(['methods.userLogout', 'methods.setEmojiStatus', 'methods.assignPresenter', 'methods.changeRole', - 'methods.kickUser'], { + 'methods.removeUser'], { userLogout, setEmojiStatus, assignPresenter, changeRole, - kickUser, + removeUser, })); Meteor.methods({ validateAuthToken, }); diff --git a/bigbluebutton-html5/imports/api/users/server/methods/assignPresenter.js b/bigbluebutton-html5/imports/api/users/server/methods/assignPresenter.js index 8b4727e31cd468ce2a998bfb3caa59f82a8524b7..add2afe1d06beac5bdc405a88f64344d849f3084 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/assignPresenter.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/assignPresenter.js @@ -5,7 +5,7 @@ import Logger from '/imports/startup/server/logger'; import Users from '/imports/api/users'; export default function assignPresenter(credentials, userId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'AssignPresenterReqMsg'; diff --git a/bigbluebutton-html5/imports/api/users/server/methods/changeRole.js b/bigbluebutton-html5/imports/api/users/server/methods/changeRole.js index ada268d17e34ac6584f0d0a04df9afe0ef3623e9..beff64791c4a9654e1c0213050b1ad43b41d121c 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/changeRole.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/changeRole.js @@ -5,7 +5,7 @@ import Logger from '/imports/startup/server/logger'; import Users from '/imports/api/users'; export default function changeRole(credentials, userId, role) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'ChangeUserRoleCmdMsg'; @@ -22,8 +22,7 @@ export default function changeRole(credentials, userId, role) { }); if (!User) { - throw new Meteor.Error( - 'user-not-found', `You need a valid user to be able to set '${role}'`); + throw new Meteor.Error('user-not-found', `You need a valid user to be able to set '${role}'`); } const payload = { diff --git a/bigbluebutton-html5/imports/api/users/server/methods/kickUser.js b/bigbluebutton-html5/imports/api/users/server/methods/removeUser.js similarity index 83% rename from bigbluebutton-html5/imports/api/users/server/methods/kickUser.js rename to bigbluebutton-html5/imports/api/users/server/methods/removeUser.js index b9aed12653043a833600551d435f4be75a96ccbf..80d90ec221d9a27e1e9ba862d8c07cf592ea9a47 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/kickUser.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/removeUser.js @@ -2,8 +2,8 @@ import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; import RedisPubSub from '/imports/startup/server/redis'; -export default function kickUser(credentials, userId) { - const REDIS_CONFIG = Meteor.settings.redis; +export default function removeUser(credentials, userId) { + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'EjectUserFromMeetingCmdMsg'; diff --git a/bigbluebutton-html5/imports/api/users/server/methods/setEmojiStatus.js b/bigbluebutton-html5/imports/api/users/server/methods/setEmojiStatus.js index aacd08dd21eea5c4dbe7f9db3abc5faf3317aec6..c63e65ed058183e52592ab45f7ca6adfc6bc3c3a 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/setEmojiStatus.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/setEmojiStatus.js @@ -4,7 +4,7 @@ import RedisPubSub from '/imports/startup/server/redis'; import Logger from '/imports/startup/server/logger'; export default function setEmojiStatus(credentials, userId, status) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'ChangeUserEmojiCmdMsg'; diff --git a/bigbluebutton-html5/imports/api/users/server/methods/userJoin.js b/bigbluebutton-html5/imports/api/users/server/methods/userJoin.js index a3de48d80e69af87a609c268719f0da08bbd16eb..b182fff2c0c8920efdcfe3146299dfcde80bc061 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/userJoin.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/userJoin.js @@ -4,7 +4,7 @@ import RedisPubSub from '/imports/startup/server/redis'; import Logger from '/imports/startup/server/logger'; export default function userJoin(meetingId, userId, authToken) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'UserJoinMeetingReqMsg'; diff --git a/bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js b/bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js index 678e9daf810a22f3ccc76963c09396a78a3a0dfe..87663d2786dbb1d46b6e53cb6d94c314454503d4 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/userLeaving.js @@ -7,7 +7,7 @@ import Users from '/imports/api/users'; const OFFLINE_CONNECTION_STATUS = 'offline'; export default function userLeaving(credentials, userId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'UserLeaveReqMsg'; @@ -24,8 +24,7 @@ export default function userLeaving(credentials, userId) { const User = Users.findOne(selector); if (!User) { - throw new Meteor.Error( - 'user-not-found', `Could not find ${userId} in ${meetingId}: cannot complete userLeaving`); + throw new Meteor.Error('user-not-found', `Could not find ${userId} in ${meetingId}: cannot complete userLeaving`); } if (User.connectionStatus === OFFLINE_CONNECTION_STATUS) { diff --git a/bigbluebutton-html5/imports/api/users/server/methods/validateAuthToken.js b/bigbluebutton-html5/imports/api/users/server/methods/validateAuthToken.js index ee14153561432ef184cf14cf4951b863cdbe5a2d..95c33053e1778fe3ad437e597e9b784de640f88b 100644 --- a/bigbluebutton-html5/imports/api/users/server/methods/validateAuthToken.js +++ b/bigbluebutton-html5/imports/api/users/server/methods/validateAuthToken.js @@ -9,7 +9,7 @@ import setConnectionStatus from '../modifiers/setConnectionStatus'; const ONLINE_CONNECTION_STATUS = 'online'; export default function validateAuthToken(credentials) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'ValidateAuthTokenReqMsg'; @@ -37,7 +37,7 @@ export default function validateAuthToken(credentials) { Logger.info(`User '${ requesterUserId - }' is trying to validate auth token for meeting '${meetingId}'`); + }' is trying to validate auth token for meeting '${meetingId}'`); return RedisPubSub.publishUserMessage(CHANNEL, EVENT_NAME, meetingId, requesterUserId, payload); } diff --git a/bigbluebutton-html5/imports/api/video/server/eventHandlers.js b/bigbluebutton-html5/imports/api/video/server/eventHandlers.js new file mode 100644 index 0000000000000000000000000000000000000000..0e773b08eafe12ba8138ab8523b8a4c2e5196a82 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/eventHandlers.js @@ -0,0 +1,6 @@ +import RedisPubSub from '/imports/startup/server/redis'; +import handleUserSharedHtml5Webcam from './handlers/userSharedHtml5Webcam'; +import handleUserUnsharedHtml5Webcam from './handlers/userUnsharedHtml5Webcam'; + +RedisPubSub.on('UserBroadcastCamStartedEvtMsg', handleUserSharedHtml5Webcam); +RedisPubSub.on('UserBroadcastCamStoppedEvtMsg', handleUserUnsharedHtml5Webcam); diff --git a/bigbluebutton-html5/imports/api/video/server/handlers/userSharedHtml5Webcam.js b/bigbluebutton-html5/imports/api/video/server/handlers/userSharedHtml5Webcam.js new file mode 100644 index 0000000000000000000000000000000000000000..b3f0d3e53845e7d20c86b117433c480f3e9f2ecf --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/handlers/userSharedHtml5Webcam.js @@ -0,0 +1,19 @@ +import sharedWebcam from '../modifiers/sharedWebcam'; +import { check } from 'meteor/check'; + +export default function handleUserSharedHtml5Webcam({ header, body }, meetingId ) { + const { userId, stream } = body; + const isValidStream = Match.Where((stream) => { + check(stream, String); + // Checking if the stream name is a flash one + const regexp = /^([A-z0-9]+)-([A-z0-9]+)-([A-z0-9]+)(-recorded)?$/; + return !regexp.test(stream); + }); + + check(header, Object); + check(meetingId, String); + check(userId, String); + check(stream, isValidStream); + + return sharedWebcam(meetingId, userId); +} diff --git a/bigbluebutton-html5/imports/api/video/server/handlers/userUnsharedHtml5Webcam.js b/bigbluebutton-html5/imports/api/video/server/handlers/userUnsharedHtml5Webcam.js new file mode 100644 index 0000000000000000000000000000000000000000..bf1bfeae17856318c5a75b27bf5c58ab9688c322 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/handlers/userUnsharedHtml5Webcam.js @@ -0,0 +1,19 @@ +import unsharedWebcam from '../modifiers/unsharedWebcam'; +import { check } from 'meteor/check'; + +export default function handleUserUnsharedHtml5Webcam({ header, body }, meetingId) { + const { userId, stream } = body; + const isValidStream = Match.Where((stream) => { + check(stream, String); + // Checking if the stream name is a flash one + const regexp = /^([A-z0-9]+)-([A-z0-9]+)-([A-z0-9]+)(-recorded)?$/; + return !regexp.test(stream); + }); + + check(header, Object); + check(meetingId, String); + check(userId, String); + check(stream, isValidStream); + + return unsharedWebcam(meetingId, userId); +} diff --git a/bigbluebutton-html5/imports/api/video/server/index.js b/bigbluebutton-html5/imports/api/video/server/index.js new file mode 100644 index 0000000000000000000000000000000000000000..9a7510e23ef5b6306a53e4b5743c7810976a3c18 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/index.js @@ -0,0 +1,2 @@ +import './eventHandlers'; +import './methods'; diff --git a/bigbluebutton-html5/imports/api/video/server/methods.js b/bigbluebutton-html5/imports/api/video/server/methods.js new file mode 100644 index 0000000000000000000000000000000000000000..1f1dd46f1096c1479436e90cf776da4d57c1ac2f --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/methods.js @@ -0,0 +1,7 @@ +import { Meteor } from 'meteor/meteor'; +import userShareWebcam from './methods/userShareWebcam'; +import userUnshareWebcam from './methods/userUnshareWebcam'; + +Meteor.methods({ + userShareWebcam, userUnshareWebcam, +}); diff --git a/bigbluebutton-html5/imports/api/video/server/methods/userShareWebcam.js b/bigbluebutton-html5/imports/api/video/server/methods/userShareWebcam.js new file mode 100644 index 0000000000000000000000000000000000000000..5873500523dd6ddab8e7953308014edebfeaf428 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/methods/userShareWebcam.js @@ -0,0 +1,31 @@ +import { Meteor } from 'meteor/meteor'; +import { check } from 'meteor/check'; +import Logger from '/imports/startup/server/logger'; +import RedisPubSub from '/imports/startup/server/redis'; + +export default function userShareWebcam(credentials, message) { + const REDIS_CONFIG = Meteor.settings.private.redis; + const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; + const EVENT_NAME = 'UserBroadcastCamStartMsg'; + + const { meetingId, requesterUserId, requesterToken } = credentials; + + Logger.info(' user sharing webcam: ', credentials); + + check(meetingId, String); + check(requesterUserId, String); + check(requesterToken, String); + // check(message, Object); + + // const actionName = 'joinVideo'; + /* TODO throw an error if user has no permission to share webcam + if (!isAllowedTo(actionName, credentials)) { + throw new Meteor.Error('not-allowed', `You are not allowed to share webcam`); + } */ + + const payload = { + stream: message, + }; + + return RedisPubSub.publishUserMessage(CHANNEL, EVENT_NAME, meetingId, requesterUserId, payload); +} diff --git a/bigbluebutton-html5/imports/api/video/server/methods/userUnshareWebcam.js b/bigbluebutton-html5/imports/api/video/server/methods/userUnshareWebcam.js new file mode 100644 index 0000000000000000000000000000000000000000..9e562e07457e183408840d2111b8b73a7ab2a60d --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/methods/userUnshareWebcam.js @@ -0,0 +1,31 @@ +import { Meteor } from 'meteor/meteor'; +import { check } from 'meteor/check'; +import Logger from '/imports/startup/server/logger'; +import RedisPubSub from '/imports/startup/server/redis'; + +export default function userUnshareWebcam(credentials, message) { + const REDIS_CONFIG = Meteor.settings.private.redis; + const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; + const EVENT_NAME = 'UserBroadcastCamStopMsg'; + + const { meetingId, requesterUserId, requesterToken } = credentials; + + Logger.info(' user unsharing webcam: ', credentials); + + check(meetingId, String); + check(requesterUserId, String); + check(requesterToken, String); + // check(message, Object); + + // const actionName = 'joinVideo'; + /* TODO throw an error if user has no permission to share webcam + if (!isAllowedTo(actionName, credentials)) { + throw new Meteor.Error('not-allowed', `You are not allowed to share webcam`); + } */ + + const payload = { + stream: message, + }; + + return RedisPubSub.publishUserMessage(CHANNEL, EVENT_NAME, meetingId, requesterUserId, payload); +} diff --git a/bigbluebutton-html5/imports/api/video/server/modifiers/sharedWebcam.js b/bigbluebutton-html5/imports/api/video/server/modifiers/sharedWebcam.js new file mode 100644 index 0000000000000000000000000000000000000000..749407ffc44860feb53b2389a2f68ce6d2e60bf5 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/modifiers/sharedWebcam.js @@ -0,0 +1,33 @@ +import Logger from '/imports/startup/server/logger'; +import Users from '/imports/api/users'; +import { check } from 'meteor/check'; + +export default function sharedWebcam(meetingId, userId) { + check(meetingId, String); + check(userId, String); + + const selector = { + meetingId, + userId, + }; + + const modifier = { + $set: { + meetingId, + userId, + has_stream: true, + }, + }; + + const cb = (err, numChanged) => { + if (err) { + return Logger.error(`Adding user to collection: ${err}`); + } + + if (numChanged) { + return Logger.info(`Upserted user id=${userId} meeting=${meetingId}`); + } + }; + + return Users.upsert(selector, modifier, cb); +} diff --git a/bigbluebutton-html5/imports/api/video/server/modifiers/unsharedWebcam.js b/bigbluebutton-html5/imports/api/video/server/modifiers/unsharedWebcam.js new file mode 100644 index 0000000000000000000000000000000000000000..0ef8f0be36d552cd1610f739b30515f75308fac2 --- /dev/null +++ b/bigbluebutton-html5/imports/api/video/server/modifiers/unsharedWebcam.js @@ -0,0 +1,33 @@ +import Logger from '/imports/startup/server/logger'; +import Users from '/imports/api/users'; +import { check } from 'meteor/check'; + +export default function unsharedWebcam(meetingId, userId) { + check(meetingId, String); + check(userId, String); + + const selector = { + meetingId, + userId, + }; + + const modifier = { + $set: { + meetingId, + userId, + has_stream: false, + }, + }; + + const cb = (err, numChanged) => { + if (err) { + return Logger.error(`Adding user to collection: ${err}`); + } + + if (numChanged) { + return Logger.info(`Upserted user id=${userId} meeting=${meetingId}`); + } + }; + + return Users.upsert(selector, modifier, cb); +} diff --git a/bigbluebutton-html5/imports/api/voice-users/server/handlers/leftVoiceUser.js b/bigbluebutton-html5/imports/api/voice-users/server/handlers/leftVoiceUser.js index 5fb2e788b3a950300cc9b731ad6bae99e35389f7..2bfee14015ac597f5e24c5746aecfe27c0e70ddd 100644 --- a/bigbluebutton-html5/imports/api/voice-users/server/handlers/leftVoiceUser.js +++ b/bigbluebutton-html5/imports/api/voice-users/server/handlers/leftVoiceUser.js @@ -13,8 +13,14 @@ export default function handleVoiceUpdate({ body }, meetingId) { voiceUserId: String, }); - const { intId } = voiceUser; + const { intId, voiceUserId } = voiceUser; + + const isDialInUser = (voiceUserId) => { + return voiceUserId && (voiceUserId[0] == 'v'); + } + + // if the user is dial-in, leaving voice also means leaving userlist + if(isDialInUser(voiceUserId)) removeUser(meetingId, intId); - removeUser(meetingId, intId); return removeVoiceUser(meetingId, voiceUser); } diff --git a/bigbluebutton-html5/imports/api/voice-users/server/methods/ejectUserFromVoice.js b/bigbluebutton-html5/imports/api/voice-users/server/methods/ejectUserFromVoice.js index 73c61eb95baa8bb86a72a3318873895c2c284d3d..bc8fe6f20054cbb59ed1247923aa65583b1e5b89 100644 --- a/bigbluebutton-html5/imports/api/voice-users/server/methods/ejectUserFromVoice.js +++ b/bigbluebutton-html5/imports/api/voice-users/server/methods/ejectUserFromVoice.js @@ -3,7 +3,7 @@ import { check } from 'meteor/check'; import RedisPubSub from '/imports/startup/server/redis'; export default function ejectUserFromVoice(credentials, userId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'EjectUserFromVoiceCmdMsg'; diff --git a/bigbluebutton-html5/imports/api/voice-users/server/methods/listenOnlyToggle.js b/bigbluebutton-html5/imports/api/voice-users/server/methods/listenOnlyToggle.js index 38077b43feb48b1826aaac672513801be95c871f..fc53115057a4911f4051049b86d9d2dca97e42dc 100644 --- a/bigbluebutton-html5/imports/api/voice-users/server/methods/listenOnlyToggle.js +++ b/bigbluebutton-html5/imports/api/voice-users/server/methods/listenOnlyToggle.js @@ -6,7 +6,7 @@ import Meetings from '/imports/api/meetings'; import VoiceUsers from '/imports/api/voice-users'; export default function listenOnlyToggle(credentials, isJoining = true) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const { meetingId, requesterUserId } = credentials; @@ -30,8 +30,7 @@ export default function listenOnlyToggle(credentials, isJoining = true) { const Meeting = Meetings.findOne({ meetingId }); if (!VoiceUser) { - throw new Meteor.Error( - 'user-not-found', 'You need a valid user to be able to toggle audio'); + throw new Meteor.Error('user-not-found', 'You need a valid user to be able to toggle audio'); } // check(User.user.name, String); diff --git a/bigbluebutton-html5/imports/api/voice-users/server/methods/muteToggle.js b/bigbluebutton-html5/imports/api/voice-users/server/methods/muteToggle.js index ea1d4dedd33eacfab09d102f91d291917435a43a..a5377f177326825bc6c7c38fa038575aeebc7936 100644 --- a/bigbluebutton-html5/imports/api/voice-users/server/methods/muteToggle.js +++ b/bigbluebutton-html5/imports/api/voice-users/server/methods/muteToggle.js @@ -5,7 +5,7 @@ import Users from '/imports/api/users'; import VoiceUsers from '/imports/api/voice-users'; export default function muteToggle(credentials, userId) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'MuteUserCmdMsg'; const APP_CONFIG = Meteor.settings.public.app; diff --git a/bigbluebutton-html5/imports/api/whiteboard-multi-user/server/methods/changeWhiteboardAccess.js b/bigbluebutton-html5/imports/api/whiteboard-multi-user/server/methods/changeWhiteboardAccess.js index a1edfb3afa8210f5942a16571ba0a8523cdb12ed..92c7ff86f57e20aaea29644355532b19905a4586 100644 --- a/bigbluebutton-html5/imports/api/whiteboard-multi-user/server/methods/changeWhiteboardAccess.js +++ b/bigbluebutton-html5/imports/api/whiteboard-multi-user/server/methods/changeWhiteboardAccess.js @@ -3,7 +3,7 @@ import { Meteor } from 'meteor/meteor'; import { check } from 'meteor/check'; export default function changeWhiteboardAccess(credentials, multiUser) { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'ModifyWhiteboardAccessPubMsg'; diff --git a/bigbluebutton-html5/imports/startup/client/auth.js b/bigbluebutton-html5/imports/startup/client/auth.js index bc4c15923e7f84347e637bc2876760413e1d0c3d..b87b1c735cc03aebf52220c8d6e4d266b883f483 100644 --- a/bigbluebutton-html5/imports/startup/client/auth.js +++ b/bigbluebutton-html5/imports/startup/client/auth.js @@ -35,9 +35,6 @@ export function logoutRouteHandler(nextState, replace) { protocolPattern.test(logoutURL) ? logoutURL : `http://${logoutURL}`; - }) - .catch(() => { - replace({ pathname: '/error/500' }); }); } diff --git a/bigbluebutton-html5/imports/startup/client/base.jsx b/bigbluebutton-html5/imports/startup/client/base.jsx index 1967e0580d0d460196a815347eb71065020cd8ae..e81a75c6421494d370155c5ca0a8c4401b577515 100644 --- a/bigbluebutton-html5/imports/startup/client/base.jsx +++ b/bigbluebutton-html5/imports/startup/client/base.jsx @@ -1,10 +1,11 @@ import React, { Component } from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { withRouter } from 'react-router'; import PropTypes from 'prop-types'; import Auth from '/imports/ui/services/auth'; import AppContainer from '/imports/ui/components/app/container'; import ErrorScreen from '/imports/ui/components/error-screen/component'; +import MeetingEnded from '/imports/ui/components/meeting-ended/component'; import LoadingScreen from '/imports/ui/components/loading-screen/component'; import Settings from '/imports/ui/services/settings'; import IntlStartup from './intl'; @@ -14,12 +15,14 @@ const propTypes = { errorCode: PropTypes.number, subscriptionsReady: PropTypes.bool.isRequired, locale: PropTypes.string, + endedCode: PropTypes.string, }; const defaultProps = { error: undefined, errorCode: undefined, locale: undefined, + endedCode: undefined, }; class Base extends Component { @@ -54,6 +57,9 @@ class Base extends Component { const { loading, error } = this.state; const { subscriptionsReady, errorCode } = this.props; + const { endedCode } = this.props.params; + + if (endedCode) return (<MeetingEnded code={endedCode} />); if (error || errorCode) { return (<ErrorScreen code={errorCode}>{error}</ErrorScreen>); @@ -84,10 +90,10 @@ Base.defaultProps = defaultProps; const SUBSCRIPTIONS_NAME = [ 'users', 'chat', 'cursor', 'meetings', 'polls', 'presentations', 'annotations', - 'slides', 'captions', 'breakouts', 'voiceUsers', 'whiteboard-multi-user', + 'slides', 'captions', 'breakouts', 'voiceUsers', 'whiteboard-multi-user', 'screenshare', ]; -const BaseContainer = withRouter(createContainer(({ params, router }) => { +const BaseContainer = withRouter(withTracker(({ params, router }) => { if (params.errorCode) return params; if (!Auth.loggedIn) { @@ -96,6 +102,7 @@ const BaseContainer = withRouter(createContainer(({ params, router }) => { const { credentials } = Auth; + const subscriptionErrorHandler = { onError: (error) => { console.error(error); @@ -106,10 +113,11 @@ const BaseContainer = withRouter(createContainer(({ params, router }) => { const subscriptionsHandlers = SUBSCRIPTIONS_NAME.map(name => Meteor.subscribe(name, credentials, subscriptionErrorHandler)); + return { locale: Settings.application.locale, subscriptionsReady: subscriptionsHandlers.every(handler => handler.ready()), }; -}, Base)); +})(Base)); export default BaseContainer; diff --git a/bigbluebutton-html5/imports/startup/client/routes.js b/bigbluebutton-html5/imports/startup/client/routes.js index d7b43af13718c98b5600847f6906fdb7e7612f4d..f396812ae71284a456c183fe58a3dc5347165621 100644 --- a/bigbluebutton-html5/imports/startup/client/routes.js +++ b/bigbluebutton-html5/imports/startup/client/routes.js @@ -5,7 +5,7 @@ import { createHistory } from 'history'; import LoadingScreen from '/imports/ui/components/loading-screen/component'; import ChatContainer from '/imports/ui/components/chat/container'; import UserListContainer from '/imports/ui/components/user-list/container'; - +import MeetingEnded from '/imports/ui/components/meeting-ended/component'; import { joinRouteHandler, logoutRouteHandler, authenticatedRouteHandler } from './auth'; import Base from './base'; @@ -35,6 +35,7 @@ const renderRoutes = () => ( /> <Redirect from="users/chat" to="/users/chat/public" /> </Route> + <Route name="meeting-ended" path="/ended/:endedCode" component={Base} /> <Route name="error" path="/error/:errorCode" component={Base} /> <Redirect from="*" to="/error/404" /> </Router> diff --git a/bigbluebutton-html5/imports/startup/server/index.js b/bigbluebutton-html5/imports/startup/server/index.js index 34a859972f8986ec0832ac74d3de56a875950f8b..41ffed6aace191fd27a0fd0edfc08899abb68b51 100644 --- a/bigbluebutton-html5/imports/startup/server/index.js +++ b/bigbluebutton-html5/imports/startup/server/index.js @@ -1,16 +1,12 @@ import { Meteor } from 'meteor/meteor'; +import Langmap from 'langmap'; +import fs from 'fs'; import Logger from './logger'; import Redis from './redis'; -import locales from '../../utils/locales'; - -let DEFAULT_LANGUAGE = null; -const availableLocales = []; Meteor.startup(() => { const APP_CONFIG = Meteor.settings.public.app; - Logger.info(`SERVER STARTED. ENV=${Meteor.settings.runtime.env}`, APP_CONFIG); - - DEFAULT_LANGUAGE = Meteor.settings.public.app.defaultSettings.application.locale + Logger.info(`SERVER STARTED. DEV_ENV=${Meteor.isDevelopment} PROD_ENV=${Meteor.isProduction}`, APP_CONFIG); }); WebApp.connectHandlers.use('/check', (req, res) => { @@ -24,7 +20,7 @@ WebApp.connectHandlers.use('/check', (req, res) => { WebApp.connectHandlers.use('/locale', (req, res) => { const APP_CONFIG = Meteor.settings.public.app; const defaultLocale = APP_CONFIG.defaultSettings.application.locale; - const localeRegion = req.query.locale.split(/[-_]/g);; + const localeRegion = req.query.locale.split(/[-_]/g); const localeList = [defaultLocale, localeRegion[0]]; let normalizedLocale = localeRegion[0]; @@ -34,12 +30,11 @@ WebApp.connectHandlers.use('/locale', (req, res) => { normalizedLocale = `${localeRegion[0]}_${localeRegion[1].toUpperCase()}`; localeList.push(normalizedLocale); } - localeList.forEach((locale) => { try { const data = Assets.getText(`locales/${locale}.json`); messages = Object.assign(messages, JSON.parse(data)); - normalizedLocale = locale + normalizedLocale = locale; } catch (e) { // Getting here means the locale is not available on the files. } @@ -50,15 +45,26 @@ WebApp.connectHandlers.use('/locale', (req, res) => { }); WebApp.connectHandlers.use('/locales', (req, res) => { - if (!availableLocales.length) { - locales.forEach((l) => { - try { - Assets.absoluteFilePath(`locales/${l.locale}.json`); - availableLocales.push(l); - } catch (e) { - // Getting here means the locale is not available on the files. - } - }); + const APP_CONFIG = Meteor.settings.public.app; + const defaultLocale = APP_CONFIG.defaultSettings.application.locale; + + let availableLocales = []; + + const defaultLocaleFile = `${defaultLocale}.json`; + const defaultLocalePath = `locales/${defaultLocaleFile}`; + const localesPath = Assets.absoluteFilePath(defaultLocalePath).replace(defaultLocaleFile, ''); + + try { + const getAvailableLocales = fs.readdirSync(localesPath); + availableLocales = getAvailableLocales + .map(file => file.replace('.json', '')) + .map(file => file.replace('_', '-')) + .map(locale => ({ + locale, + name: Langmap[locale].nativeName, + })); + } catch (e) { + // Getting here means the locale is not available on the files. } res.setHeader('Content-Type', 'application/json'); diff --git a/bigbluebutton-html5/imports/startup/server/logger.js b/bigbluebutton-html5/imports/startup/server/logger.js index 360c75656fed0ab71303ce0884d3c8676a564b74..25226349319cec1a258e07082b21c0de04f743c9 100644 --- a/bigbluebutton-html5/imports/startup/server/logger.js +++ b/bigbluebutton-html5/imports/startup/server/logger.js @@ -4,7 +4,9 @@ import Winston from 'winston'; const Logger = new Winston.Logger(); Logger.configure({ - levels: { error: 0, warn: 1, info: 2, verbose: 3, debug: 4 }, + levels: { + error: 0, warn: 1, info: 2, verbose: 3, debug: 4, + }, colors: { error: 'red', warn: 'yellow', @@ -23,15 +25,15 @@ Logger.add(Winston.transports.Console, { }); Meteor.startup(() => { - const LOG_CONFIG = Meteor.settings.log || {}; - let filename = LOG_CONFIG.filename; + const LOG_CONFIG = Meteor.settings.private.log || {}; + let { filename } = LOG_CONFIG; // Set Logger message level priority for the console Logger.transports.console.level = LOG_CONFIG.level; // Determine file to write logs to if (filename) { - if (Meteor.settings.runtime.env === 'development') { + if (Meteor.isDevelopment) { const path = Npm.require('path'); filename = path.join(process.env.PWD, filename); } diff --git a/bigbluebutton-html5/imports/startup/server/redis.js b/bigbluebutton-html5/imports/startup/server/redis.js index f92704e568c5feeb4845ac6d9a20ace967c2b3e0..47fcdd140f0984ab39e29837ac815c725f17e492 100644 --- a/bigbluebutton-html5/imports/startup/server/redis.js +++ b/bigbluebutton-html5/imports/startup/server/redis.js @@ -47,8 +47,8 @@ class MettingMessageQueue { const { envelope } = data.parsedMessage; const { header } = data.parsedMessage.core; const { body } = data.parsedMessage.core; + const { meetingId } = header; const eventName = header.name; - const meetingId = header.meetingId; const isAsync = this.asyncMessages.includes(channel) || this.asyncMessages.includes(eventName); @@ -91,7 +91,6 @@ class MettingMessageQueue { } class RedisPubSub { - static handlePublishError(err) { if (err) { Logger.error(err); @@ -136,7 +135,7 @@ class RedisPubSub { if (this.didSendRequestEvent) return; // populate collections with pre-existing data - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; const CHANNEL = REDIS_CONFIG.channels.toAkkaApps; const EVENT_NAME = 'GetAllMeetingsReqMsg'; @@ -235,7 +234,7 @@ class RedisPubSub { const RedisPubSubSingleton = new RedisPubSub(); Meteor.startup(() => { - const REDIS_CONFIG = Meteor.settings.redis; + const REDIS_CONFIG = Meteor.settings.private.redis; RedisPubSubSingleton.updateConfig(REDIS_CONFIG); RedisPubSubSingleton.init(); diff --git a/bigbluebutton-html5/imports/ui/components/about/container.jsx b/bigbluebutton-html5/imports/ui/components/about/container.jsx index ea2dc8fb964e907249ed8acc38811beace0260ea..6999424fe6d79549065865496c76fb9845c87b21 100644 --- a/bigbluebutton-html5/imports/ui/components/about/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/about/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import AboutComponent from './component'; @@ -16,4 +16,4 @@ const getClientBuildInfo = function () { }; }; -export default createContainer(() => getClientBuildInfo(), AboutContainer); +export default withTracker(() => getClientBuildInfo())(AboutContainer); diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/actions-dropdown/component.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/actions-dropdown/component.jsx index 97a7174b025cf7defe285639e811044edf78298e..c0b37f152422e21e5ec2efd39e6b0046b45b8b81 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/actions-dropdown/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/actions-dropdown/component.jsx @@ -1,17 +1,15 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { defineMessages, injectIntl, intlShape } from 'react-intl'; - import Button from '/imports/ui/components/button/component'; import Dropdown from '/imports/ui/components/dropdown/component'; import DropdownTrigger from '/imports/ui/components/dropdown/trigger/component'; import DropdownContent from '/imports/ui/components/dropdown/content/component'; import DropdownList from '/imports/ui/components/dropdown/list/component'; import DropdownListItem from '/imports/ui/components/dropdown/list/item/component'; - import PresentationUploaderContainer from '/imports/ui/components/presentation/presentation-uploader/container'; import { withModalMounter } from '/imports/ui/components/modal/service'; -import styles from '../styles'; +import { styles } from '../styles'; const propTypes = { isUserPresenter: PropTypes.bool.isRequired, @@ -32,6 +30,22 @@ const intlMessages = defineMessages({ id: 'app.actionsBar.actionsDropdown.presentationDesc', description: 'adds context to upload presentation option', }, + desktopShareLabel: { + id: 'app.actionsBar.actionsDropdown.desktopShareLabel', + description: 'Desktop Share option label', + }, + stopDesktopShareLabel: { + id: 'app.actionsBar.actionsDropdown.stopDesktopShareLabel', + description: 'Stop Desktop Share option label', + }, + desktopShareDesc: { + id: 'app.actionsBar.actionsDropdown.desktopShareDesc', + description: 'adds context to desktop share option', + }, + stopDesktopShareDesc: { + id: 'app.actionsBar.actionsDropdown.stopDesktopShareDesc', + description: 'adds context to stop desktop share option', + }, }); class ActionsDropdown extends Component { @@ -40,6 +54,11 @@ class ActionsDropdown extends Component { this.handlePresentationClick = this.handlePresentationClick.bind(this); } + componentWillMount() { + this.presentationItemId = _.uniqueId('action-item-'); + this.videoItemId = _.uniqueId('action-item-'); + } + componentWillUpdate(nextProps) { const { isUserPresenter: isPresenter } = nextProps; const { isUserPresenter: wasPresenter, mountModal } = this.props; @@ -52,8 +71,44 @@ class ActionsDropdown extends Component { this.props.mountModal(<PresentationUploaderContainer />); } + getAvailableActions() { + const { + intl, + handleShareScreen, + handleUnshareScreen, + isVideoBroadcasting, + } = this.props; + + return _.compact([ + (<DropdownListItem + icon="presentation" + label={intl.formatMessage(intlMessages.presentationLabel)} + description={intl.formatMessage(intlMessages.presentationDesc)} + key={this.presentationItemId} + onClick={this.handlePresentationClick} + />), + (Meteor.settings.public.kurento.enableScreensharing ? + <DropdownListItem + icon="desktop" + label={intl.formatMessage(isVideoBroadcasting ? intlMessages.stopDesktopShareLabel : intlMessages.desktopShareLabel)} + description={intl.formatMessage(isVideoBroadcasting ? intlMessages.stopDesktopShareDesc : intlMessages.desktopShareDesc)} + key={this.videoItemId} + onClick={isVideoBroadcasting ? handleUnshareScreen : handleShareScreen } + /> + : null), + ]); + } + render() { - const { intl, isUserPresenter } = this.props; + const { + intl, + isUserPresenter, + handleShareScreen, + handleUnshareScreen, + isVideoBroadcasting, + } = this.props; + + const availableActions = this.getAvailableActions(); if (!isUserPresenter) return null; @@ -74,12 +129,7 @@ class ActionsDropdown extends Component { </DropdownTrigger> <DropdownContent placement="top left"> <DropdownList> - <DropdownListItem - icon="presentation" - label={intl.formatMessage(intlMessages.presentationLabel)} - description={intl.formatMessage(intlMessages.presentationDesc)} - onClick={this.handlePresentationClick} - /> + {availableActions} </DropdownList> </DropdownContent> </Dropdown> diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx index 74482af8407f3fe4d6d71c3eb91d014b6a897779..13381e57dcb707dc83825e65a55a2b42dc55e1ec 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/component.jsx @@ -1,25 +1,53 @@ import React from 'react'; -import styles from './styles.scss'; +import cx from 'classnames'; +import { styles } from './styles.scss'; import EmojiSelect from './emoji-select/component'; import ActionsDropdown from './actions-dropdown/component'; import AudioControlsContainer from '../audio/audio-controls/container'; +import JoinVideoOptionsContainer from '../video-dock/video-menu/container'; -const ActionsBar = ({ - isUserPresenter, - emojiList, - emojiSelected, - handleEmojiChange, -}) => ( - <div className={styles.actionsbar}> - <div className={styles.left}> - <ActionsDropdown {...{ isUserPresenter }} /> - </div> - <div className={styles.center}> - <AudioControlsContainer /> - {/* <JoinVideo /> */} - <EmojiSelect options={emojiList} selected={emojiSelected} onChange={handleEmojiChange} /> - </div> - </div> -); +class ActionsBar extends React.PureComponent { + render() { + const { + isUserPresenter, + handleExitVideo, + handleJoinVideo, + handleShareScreen, + handleUnshareScreen, + isVideoBroadcasting, + emojiList, + emojiSelected, + handleEmojiChange, + } = this.props; + + const actionBarClasses = {}; + actionBarClasses[styles.centerWithActions] = isUserPresenter; + actionBarClasses[styles.center] = true; + + return ( + <div className={styles.actionsbar}> + <div className={styles.left}> + <ActionsDropdown {...{ + isUserPresenter, + handleShareScreen, + handleUnshareScreen, + isVideoBroadcasting, + }} + /> + </div> + <div className={isUserPresenter ? cx(styles.centerWithActions, actionBarClasses) : styles.center}> + <AudioControlsContainer /> + {Meteor.settings.public.kurento.enableVideo ? + <JoinVideoOptionsContainer + handleJoinVideo={handleJoinVideo} + handleCloseVideo={handleExitVideo} + /> + : null} + <EmojiSelect options={emojiList} selected={emojiSelected} onChange={handleEmojiChange} /> + </div> + </div> + ); + } +} export default ActionsBar; diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/container.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/container.jsx index 943d138689e941a85ebf25c44ffb0dffbb5f31a6..6792290e4d0e9bc8f792c63efb66585740829053 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/container.jsx @@ -1,13 +1,21 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import ActionsBar from './component'; import Service from './service'; +import VideoService from '../video-dock/service'; +import { shareScreen, unshareScreen, isVideoBroadcasting } from '../screenshare/service'; const ActionsBarContainer = props => <ActionsBar {...props} />; -export default createContainer(() => ({ +export default withTracker(() => ({ isUserPresenter: Service.isUserPresenter(), emojiList: Service.getEmojiList(), emojiSelected: Service.getEmoji(), handleEmojiChange: Service.setEmoji, -}), ActionsBarContainer); + handleExitVideo: () => VideoService.exitVideo(), + handleJoinVideo: () => VideoService.joinVideo(), + handleShareScreen: () => shareScreen(), + handleUnshareScreen: () => unshareScreen(), + isVideoBroadcasting: isVideoBroadcasting(), + +}))(ActionsBarContainer); diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/emoji-select/component.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/emoji-select/component.jsx index 2ba85150eb402e0e533759ed2632e0b5c35e34cc..5462e5586e4c623303d9a3347a1d6d1fbc09fb1a 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/emoji-select/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/emoji-select/component.jsx @@ -9,7 +9,7 @@ import DropdownContent from '/imports/ui/components/dropdown/content/component'; import DropdownList from '/imports/ui/components/dropdown/list/component'; import DropdownListItem from '/imports/ui/components/dropdown/list/item/component'; import DropdownListSeparator from '/imports/ui/components/dropdown/list/separator/component'; -import styles from '../styles'; +import { styles } from '../styles'; const intlMessages = defineMessages({ statusTriggerLabel: { diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/styles.scss b/bigbluebutton-html5/imports/ui/components/actions-bar/styles.scss index 968f74547b7783ae93a2f47f7de1c8b7cd883d0a..40d8d74bf344ec61f15f3619063525bf48db5191 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/styles.scss @@ -13,16 +13,28 @@ justify-content: center; > * { - margin: 0 $line-height-computed; + margin: 0 $sm-padding-x; + + @include mq($small-only) { + margin: 0 $sm-padding-y; + } } } .left{ position: absolute; + @include mq($small-only) { + bottom: $sm-padding-x; + left: $sm-padding-x; + } } -.center { - align-items: center; +.centerWithActions { + @include mq($xsmall-only) { + position: absolute; + bottom: $sm-padding-x; + right: $sm-padding-x; + } } .button { diff --git a/bigbluebutton-html5/imports/ui/components/actions-bar/video-button/component.jsx b/bigbluebutton-html5/imports/ui/components/actions-bar/video-button/component.jsx index 7cdbe22ac2a5df1da1dddfc67a2d46183c2547fe..71bd4c06e87b5e9a3e11701a57b06d13a887fe04 100644 --- a/bigbluebutton-html5/imports/ui/components/actions-bar/video-button/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/actions-bar/video-button/component.jsx @@ -1,6 +1,6 @@ import React from 'react'; import Button from '/imports/ui/components/button/component'; -// import styles from '../styles.scss'; +// import { styles } from '../styles.scss'; export default class JoinVideo extends React.Component { diff --git a/bigbluebutton-html5/imports/ui/components/app/component.jsx b/bigbluebutton-html5/imports/ui/components/app/component.jsx index c12233cb70c94832dee4fd4fd16f67c1b052d904..eaa3f40354ae6245a9a840c2edb71860c75068b0 100644 --- a/bigbluebutton-html5/imports/ui/components/app/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/app/component.jsx @@ -9,7 +9,7 @@ import ModalContainer from '../modal/container'; import NotificationsBarContainer from '../notifications-bar/container'; import AudioContainer from '../audio/container'; import ChatNotificationContainer from '../chat/notification/container'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ userListLabel: { diff --git a/bigbluebutton-html5/imports/ui/components/app/container.jsx b/bigbluebutton-html5/imports/ui/components/app/container.jsx index 88abd7c9b6e1e4d076700b4a8e27247437c05537..2963ce14ace6f4651309b3c9d1f146c71e7ffac5 100644 --- a/bigbluebutton-html5/imports/ui/components/app/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/app/container.jsx @@ -1,5 +1,5 @@ import React, { cloneElement } from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { withRouter } from 'react-router'; import { defineMessages, injectIntl } from 'react-intl'; import PropTypes from 'prop-types'; @@ -27,7 +27,7 @@ const propTypes = { navbar: PropTypes.node, actionsbar: PropTypes.node, media: PropTypes.node, - location: PropTypes.object.isRequired, + location: PropTypes.shape({}).isRequired, }; const defaultProps = { @@ -37,18 +37,10 @@ const defaultProps = { }; const intlMessages = defineMessages({ - kickedMessage: { - id: 'app.error.kicked', - description: 'Message when the user is kicked out of the meeting', - }, waitingApprovalMessage: { id: 'app.guest.waiting', description: 'Message while a guest is waiting to be approved', }, - endMeetingMessage: { - id: 'app.error.meeting.ended', - description: 'You have logged out of the conference', - }, }); const AppContainer = (props) => { @@ -72,8 +64,8 @@ const AppContainer = (props) => { ); }; -export default withRouter(injectIntl(withModalMounter(createContainer(( - { router, intl, baseControls }) => { + +export default withRouter(injectIntl(withModalMounter(withTracker(({ router, intl, baseControls }) => { const currentUser = Users.findOne({ userId: Auth.userID }); const isMeetingBreakout = meetingIsBreakout(); @@ -81,20 +73,20 @@ export default withRouter(injectIntl(withModalMounter(createContainer(( baseControls.updateLoadingState(intl.formatMessage(intlMessages.waitingApprovalMessage)); } - // Displayed error messages according to the mode (kicked, end meeting) + // Displayed error messages according to the mode (removed, end meeting) const sendToError = (code, message) => { Auth.clearCredentials() - .then(() => { - router.push(`/error/${code}`); - baseControls.updateErrorState(message); - }); + .then(() => { + router.push(`/error/${code}`); + baseControls.updateErrorState(message); + }); }; - // Check if user is kicked out of the session + // Check if user is removed out of the session Users.find({ userId: Auth.userID }).observeChanges({ changed(id, fields) { if (fields.ejected) { - sendToError(403, intl.formatMessage(intlMessages.kickedMessage)); + router.push(`/ended/${403}`); } }, }); @@ -103,7 +95,7 @@ export default withRouter(injectIntl(withModalMounter(createContainer(( Meetings.find({ meetingId: Auth.meetingID }).observeChanges({ removed() { if (isMeetingBreakout) return; - sendToError(410, intl.formatMessage(intlMessages.endMeetingMessage)); + router.push(`/ended/${410}`); }, }); @@ -118,7 +110,7 @@ export default withRouter(injectIntl(withModalMounter(createContainer(( closedCaption: getCaptionsStatus() ? <ClosedCaptionsContainer /> : null, fontSize: getFontSize(), }; -}, AppContainer)))); +})(AppContainer)))); AppContainer.defaultProps = defaultProps; AppContainer.propTypes = propTypes; diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/component.jsx index f03be42938e3da9c42dfd6fdacacebb6a55e048a..043a7d7c2e66a375b89adb592b5b28d901daa7fd 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/component.jsx @@ -2,10 +2,9 @@ import React from 'react'; import PropTypes from 'prop-types'; import { defineMessages, intlShape, injectIntl } from 'react-intl'; import Button from '/imports/ui/components/button/component'; -import styles from './styles'; +import { styles } from './styles'; import cx from 'classnames'; - const intlMessages = defineMessages({ joinAudio: { id: 'app.audio.joinAudio', @@ -34,6 +33,11 @@ const propTypes = { mute: PropTypes.bool.isRequired, join: PropTypes.bool.isRequired, intl: intlShape.isRequired, + glow: PropTypes.bool, +}; + +const defaultProps = { + glow: false, }; const AudioControls = ({ @@ -56,9 +60,9 @@ const AudioControls = ({ hideLabel label={unmute ? intl.formatMessage(intlMessages.unmuteAudio) : intl.formatMessage(intlMessages.muteAudio)} aria-label={unmute ? intl.formatMessage(intlMessages.unmuteAudio) : intl.formatMessage(intlMessages.muteAudio)} - color={'primary'} + color="primary" icon={unmute ? 'mute' : 'unmute'} - size={'lg'} + size="lg" circle /> : null} <Button @@ -70,11 +74,12 @@ const AudioControls = ({ label={join ? intl.formatMessage(intlMessages.leaveAudio) : intl.formatMessage(intlMessages.joinAudio)} color={join ? 'danger' : 'primary'} icon={join ? 'audio_off' : 'audio_on'} - size={'lg'} + size="lg" circle /> </span>); AudioControls.propTypes = propTypes; +AudioControls.defaultProps = defaultProps; export default injectIntl(AudioControls); diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/container.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/container.jsx index 83c595cb064c76983fdebc287c9a320e824485de..51578831f3ca51845c74adb06735c635abaa86ca 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { withModalMounter } from '/imports/ui/components/modal/service'; import AudioControls from './component'; import AudioModalContainer from '../audio-modal/container'; @@ -7,14 +7,14 @@ import Service from '../service'; const AudioControlsContainer = props => <AudioControls {...props} />; -export default withModalMounter(createContainer(({ mountModal }) => - ({ - mute: Service.isConnected() && !Service.isListenOnly() && !Service.isEchoTest(), - unmute: Service.isConnected() && !Service.isListenOnly() && Service.isMuted(), - join: Service.isConnected() && !Service.isEchoTest(), - disable: Service.isConnecting() || Service.isHangingUp(), - glow: Service.isTalking() && !Service.isMuted(), - handleToggleMuteMicrophone: () => Service.toggleMuteMicrophone(), - handleJoinAudio: () => mountModal(<AudioModalContainer />), - handleLeaveAudio: () => Service.exitAudio(), - }), AudioControlsContainer)); +export default withModalMounter(withTracker(({ mountModal }) => + ({ + mute: Service.isConnected() && !Service.isListenOnly() && !Service.isEchoTest(), + unmute: Service.isConnected() && !Service.isListenOnly() && Service.isMuted(), + join: Service.isConnected() && !Service.isEchoTest(), + disable: Service.isConnecting() || Service.isHangingUp(), + glow: Service.isTalking() && !Service.isMuted(), + handleToggleMuteMicrophone: () => Service.toggleMuteMicrophone(), + handleJoinAudio: () => mountModal(<AudioModalContainer />), + handleLeaveAudio: () => Service.exitAudio(), + }))(AudioControlsContainer)); diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/styles.scss b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/styles.scss index 4b5d13f9fd037a273a45065fa787db35198a81e1..35e30706d1ea0fc851229a435e4c82ac68dbe210 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-controls/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-controls/styles.scss @@ -1,9 +1,15 @@ +@import "/imports/ui/stylesheets/variables/_all"; + .container { display: flex; flex-flow: row; > * { - margin: 0 1rem; + margin: 0 $sm-padding-x; + + @include mq($small-only) { + margin: 0 $sm-padding-y; + } span:first-child { box-shadow: 0 2px 5px 0 rgb(0, 0, 0); diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-modal/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-modal/component.jsx index 012a4caf8536274488ac776e7f130a21967d1555..ae9f35fc94ed2bc6afa79bb7ce5b30e997a2cc1e 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-modal/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-modal/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import ModalBase from '/imports/ui/components/modal/base/component'; import Button from '/imports/ui/components/button/component'; import { defineMessages, injectIntl, intlShape } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; import PermissionsOverlay from '../permissions-overlay/component'; import AudioSettings from '../audio-settings/component'; import EchoTest from '../echo-test/component'; diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-modal/container.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-modal/container.jsx index 543fe3e91b61dea0ff57fd3d54b2d16e9dc87144..b69051954fc5d59eed6d171846025cd7cd5ff111 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-modal/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-modal/container.jsx @@ -1,41 +1,41 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { withModalMounter } from '/imports/ui/components/modal/service'; import AudioModal from './component'; import Service from '../service'; const AudioModalContainer = props => <AudioModal {...props} />; -export default withModalMounter(createContainer(({ mountModal }) => - ({ - closeModal: () => { - if (!Service.isConnecting()) mountModal(null); - }, - joinMicrophone: () => - new Promise((resolve, reject) => { - Service.transferCall().then(() => { - mountModal(null); - resolve(); - }).catch(() => { - Service.exitAudio(); - reject(); - }); - }), - joinListenOnly: () => Service.joinListenOnly().then(() => mountModal(null)), - leaveEchoTest: () => { - if (!Service.isEchoTest()) { - return Promise.resolve(); - } - return Service.exitAudio(); - }, - changeInputDevice: inputDeviceId => Service.changeInputDevice(inputDeviceId), - changeOutputDevice: outputDeviceId => Service.changeOutputDevice(outputDeviceId), - joinEchoTest: () => Service.joinEchoTest(), - exitAudio: () => Service.exitAudio(), - isConnecting: Service.isConnecting(), - isConnected: Service.isConnected(), - isEchoTest: Service.isEchoTest(), - inputDeviceId: Service.inputDeviceId(), - outputDeviceId: Service.outputDeviceId(), - showPermissionsOvelay: Service.isWaitingPermissions(), - }), AudioModalContainer)); +export default withModalMounter(withTracker(({ mountModal }) => + ({ + closeModal: () => { + if (!Service.isConnecting()) mountModal(null); + }, + joinMicrophone: () => + new Promise((resolve, reject) => { + Service.transferCall().then(() => { + mountModal(null); + resolve(); + }).catch(() => { + Service.exitAudio(); + reject(); + }); + }), + joinListenOnly: () => Service.joinListenOnly().then(() => mountModal(null)), + leaveEchoTest: () => { + if (!Service.isEchoTest()) { + return Promise.resolve(); + } + return Service.exitAudio(); + }, + changeInputDevice: inputDeviceId => Service.changeInputDevice(inputDeviceId), + changeOutputDevice: outputDeviceId => Service.changeOutputDevice(outputDeviceId), + joinEchoTest: () => Service.joinEchoTest(), + exitAudio: () => Service.exitAudio(), + isConnecting: Service.isConnecting(), + isConnected: Service.isConnected(), + isEchoTest: Service.isEchoTest(), + inputDeviceId: Service.inputDeviceId(), + outputDeviceId: Service.outputDeviceId(), + showPermissionsOvelay: Service.isWaitingPermissions(), + }))(AudioModalContainer)); diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-settings/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-settings/component.jsx index 848caa5e1c79e4d266c34d87f9d0f2ebd4060760..65984d34fdd3b7311add6268c239e3df18cd83de 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-settings/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-settings/component.jsx @@ -6,7 +6,7 @@ import { withModalMounter } from '/imports/ui/components/modal/service'; import DeviceSelector from '/imports/ui/components/audio/device-selector/component'; import AudioTestContainer from '/imports/ui/components/audio/audio-test/container'; import cx from 'classnames'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { intl: intlShape.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-test/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-test/component.jsx index cb57d7fca081160092b97dbdcf90301e0eb41c36..cd89de97c77e44d43181147eabd23815b2f3e431 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-test/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-test/component.jsx @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import { defineMessages, intlShape, injectIntl } from 'react-intl'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const propTypes = { intl: intlShape.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/audio/audio-test/container.jsx b/bigbluebutton-html5/imports/ui/components/audio/audio-test/container.jsx index 8e74d4fb66e964df7834c81b5cc31effa0395885..58e1f0501c52bbd7699876b0d4c11a5f40eada77 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/audio-test/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/audio-test/container.jsx @@ -1,15 +1,15 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import Service from '/imports/ui/components/audio/service'; import AudioTest from './component'; const AudioTestContainer = props => <AudioTest {...props} />; -export default createContainer(() => ({ +export default withTracker(() => ({ outputDeviceId: Service.outputDeviceId(), handlePlayAudioSample: (deviceId) => { const sound = new Audio('resources/sounds/audioSample.mp3'); if (deviceId && sound.setSinkId) sound.setSinkId(deviceId); sound.play(); }, -}), AudioTestContainer); +}))(AudioTestContainer); diff --git a/bigbluebutton-html5/imports/ui/components/audio/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/component.jsx deleted file mode 100644 index 717836bd01404a41ead99856dab6ef6038a10fa0..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/imports/ui/components/audio/component.jsx +++ /dev/null @@ -1,28 +0,0 @@ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; - -const propTypes = { - init: PropTypes.func.isRequired, -}; - -export default class Audio extends Component { - constructor(props) { - super(props); - - this.init = props.init.bind(this); - } - - componentDidMount() { - this.init(); - } - - render() { - return ( - <audio id="remote-media" autoPlay="autoplay"> - <track kind="captions" /> {/* These captions are brought to you by eslint */} - </audio> - ); - } -} - -Audio.propTypes = propTypes; diff --git a/bigbluebutton-html5/imports/ui/components/audio/container.jsx b/bigbluebutton-html5/imports/ui/components/audio/container.jsx index c44556f1c6052d4efc4b2327df2169337e7a26ac..b950b9dca99b8f222f53b8b480486b95f9c18108 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/container.jsx @@ -1,20 +1,11 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { withModalMounter } from '/imports/ui/components/modal/service'; import { injectIntl, defineMessages } from 'react-intl'; -import PropTypes from 'prop-types'; +import Breakouts from '/imports/api/breakouts'; import Service from './service'; -import Audio from './component'; import AudioModalContainer from './audio-modal/container'; -const propTypes = { - children: PropTypes.element, -}; - -const defaultProps = { - children: null, -}; - const intlMessages = defineMessages({ joinedAudio: { id: 'app.audioManager.joinedAudio', @@ -51,14 +42,38 @@ const intlMessages = defineMessages({ }); -const AudioContainer = props => <Audio {...props} />; +class AudioContainer extends React.Component { + constructor(props) { + super(props); + + this.init = props.init.bind(this); + } + + componentDidMount() { + this.init(); + } + + render() { + return null; + } +} let didMountAutoJoin = false; -export default withModalMounter(injectIntl(createContainer(({ mountModal, intl }) => { +export default withModalMounter(injectIntl(withTracker(({ mountModal, intl }) => { const APP_CONFIG = Meteor.settings.public.app; const { autoJoinAudio } = APP_CONFIG; + const openAudioModal = mountModal.bind( + null, + <AudioModalContainer />, + ); + + Breakouts.find().observeChanges({ + removed() { + setTimeout(() => openAudioModal(), 0); + }, + }); const messages = { info: { @@ -80,11 +95,8 @@ export default withModalMounter(injectIntl(createContainer(({ mountModal, intl } Service.init(messages); Service.changeOutputDevice(document.querySelector('#remote-media').sinkId); if (!autoJoinAudio || didMountAutoJoin) return; - mountModal(<AudioModalContainer />); + openAudioModal(); didMountAutoJoin = true; }, }; -}, AudioContainer))); - -AudioContainer.propTypes = propTypes; -AudioContainer.defaultProps = defaultProps; +})(AudioContainer))); diff --git a/bigbluebutton-html5/imports/ui/components/audio/device-selector/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/device-selector/component.jsx index 7c68859eb02a25eb199a7b38f2de24b301c70b74..5e32ca79f6b1e8da44eca5e2aab665a1eb9dcfb7 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/device-selector/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/device-selector/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import _ from 'lodash'; import PropTypes from 'prop-types'; import cx from 'classnames'; -import styles from '../audio-modal/styles'; +import { styles } from '../audio-modal/styles'; const propTypes = { kind: PropTypes.oneOf(['audioinput', 'audiooutput', 'videoinput']), diff --git a/bigbluebutton-html5/imports/ui/components/audio/echo-test/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/echo-test/component.jsx index a437d2de5876bbd94db87ca7931e5d5aae9e1ca4..3cb2c70f4e511e047d621486f7c743f9e45f553f 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/echo-test/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/echo-test/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import { defineMessages, intlShape, injectIntl } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ yes: { diff --git a/bigbluebutton-html5/imports/ui/components/audio/help/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/help/component.jsx index 1e36cc2b9cbf00a120a94a8473f9f58f1cc47292..c5c0cd3b0b181245d857f2b7593da694488cb6ab 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/help/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/help/component.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import Button from '/imports/ui/components/button/component'; import { injectIntl, defineMessages } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ descriptionHelp: { diff --git a/bigbluebutton-html5/imports/ui/components/audio/permissions-overlay/component.jsx b/bigbluebutton-html5/imports/ui/components/audio/permissions-overlay/component.jsx index a086055ea7f25db818f29bf96fc51941c4bc0e6e..18098c9cb6be62914fb3fd225a389d08f5733cc3 100644 --- a/bigbluebutton-html5/imports/ui/components/audio/permissions-overlay/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/audio/permissions-overlay/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import { injectIntl, intlShape, defineMessages } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { intl: intlShape.isRequired, @@ -30,6 +30,10 @@ class PermissionsOverlay extends Component { top: '210px', left: '605px', }, + Safari: { + top: '100px', + left: '100px', + }, }; const browser = window.bowser.name; diff --git a/bigbluebutton-html5/imports/ui/components/button/component.jsx b/bigbluebutton-html5/imports/ui/components/button/component.jsx index c8618ba5f0abb2f51696197ca29f578c6c34c605..9756058446e8f5eb79028c0ce198eab91baa4ff8 100644 --- a/bigbluebutton-html5/imports/ui/components/button/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/button/component.jsx @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import Tooltip from '/imports/ui/components/tooltip/component'; -import styles from './styles'; +import { styles } from './styles'; import Icon from '../icon/component'; import BaseButton from './base/component'; diff --git a/bigbluebutton-html5/imports/ui/components/chat/chat-dropdown/component.jsx b/bigbluebutton-html5/imports/ui/components/chat/chat-dropdown/component.jsx index c63a4f1958430b71208d1e967174168dfb0868af..31f91b029122b8ff39439be6b4d6d3fab22b7195 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/chat-dropdown/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/chat-dropdown/component.jsx @@ -13,7 +13,7 @@ import Acl from '/imports/startup/acl'; import Button from '/imports/ui/components/button/component'; import ChatService from './../service'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ clear: { @@ -127,7 +127,9 @@ class ChatDropdown extends Component { circle hideLabel color="primary" + label={intl.formatMessage(intlMessages.options)} aria-label={intl.formatMessage(intlMessages.options)} + onClick={() => null} /> </DropdownTrigger> <DropdownContent placement="bottom right"> diff --git a/bigbluebutton-html5/imports/ui/components/chat/component.jsx b/bigbluebutton-html5/imports/ui/components/chat/component.jsx index d5fc22ae2b686196c6cf662bdd32dba3244f9a29..1570474fe802fb6f30a5ac5102fa568f42d9b8c0 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/component.jsx @@ -4,7 +4,7 @@ import { Link } from 'react-router'; import { defineMessages, injectIntl } from 'react-intl'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; import Button from '/imports/ui/components/button/component'; -import styles from './styles'; +import { styles } from './styles'; import MessageForm from './message-form/component'; import MessageList from './message-list/component'; import ChatDropdown from './chat-dropdown/component'; @@ -66,6 +66,7 @@ const Chat = (props) => { hideLabel onClick={() => actions.handleClosePrivateChat(chatID)} aria-label={intl.formatMessage(intlMessages.closeChatLabel, { 0: title })} + label={intl.formatMessage(intlMessages.closeChatLabel, { 0: title })} /> </Link> : <ChatDropdown /> @@ -101,17 +102,13 @@ const propTypes = { chatID: PropTypes.string.isRequired, chatName: PropTypes.string.isRequired, title: PropTypes.string.isRequired, - messages: PropTypes.arrayOf( - PropTypes.objectOf( - PropTypes.oneOfType([ - PropTypes.array, - PropTypes.string, - PropTypes.number, - PropTypes.object, - ]), - ).isRequired, - ).isRequired, - scrollPosition: PropTypes.number.isRequired, + messages: PropTypes.arrayOf(PropTypes.objectOf(PropTypes.oneOfType([ + PropTypes.array, + PropTypes.string, + PropTypes.number, + PropTypes.object, + ])).isRequired).isRequired, + scrollPosition: PropTypes.number, hasUnreadMessages: PropTypes.bool.isRequired, lastReadMessageTime: PropTypes.number.isRequired, partnerIsLoggedOut: PropTypes.bool.isRequired, @@ -129,4 +126,9 @@ const propTypes = { }).isRequired, }; +const defaultProps = { + scrollPosition: 0, +}; + Chat.propTypes = propTypes; +Chat.defaultProps = defaultProps; diff --git a/bigbluebutton-html5/imports/ui/components/chat/container.jsx b/bigbluebutton-html5/imports/ui/components/chat/container.jsx index 088af86a6cdb495cde3446ad9cea55315b20b3b2..37d2e99eecadf6e1c18573b4dc2d996abbae99b4 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/container.jsx @@ -1,6 +1,6 @@ -import React from 'react'; +import React, {Component} from 'react'; import { defineMessages, injectIntl } from 'react-intl'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import Chat from './component'; import ChatService from './service'; @@ -27,14 +27,21 @@ const intlMessages = defineMessages({ }, }); -const ChatContainer = props => - ( - <Chat {...props}> - {props.children} - </Chat> - ); +class ChatContainer extends Component { + componentDidMount() { + // in case of reopening a chat, need to make sure it's removed from closed list + ChatService.removeFromClosedChatsSession(this.props.chatID); + } + render() { + return ( + <Chat {...this.props}> + {this.props.children} + </Chat> + ); + } +} -export default injectIntl(createContainer(({ params, intl }) => { +export default injectIntl(withTracker(({ params, intl }) => { const chatID = params.chatID || PUBLIC_CHAT_KEY; let messages = []; @@ -116,4 +123,4 @@ export default injectIntl(createContainer(({ params, intl }) => { handleReadMessage: timestamp => ChatService.updateUnreadMessage(chatID, timestamp), }, }; -}, ChatContainer)); +})(ChatContainer)); diff --git a/bigbluebutton-html5/imports/ui/components/chat/message-form/component.jsx b/bigbluebutton-html5/imports/ui/components/chat/message-form/component.jsx index dd280476795687d6c12f7a7b7cf5bcf54ab126a3..98716c98ee166b7555f5246028247c8dc593cafe 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/message-form/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/message-form/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import { defineMessages, injectIntl } from 'react-intl'; import cx from 'classnames'; import TextareaAutosize from 'react-autosize-textarea'; -import styles from './styles'; +import { styles } from './styles'; import Button from '../../button/component'; const propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/chat/message-list/component.jsx b/bigbluebutton-html5/imports/ui/components/chat/message-list/component.jsx index 089d6d92fcd80421c287de8bd2c91fe26d81eeba..61f4f5b8dcad3d9e59ca07a2e5b804dd2115d589 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/message-list/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/message-list/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { defineMessages, injectIntl } from 'react-intl'; import _ from 'lodash'; import Button from '/imports/ui/components/button/component'; -import styles from './styles'; +import { styles } from './styles'; import MessageListItem from './message-list-item/component'; const propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/chat/message-list/message-list-item/component.jsx b/bigbluebutton-html5/imports/ui/components/chat/message-list/message-list-item/component.jsx index 6d00b97e138321be956a5aaa3f7e0211756b3253..6db5ab50c8836f8dbe0c3633e3d37f64077c30cb 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/message-list/message-list-item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/message-list/message-list-item/component.jsx @@ -7,7 +7,7 @@ import _ from 'lodash'; import UserAvatar from '/imports/ui/components/user-avatar/component'; import Message from './message/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { user: PropTypes.object, diff --git a/bigbluebutton-html5/imports/ui/components/chat/notification/container.jsx b/bigbluebutton-html5/imports/ui/components/chat/notification/container.jsx index ade6871a4c75c8d840c759296888dd34b61b65b2..b195501cf0d5fc73ec8a24fcd339c63e190696ec 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/notification/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/chat/notification/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import UserListService from '/imports/ui/components/user-list/service'; import Settings from '/imports/ui/services/settings'; import ChatNotification from './component'; @@ -8,7 +8,7 @@ const ChatNotificationContainer = props => ( <ChatNotification {...props} /> ); -export default createContainer(() => { +export default withTracker(() => { const AppSettings = Settings.application; const openChats = UserListService.getOpenChats(); @@ -17,4 +17,4 @@ export default createContainer(() => { disableNotify: !AppSettings.chatPushNotifications, openChats, }; -}, ChatNotificationContainer); +})(ChatNotificationContainer); diff --git a/bigbluebutton-html5/imports/ui/components/chat/service.js b/bigbluebutton-html5/imports/ui/components/chat/service.js index a030bf752b1949a6e8e2a25d585de987efd441c6..53f9994cd175d77f4164bd550d3386c2562dca2c 100644 --- a/bigbluebutton-html5/imports/ui/components/chat/service.js +++ b/bigbluebutton-html5/imports/ui/components/chat/service.js @@ -195,6 +195,14 @@ const closePrivateChat = (chatID) => { } }; +// if this private chat has been added to the list of closed ones, remove it +const removeFromClosedChatsSession = (chatID) => { + const currentClosedChats = Storage.getItem(CLOSED_CHAT_LIST_KEY); + if (_.indexOf(currentClosedChats, chatID) > -1) { + Storage.setItem(CLOSED_CHAT_LIST_KEY, _.without(currentClosedChats, chatID)); + } +}; + // We decode to prevent HTML5 escaped characters. const htmlDecode = (input) => { const e = document.createElement('div'); @@ -229,6 +237,7 @@ export default { updateUnreadMessage, sendMessage, closePrivateChat, + removeFromClosedChatsSession, exportChat, clearPublicChatHistory, }; diff --git a/bigbluebutton-html5/imports/ui/components/checkbox/component.jsx b/bigbluebutton-html5/imports/ui/components/checkbox/component.jsx index e59be89a507bfa0d72c88d37de117ebd719fabf1..c290664a4350031dab77ad6576b0a1055c3aa48f 100644 --- a/bigbluebutton-html5/imports/ui/components/checkbox/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/checkbox/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import Icon from '../icon/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { disabled: PropTypes.bool, diff --git a/bigbluebutton-html5/imports/ui/components/closed-captions/component.jsx b/bigbluebutton-html5/imports/ui/components/closed-captions/component.jsx index 9831e593e3acc68327c6fbdc9578f003a3f4f907..1a5952544ea418c0b50287cd494e99dd0ec525ac 100644 --- a/bigbluebutton-html5/imports/ui/components/closed-captions/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/closed-captions/component.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; class ClosedCaptions extends Component { constructor(props) { diff --git a/bigbluebutton-html5/imports/ui/components/closed-captions/container.jsx b/bigbluebutton-html5/imports/ui/components/closed-captions/container.jsx index a8da014e7cb5ca165425f3ea9df6c2c6e36bfe18..d6c03fb2a8b2ecea879f4079236a2b39b10e5525 100644 --- a/bigbluebutton-html5/imports/ui/components/closed-captions/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/closed-captions/container.jsx @@ -1,10 +1,10 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import ClosedCaptionsService from './service'; import ClosedCaptions from './component'; const ClosedCaptionsContainer = props => ( <ClosedCaptions {...props} /> - ); +); -export default createContainer(() => ClosedCaptionsService.getCCData(), ClosedCaptionsContainer); +export default withTracker(() => ClosedCaptionsService.getCCData())(ClosedCaptionsContainer); diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/component.jsx index bee993194a6419b08ad1b1034266c502f4d66962..f21ca63601b2051a97727e09c519bac7b706854a 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/component.jsx @@ -4,7 +4,7 @@ import { findDOMNode } from 'react-dom'; import cx from 'classnames'; import { defineMessages, injectIntl } from 'react-intl'; import Button from '/imports/ui/components/button/component'; -import styles from './styles'; +import { styles } from './styles'; import DropdownTrigger from './trigger/component'; import DropdownContent from './content/component'; @@ -25,27 +25,21 @@ const propTypes = { const children = props[propName]; if (!children || children.length < 2) { - return new Error( - `Invalid prop \`${propName}\` supplied to` + - ` \`${componentName}\`. Validation failed.`, - ); + return new Error(`Invalid prop \`${propName}\` supplied to` + + ` \`${componentName}\`. Validation failed.`); } const trigger = children.find(x => x.type === DropdownTrigger); const content = children.find(x => x.type === DropdownContent); if (!trigger) { - return new Error( - `Invalid prop \`${propName}\` supplied to` + - ` \`${componentName}\`. Missing \`DropdownTrigger\`. Validation failed.`, - ); + return new Error(`Invalid prop \`${propName}\` supplied to` + + ` \`${componentName}\`. Missing \`DropdownTrigger\`. Validation failed.`); } if (!content) { - return new Error( - `Invalid prop \`${propName}\` supplied to` + - ` \`${componentName}\`. Missing \`DropdownContent\`. Validation failed.`, - ); + return new Error(`Invalid prop \`${propName}\` supplied to` + + ` \`${componentName}\`. Missing \`DropdownContent\`. Validation failed.`); } return null; @@ -70,66 +64,48 @@ class Dropdown extends Component { this.state = { isOpen: false }; this.handleShow = this.handleShow.bind(this); this.handleHide = this.handleHide.bind(this); - this.handleStateCallback = this.handleStateCallback.bind(this); this.handleToggle = this.handleToggle.bind(this); this.handleWindowClick = this.handleWindowClick.bind(this); } componentDidUpdate(prevProps, prevState) { - if (prevState.isOpen !== this.props.isOpen - && this.state.isOpen !== this.props.isOpen) { - this.setState({ isOpen: this.props.isOpen }, this.handleStateCallback); + if (this.state.isOpen && !prevState.isOpen) { + this.props.onShow(); } - } - - handleStateCallback() { - const { onShow, onHide } = this.props; - if (this.state.isOpen && onShow) { - onShow(); - } else if (onHide) { - onHide(); + if (!this.state.isOpen && prevState.isOpen) { + this.props.onHide(); } } handleShow() { - const { addEventListener } = window; - addEventListener('click', this.handleWindowClick, false); - - this.setState({ isOpen: true }, this.handleStateCallback); + this.setState({ isOpen: true }, () => { + const { addEventListener } = window; + addEventListener('click', this.handleWindowClick, true); + }); } handleHide() { - const { removeEventListener } = window; - removeEventListener('click', this.handleWindowClick, false); - - const { autoFocus } = this.props; - - this.setState({ isOpen: false }, this.handleStateCallback); - - if (autoFocus) { - const triggerElement = findDOMNode(this.trigger); - triggerElement.focus(); - } + this.setState({ isOpen: false }, () => { + const { removeEventListener } = window; + removeEventListener('click', this.handleWindowClick, true); + }); } handleWindowClick(event) { - if (this.state.isOpen) { - const dropdownElement = findDOMNode(this); - const shouldUpdateState = event.target !== dropdownElement && - !dropdownElement.contains(event.target) && - this.state.isOpen; - - if (shouldUpdateState) { - this.handleHide(); - } + const triggerElement = findDOMNode(this.trigger); + + if (!this.state.isOpen + || triggerElement === event.target + || triggerElement.contains(event.target)) { + return; } + + this.handleHide(); } handleToggle() { - this.state.isOpen ? - this.handleHide() : - this.handleShow(); + return this.state.isOpen ? this.handleHide() : this.handleShow(); } render() { @@ -175,8 +151,8 @@ class Dropdown extends Component { <Button className={styles.close} label={intl.formatMessage(intlMessages.close)} - size={'lg'} - color={'default'} + size="lg" + color="default" onClick={this.handleHide} /> : null} </div> diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/content/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/content/component.jsx index 70f2e4d6e8f8065384741047eb005599451ffb31..d86484429c4869cd000e80012b3c6753c02c22fc 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/content/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/content/component.jsx @@ -1,7 +1,7 @@ import React, { Component, Children, cloneElement } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; -import styles from '../styles'; +import { styles } from '../styles'; const PLACEMENTS = [ 'top left', 'top', 'top right', diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/list/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/list/component.jsx index c630ce581258133921daa4ff243768389bf8a57f..6d824b289e6200047af5f5052f9b0606b8cf674b 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/list/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/list/component.jsx @@ -2,10 +2,11 @@ import React, { Component, Children, cloneElement } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import KEY_CODES from '/imports/utils/keyCodes'; -import styles from './styles'; +import { styles } from './styles'; import ListItem from './item/component'; import ListSeparator from './separator/component'; import ListTitle from './title/component'; +import UserActions from '../../user-list/user-list-content/user-participants/user-list-item/user-action/component'; const propTypes = { /* We should recheck this proptype, sometimes we need to create an container and send to dropdown, @@ -14,11 +15,10 @@ const propTypes = { children: PropTypes.arrayOf((propValue, key, componentName, location, propFullName) => { if (propValue[key].type !== ListItem && propValue[key].type !== ListSeparator && - propValue[key].type !== ListTitle) { - return new Error( - `Invalid prop \`${propFullName}\` supplied to` + - ` \`${componentName}\`. Validation failed.`, - ); + propValue[key].type !== ListTitle && + propValue[key].type !== UserActions) { + return new Error(`Invalid prop \`${propFullName}\` supplied to` + + ` \`${componentName}\`. Validation failed.`); } return true; }).isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/list/item/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/list/item/component.jsx index 901bebf5c610e285dfc12e7bcfd66f85ffd89e06..5b47b95110905fc470c0d193935396a2a9aa6ddb 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/list/item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/list/item/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import _ from 'lodash'; import cx from 'classnames'; import Icon from '/imports/ui/components/icon/component'; -import styles from '../styles'; +import { styles } from '../styles'; const propTypes = { icon: PropTypes.string, diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/list/separator/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/list/separator/component.jsx index de3f7bdfdd186ad502486b6147dffdc09c580d2f..cf975378bc7d4d9fc385f8c99455eb5ddd51b9b5 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/list/separator/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/list/separator/component.jsx @@ -1,7 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; -import styles from '../styles'; +import { styles } from '../styles'; const DropdownListSeparator = ({ style, className }) => ( diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/list/title/component.jsx b/bigbluebutton-html5/imports/ui/components/dropdown/list/title/component.jsx index 69cadebbc58cdcf03c3fc4c6dfd877a5967a49fb..229d432691b5eefff5160b47e753ec8a995dac1e 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/list/title/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/dropdown/list/title/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from '../styles'; +import { styles } from '../styles'; const propTypes = { description: PropTypes.string, diff --git a/bigbluebutton-html5/imports/ui/components/dropdown/styles.scss b/bigbluebutton-html5/imports/ui/components/dropdown/styles.scss index f03b3628dd5d6efe49e5470a6b8f2e5e8ec1de79..dc3d0274b6be41d361ede329d715c60bf4801f04 100644 --- a/bigbluebutton-html5/imports/ui/components/dropdown/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/dropdown/styles.scss @@ -78,10 +78,12 @@ $dropdown-caret-height: 8px; font-size: $font-size-large * 1.1; width: calc(100% - #{($line-height-computed * 2)}); left: $line-height-computed; - box-shadow: 0 0 0 2rem #fff; + box-shadow: 0 0 0 2rem $color-white !important; + border: $color-white !important; @include mq($small-only) { display: block; + bottom: 0.8rem; } } diff --git a/bigbluebutton-html5/imports/ui/components/error-screen/component.jsx b/bigbluebutton-html5/imports/ui/components/error-screen/component.jsx index 7efe777b56346e1d02f3172b1e57b84771427398..d9cd49a84afa00bc0e2f586c1be33561b6f73181 100644 --- a/bigbluebutton-html5/imports/ui/components/error-screen/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/error-screen/component.jsx @@ -1,9 +1,9 @@ -import React, { Component } from 'react'; +import React from 'react'; import PropTypes from 'prop-types'; import { defineMessages, injectIntl } from 'react-intl'; import Button from '/imports/ui/components/button/component'; - -import styles from './styles.scss'; +import { withRouter } from 'react-router'; +import { styles } from './styles'; const intlMessages = defineMessages({ 500: { @@ -17,9 +17,6 @@ const intlMessages = defineMessages({ 401: { id: 'app.error.401', }, - 403: { - id: 'app.error.403', - }, leave: { id: 'app.error.leaveLabel', description: 'aria-label for leaving', @@ -37,16 +34,13 @@ const defaultProps = { code: 500, }; -class ErrorScreen extends Component { - - onClick() { - window.location = window.location.origin; - } - +class ErrorScreen extends React.PureComponent { render() { - const { intl, code, children } = this.props; + const { + intl, code, children, router, + } = this.props; - let formatedMessage = intl.formatMessage(intlMessages[500]); + let formatedMessage = intl.formatMessage(intlMessages[defaultProps.code]); if (code in intlMessages) { formatedMessage = intl.formatMessage(intlMessages[code]); @@ -65,8 +59,8 @@ class ErrorScreen extends Component { </div> <div className={styles.content}> <Button - size={'sm'} - onClick={this.onClick} + size="sm" + onClick={() => router.push('/logout/')} label={intl.formatMessage(intlMessages.leave)} /> </div> @@ -75,7 +69,7 @@ class ErrorScreen extends Component { } } -export default injectIntl(ErrorScreen); +export default withRouter(injectIntl(ErrorScreen)); ErrorScreen.propTypes = propTypes; ErrorScreen.defaultProps = defaultProps; diff --git a/bigbluebutton-html5/imports/ui/components/loading-screen/component.jsx b/bigbluebutton-html5/imports/ui/components/loading-screen/component.jsx index 4bc756297bbf06b1acad04f491ae7780fa6ecab5..dcb56c35ccc03f59a35e9298dcc47d013d78a8f4 100644 --- a/bigbluebutton-html5/imports/ui/components/loading-screen/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/loading-screen/component.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const LoadingScreen = ({ children }) => ( <div className={styles.background}> diff --git a/bigbluebutton-html5/imports/ui/components/logout-confirmation/component.jsx b/bigbluebutton-html5/imports/ui/components/logout-confirmation/component.jsx index 2b214c2b658b7c804d646b3e0e47a6343cc4f00c..d1aa2092a4f88652d498ccf942fc6fb8a620b39e 100644 --- a/bigbluebutton-html5/imports/ui/components/logout-confirmation/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/logout-confirmation/component.jsx @@ -1,14 +1,16 @@ import React from 'react'; import PropTypes from 'prop-types'; import { withRouter } from 'react-router'; -import { defineMessages, injectIntl, intlShape } from 'react-intl'; +import { defineMessages, injectIntl } from 'react-intl'; import Button from '/imports/ui/components/button/component'; import Modal from '/imports/ui/components/modal/fullscreen/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { handleEndMeeting: PropTypes.func.isRequired, - intl: PropTypes.shape(intlShape).isRequired, + intl: PropTypes.shape({ + formatMessage: PropTypes.func.isRequired, + }).isRequired, router: PropTypes.object.isRequired, showEndMeeting: PropTypes.bool.isRequired, }; diff --git a/bigbluebutton-html5/imports/ui/components/logout-confirmation/container.jsx b/bigbluebutton-html5/imports/ui/components/logout-confirmation/container.jsx index 3dbc153b43a07a10f315dc6b6570bbd1518b1bbf..f9faba90e49503a30c44c7641425193c8946e823 100644 --- a/bigbluebutton-html5/imports/ui/components/logout-confirmation/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/logout-confirmation/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { meetingIsBreakout } from '/imports/ui/components/app/service'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import LogoutConfirmation from './component'; import { isModerator, @@ -11,10 +11,7 @@ const LogoutConfirmationContainer = props => ( <LogoutConfirmation {...props} /> ); -export default createContainer(() => { - return { - showEndMeeting: !meetingIsBreakout() && - isModerator(), - handleEndMeeting: endMeeting, - } -}, LogoutConfirmationContainer); +export default withTracker(() => ({ + showEndMeeting: !meetingIsBreakout() && isModerator(), + handleEndMeeting: endMeeting, +}))(LogoutConfirmationContainer); diff --git a/bigbluebutton-html5/imports/ui/components/media/component.jsx b/bigbluebutton-html5/imports/ui/components/media/component.jsx index 9ad9c6b79803a1120ae842fb2bddf00e5923f2cf..d1adb2553d9d169104fdd745476a8d91d48d1fe0 100644 --- a/bigbluebutton-html5/imports/ui/components/media/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/media/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { content: PropTypes.element.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/media/container.jsx b/bigbluebutton-html5/imports/ui/components/media/container.jsx index de9221e18afa228ef46256da32d02c13a5e6e2f3..d56e6b0ec7a7252a81d851ff1a816f9a05ae87e5 100644 --- a/bigbluebutton-html5/imports/ui/components/media/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/media/container.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import Media from './component'; import MediaService from './service'; import PresentationAreaContainer from '../presentation/container'; @@ -8,7 +8,7 @@ import ScreenshareContainer from '../screenshare/container'; import DefaultContent from '../presentation/default-content/component'; const defaultProps = { - overlay: null, // <VideoDockContainer/>, + overlay: <VideoDockContainer />, content: <PresentationAreaContainer />, defaultContent: <DefaultContent />, }; @@ -52,7 +52,7 @@ class MediaContainer extends Component { MediaContainer.defaultProps = defaultProps; -export default createContainer(() => { +export default withTracker(() => { const data = {}; data.currentPresentation = MediaService.getPresentationInfo(); @@ -71,4 +71,4 @@ export default createContainer(() => { } return data; -}, MediaContainer); +})(MediaContainer); diff --git a/bigbluebutton-html5/imports/ui/components/media/service.js b/bigbluebutton-html5/imports/ui/components/media/service.js index d583c089f19be3a4c79ea3e9d21b9f3f1164ad9b..9523f64779f3dc4eee14ac7f0f138856d0384a1d 100644 --- a/bigbluebutton-html5/imports/ui/components/media/service.js +++ b/bigbluebutton-html5/imports/ui/components/media/service.js @@ -17,11 +17,11 @@ function shouldShowWhiteboard() { } function shouldShowScreenshare() { - return isVideoBroadcasting(); + return isVideoBroadcasting() && Meteor.settings.public.kurento.enableScreensharing; } function shouldShowOverlay() { - return false; + return Meteor.settings.public.kurento.enableVideo; } export default { diff --git a/bigbluebutton-html5/imports/ui/components/meeting-ended/component.jsx b/bigbluebutton-html5/imports/ui/components/meeting-ended/component.jsx new file mode 100644 index 0000000000000000000000000000000000000000..09235a2cd5068409a143007a8c13ab1d66083130 --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/meeting-ended/component.jsx @@ -0,0 +1,46 @@ +import React from 'react'; +import { withRouter } from 'react-router'; +import { defineMessages, injectIntl } from 'react-intl'; +import Button from '/imports/ui/components/button/component'; +import { styles } from './styles'; + +const intlMessage = defineMessages({ + 410: { + id: 'app.meeting.ended', + description: 'message when meeting is ended', + }, + 403: { + id: 'app.error.removed', + description: 'Message to display when user is removed from the conference', + }, + messageEnded: { + id: 'app.meeting.endedMessage', + description: 'message saying to go back to home screen', + }, + buttonOkay: { + id: 'app.meeting.endNotification.ok.label', + description: 'label okay for button', + }, +}); + +const MeetingEnded = ({ intl, router, code }) => ( + <div className={styles.parent}> + <div className={styles.modal}> + <div className={styles.content}> + <h1 className={styles.title}>{intl.formatMessage(intlMessage[code])}</h1> + <div className={styles.text}> + {intl.formatMessage(intlMessage.messageEnded)} + </div> + <Button + color="primary" + className={styles.button} + label={intl.formatMessage(intlMessage.buttonOkay)} + size="sm" + onClick={() => router.push('/logout')} + /> + </div> + </div> + </div> +); + +export default injectIntl(withRouter(MeetingEnded)); diff --git a/bigbluebutton-html5/imports/ui/components/meeting-ended/styles.scss b/bigbluebutton-html5/imports/ui/components/meeting-ended/styles.scss new file mode 100644 index 0000000000000000000000000000000000000000..38bceeca1976079ac425f30a28169227fb60467f --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/meeting-ended/styles.scss @@ -0,0 +1,45 @@ +@import "/imports/ui/stylesheets/variables/_all"; + +.parent { + height: 100%; + width: 100%; + display: flex; + justify-content: center; + align-items: center; +} + +.modal { + display: flex; + padding: $lg-padding-x; + background-color: $color-white; + flex-direction: column; + border-radius: $border-radius; + max-width: 95vw; + width: 600px; + +} + +.text { + color: $color-text; + font-weight: normal; + padding: $line-height-computed 0; + @include mq($small-only) { + font-size: $font-size-small; + }; +} + +.content { + text-align: center; +} + +.title { + margin: 0; + font-size: $font-size-large; + font-weight: $headings-font-weight; +} + +.button { + @include mq($small-only) { + font-size: $font-size-base; + } +} diff --git a/bigbluebutton-html5/imports/ui/components/modal/base/component.jsx b/bigbluebutton-html5/imports/ui/components/modal/base/component.jsx index ac205b922da2fd9c1b8d5b79093e6bb6d033179f..ba3170e06f08509762eb71ea3724635f6a8c8ddd 100644 --- a/bigbluebutton-html5/imports/ui/components/modal/base/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/modal/base/component.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import ReactModal from 'react-modal'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const propTypes = { overlayClassName: PropTypes.string.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/modal/container.jsx b/bigbluebutton-html5/imports/ui/components/modal/container.jsx index beeed571db1a054b88d974f0325551824e57273b..a1bbd0ed6684475c3858b59ebe8d73f30f50921e 100644 --- a/bigbluebutton-html5/imports/ui/components/modal/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/modal/container.jsx @@ -1,8 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { getModal } from './service'; -export default createContainer( - () => ({ modalComponent: getModal() }), - ({ modalComponent }) => modalComponent, -); +export default withTracker(() => ({ modalComponent: getModal() }))(({ modalComponent }) => modalComponent); diff --git a/bigbluebutton-html5/imports/ui/components/modal/fullscreen/component.jsx b/bigbluebutton-html5/imports/ui/components/modal/fullscreen/component.jsx index b2651e3fd004141bd2cdec179bda764edcb688ff..da8452292959d9e3431ed2d3dae58e5182f76374 100644 --- a/bigbluebutton-html5/imports/ui/components/modal/fullscreen/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/modal/fullscreen/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import cx from 'classnames'; import ModalBase, { withModalState } from '../base/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const propTypes = { title: PropTypes.string.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/modal/fullscreen/styles.scss b/bigbluebutton-html5/imports/ui/components/modal/fullscreen/styles.scss index 07bcaebc3dab35c7bd39dee9f59bcc4c91ebd03e..972b67ef170d355c227bee3b098d24d1b87c1eb8 100644 --- a/bigbluebutton-html5/imports/ui/components/modal/fullscreen/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/modal/fullscreen/styles.scss @@ -6,10 +6,12 @@ align-self: flex-start; padding: ($line-height-computed / 2) $line-height-computed; outline: none; + @include mq($small-only) { + width: 100% + } } .content { - overflow: auto; color: $color-text; font-weight: normal; padding: $line-height-computed 0; @@ -19,7 +21,6 @@ display: flex; padding: $line-height-computed 0; border-bottom: $border-size solid $color-gray-lighter; - flex-shrink: 0; } .actions { diff --git a/bigbluebutton-html5/imports/ui/components/modal/simple/component.jsx b/bigbluebutton-html5/imports/ui/components/modal/simple/component.jsx index 6791ecacfadb9950996b2f5253270ded465707bc..8c1ff95ce4ebf987cc2a0ef756add92400247c26 100644 --- a/bigbluebutton-html5/imports/ui/components/modal/simple/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/modal/simple/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import cx from 'classnames'; import Button from '/imports/ui/components/button/component'; import ModalBase, { withModalState } from '../base/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { title: PropTypes.string.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx index e03f27f0d4b56e1100c3f2e0ff430ffd4541f1f6..acb206cb91a8e52f4d007463c0400afec5d90ed8 100644 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import _ from 'lodash'; import cx from 'classnames'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; import Button from '../button/component'; import RecordingIndicator from './recording-indicator/component'; import SettingsDropdownContainer from './settings-dropdown/container'; diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/container.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/container.jsx index 47ba92261c9dece2ca4ed9c684a9158e3a5c71c8..13e0a1cbd519d2068b4b060be75c9936bdc1727f 100644 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/container.jsx @@ -1,5 +1,5 @@ -import React, { Component } from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import React from 'react'; +import { withTracker } from 'meteor/react-meteor-data'; import { withRouter } from 'react-router'; import Meetings from '/imports/api/meetings'; import Auth from '/imports/ui/services/auth'; @@ -18,7 +18,7 @@ const NavBarContainer = ({ children, ...props }) => ( </NavBar> ); -export default withRouter(createContainer(({ location, router }) => { +export default withRouter(withTracker(({ location, router }) => { let meetingTitle; let meetingRecorded; @@ -69,4 +69,4 @@ export default withRouter(createContainer(({ location, router }) => { } }, }; -}, NavBarContainer)); +})(NavBarContainer)); diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/recording-indicator/component.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/recording-indicator/component.jsx index bb249f902a9274a1ce67bfc7bcdb7e38cf9dd57e..60c0cf7cda7b1c6c064067c1b77a6eec44062ce7 100644 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/recording-indicator/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/recording-indicator/component.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import styles from './styles'; +import { styles } from './styles'; const RecordingIndicator = ({ beingRecorded }) => { if (!beingRecorded) return null; diff --git a/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx b/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx index 7454a183b9c1cd1c6381b5242f3841a566753122..69a3b3096c4793f0ec6ad30ed8cdc92d2c2dea07 100644 --- a/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/nav-bar/settings-dropdown/component.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import { defineMessages, injectIntl } from 'react-intl'; import cx from 'classnames'; - +import _ from 'lodash'; import { withModalMounter } from '/imports/ui/components/modal/service'; import LogoutConfirmationContainer from '/imports/ui/components/logout-confirmation/container'; @@ -16,7 +16,7 @@ import DropdownList from '/imports/ui/components/dropdown/list/component'; import DropdownListItem from '/imports/ui/components/dropdown/list/item/component'; import DropdownListSeparator from '/imports/ui/components/dropdown/list/separator/component'; -import styles from '../styles'; +import { styles } from '../styles'; const intlMessages = defineMessages({ optionsLabel: { @@ -75,6 +75,53 @@ class SettingsDropdown extends Component { this.onActionsShow = this.onActionsShow.bind(this); this.onActionsHide = this.onActionsHide.bind(this); + this.getListItems = this.getListItems.bind(this); + } + + componentWillMount() { + const { intl, isFullScreen, mountModal } = this.props; + + let fullscreenLabel = intl.formatMessage(intlMessages.fullscreenLabel); + let fullscreenDesc = intl.formatMessage(intlMessages.fullscreenDesc); + let fullscreenIcon = 'fullscreen'; + + if (isFullScreen) { + fullscreenLabel = intl.formatMessage(intlMessages.exitFullscreenLabel); + fullscreenDesc = intl.formatMessage(intlMessages.exitFullscreenDesc); + fullscreenIcon = 'exit_fullscreen'; + } + + this.menuItems = [ + (<DropdownListItem + key={_.uniqueId('list-item-')} + icon={fullscreenIcon} + label={fullscreenLabel} + description={fullscreenDesc} + onClick={this.props.handleToggleFullscreen} + />), + (<DropdownListItem + key={_.uniqueId('list-item-')} + icon="settings" + label={intl.formatMessage(intlMessages.settingsLabel)} + description={intl.formatMessage(intlMessages.settingsDesc)} + onClick={() => mountModal(<SettingsMenuContainer />)} + />), + (<DropdownListItem + key={_.uniqueId('list-item-')} + icon="about" + label={intl.formatMessage(intlMessages.aboutLabel)} + description={intl.formatMessage(intlMessages.aboutDesc)} + onClick={() => mountModal(<AboutContainer />)} + />), + (<DropdownListSeparator key={_.uniqueId('list-separator-')} />), + (<DropdownListItem + key={_.uniqueId('list-item-')} + icon="logout" + label={intl.formatMessage(intlMessages.leaveSessionLabel)} + description={intl.formatMessage(intlMessages.leaveSessionDesc)} + onClick={() => mountModal(<LogoutConfirmationContainer />)} + />), + ]; } onActionsShow() { @@ -89,18 +136,16 @@ class SettingsDropdown extends Component { }); } - render() { - const { intl, mountModal, isFullScreen } = this.props; + getListItems() { + const iOS = /iPad|iPhone|iPod/.test(navigator.userAgent); - let fullscreenLabel = intl.formatMessage(intlMessages.fullscreenLabel); - let fullscreenDesc = intl.formatMessage(intlMessages.fullscreenDesc); - let fullscreenIcon = 'fullscreen'; + // we slice the list item to be hidden, for iOS devices, in order to avoid the error + // thrown if the DropdownList receives a null value. + return (iOS) ? this.menuItems.slice(1) : this.menuItems; + } - if (isFullScreen) { - fullscreenLabel = intl.formatMessage(intlMessages.exitFullscreenLabel); - fullscreenDesc = intl.formatMessage(intlMessages.exitFullscreenDesc); - fullscreenIcon = 'exit_fullscreen'; - } + render() { + const { intl } = this.props; return ( <Dropdown @@ -125,31 +170,9 @@ class SettingsDropdown extends Component { </DropdownTrigger> <DropdownContent placement="bottom right"> <DropdownList> - <DropdownListItem - icon={fullscreenIcon} - label={fullscreenLabel} - description={fullscreenDesc} - onClick={this.props.handleToggleFullscreen} - /> - <DropdownListItem - icon="settings" - label={intl.formatMessage(intlMessages.settingsLabel)} - description={intl.formatMessage(intlMessages.settingsDesc)} - onClick={() => mountModal(<SettingsMenuContainer />)} - /> - <DropdownListItem - icon="about" - label={intl.formatMessage(intlMessages.aboutLabel)} - description={intl.formatMessage(intlMessages.aboutDesc)} - onClick={() => mountModal(<AboutContainer />)} - /> - <DropdownListSeparator /> - <DropdownListItem - icon="logout" - label={intl.formatMessage(intlMessages.leaveSessionLabel)} - description={intl.formatMessage(intlMessages.leaveSessionDesc)} - onClick={() => mountModal(<LogoutConfirmationContainer />)} - /> + { + this.getListItems() + } </DropdownList> </DropdownContent> </Dropdown> diff --git a/bigbluebutton-html5/imports/ui/components/notifications-bar/component.jsx b/bigbluebutton-html5/imports/ui/components/notifications-bar/component.jsx index 378d27ff5d6c29ed3b669376cb597728e617011c..3ed8f4afef2ecc69440aea6a2234fe8506d739a1 100644 --- a/bigbluebutton-html5/imports/ui/components/notifications-bar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/notifications-bar/component.jsx @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const COLORS = [ 'default', 'primary', 'danger', 'success', diff --git a/bigbluebutton-html5/imports/ui/components/notifications-bar/container.jsx b/bigbluebutton-html5/imports/ui/components/notifications-bar/container.jsx index 8383ca6749af08445a249177f769e549108adf0c..4c03cf309be3c40c18476d0df776eb63e71f5fc1 100644 --- a/bigbluebutton-html5/imports/ui/components/notifications-bar/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/notifications-bar/container.jsx @@ -1,5 +1,5 @@ import { Meteor } from 'meteor/meteor'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import React from 'react'; import { defineMessages, injectIntl } from 'react-intl'; import _ from 'lodash'; @@ -108,7 +108,7 @@ const startCounter = (sec, set, get, interval) => { }, 1000); }; -export default injectIntl(createContainer(({ intl }) => { +export default injectIntl(withTracker(({ intl }) => { const { status, connected, retryTime } = Meteor.status(); const data = {}; @@ -150,10 +150,12 @@ export default injectIntl(createContainer(({ intl }) => { const roomRemainingTime = currentBreakout.timeRemaining; if (!timeRemainingInterval && roomRemainingTime) { - timeRemainingInterval = startCounter(roomRemainingTime, - setTimeRemaining, - getTimeRemaining, - timeRemainingInterval); + timeRemainingInterval = startCounter( + roomRemainingTime, + setTimeRemaining, + getTimeRemaining, + timeRemainingInterval, + ); } } else if (timeRemainingInterval) { clearInterval(timeRemainingInterval); @@ -178,4 +180,4 @@ export default injectIntl(createContainer(({ intl }) => { data.color = 'primary'; return data; -}, NotificationsBarContainer)); +})(NotificationsBarContainer)); diff --git a/bigbluebutton-html5/imports/ui/components/polling/component.jsx b/bigbluebutton-html5/imports/ui/components/polling/component.jsx index 97fa2bf55013d83aa87e723f71f1859f79f9f346..1ec189e4302a38f3b43c911fdade35a3d3ad15d6 100644 --- a/bigbluebutton-html5/imports/ui/components/polling/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/polling/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import { defineMessages, injectIntl } from 'react-intl'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const intlMessages = defineMessages({ pollingTitleLabel: { diff --git a/bigbluebutton-html5/imports/ui/components/polling/container.jsx b/bigbluebutton-html5/imports/ui/components/polling/container.jsx index 02541c21d641c10381a9ed6dbd64b496d469fa44..f3ea1cba73d22e5a5de7bd51156d8ffcec954ef8 100644 --- a/bigbluebutton-html5/imports/ui/components/polling/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/polling/container.jsx @@ -1,15 +1,25 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import PropTypes from 'prop-types'; +import { withTracker } from 'meteor/react-meteor-data'; import PollingService from './service'; import PollingComponent from './component'; -const PollingContainer = ({ - pollExists, poll, handleVote, ...props -}) => { - if (!pollExists) return null; - return <PollingComponent poll={poll} handleVote={handleVote} {...props} />; +const propTypes = { + pollExists: PropTypes.bool.isRequired, }; -export default createContainer(() => { + +const PollingContainer = ({ pollExists, ...props }) => { + if (pollExists) { + return ( + <PollingComponent {...props} /> + ); + } + return null; +}; + +PollingContainer.propTypes = propTypes; + +export default withTracker(() => { const data = PollingService.mapPolls(); return data; -}, PollingContainer); +})(PollingContainer); diff --git a/bigbluebutton-html5/imports/ui/components/presentation/component.jsx b/bigbluebutton-html5/imports/ui/components/presentation/component.jsx index 087d4d8481b24fe5952c28ab529b867295408739..f4a4869d7cb7213432db9d3638b74c2375b09b4d 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/component.jsx @@ -9,7 +9,7 @@ import AnnotationGroupContainer from '../whiteboard/annotation-group/container'; import PresentationToolbarContainer from './presentation-toolbar/container'; import PresentationOverlayContainer from './presentation-overlay/container'; import Slide from './slide/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; export default class PresentationArea extends Component { diff --git a/bigbluebutton-html5/imports/ui/components/presentation/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/container.jsx index a45c819198873819ff534ca223e081c503bd7eac..0c66ef27d84c9d5ac51086de0f3bd6322150c338 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import PresentationAreaService from './service'; import PresentationArea from './component'; @@ -7,8 +7,8 @@ const PresentationAreaContainer = props => ( <PresentationArea {...props} /> ); -export default createContainer(() => ({ +export default withTracker(() => ({ currentSlide: PresentationAreaService.getCurrentSlide(), userIsPresenter: PresentationAreaService.isPresenter(), multiUser: PresentationAreaService.getMultiUserStatus(), -}), PresentationAreaContainer); +}))(PresentationAreaContainer); diff --git a/bigbluebutton-html5/imports/ui/components/presentation/cursor/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/cursor/container.jsx index 00598801636fefc7a58f52c3f637f23970f02eea..0aeff9aed4b0588fbcf9cf759df9103d28b546ec 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/cursor/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/cursor/container.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import CursorService from './service'; import Cursor from './component'; @@ -40,30 +40,29 @@ class CursorContainer extends Component { } return null; } - } -export default createContainer((params) => { +export default withTracker((params) => { const { cursorId } = params; const cursor = CursorService.getCurrentCursor(cursorId); - let cursorX = -1; - let cursorY = -1; - let userName = ''; if (cursor) { - cursorX = cursor.x; - cursorY = cursor.y; - userName = cursor.userName; + const { x: cursorX, y: cursorY, userName } = cursor; + return { + cursorX, + cursorY, + userName, + }; } return { - cursorX, - cursorY, - userName, + cursorX: -1, + cursorY: -1, + userName: '', }; -}, CursorContainer); +})(CursorContainer); CursorContainer.propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/presentation/cursor/cursor-wrapper-container/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/cursor/cursor-wrapper-container/container.jsx index 96c2d724d8f5855605e543878c654de9235881b3..9f4da4e8d079f556199310b7353a127ec907260f 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/cursor/cursor-wrapper-container/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/cursor/cursor-wrapper-container/container.jsx @@ -1,7 +1,7 @@ /* The purpose of this wrapper is to fetch an array of active cursor iDs only and map them to the CursorContainer. - The reason for this is that Meteor tracks only the properties defined inside createContainer + The reason for this is that Meteor tracks only the properties defined inside withTracker and if we fetch the whole array of Cursors right away (let's say in the multi-user mode), then the whole array would be re-rendered every time one of the Cursors is changed. @@ -13,7 +13,7 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import CursorWrapperService from './service'; import CursorContainer from '../container'; @@ -35,12 +35,11 @@ const CursorWrapperContainer = ({ presenterCursorId, multiUserCursorIds, ...rest cursorId={cursorId._id} presenter={false} {...rest} - />), - )} + />))} </g> ); -export default createContainer(() => { +export default withTracker(() => { const { presenterCursorId, multiUserCursorIds } = CursorWrapperService.getCurrentCursorIds(); const isMultiUser = CursorWrapperService.getMultiUserStatus(); @@ -49,7 +48,7 @@ export default createContainer(() => { multiUserCursorIds, isMultiUser, }; -}, CursorWrapperContainer); +})(CursorWrapperContainer); CursorWrapperContainer.propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/presentation/default-content/component.jsx b/bigbluebutton-html5/imports/ui/components/presentation/default-content/component.jsx index eb3e917766fc9a7d017ac26d43fc5ed324b624d4..fa57cc2e724b334966a9aef70e17c24482f46af2 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/default-content/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/default-content/component.jsx @@ -1,7 +1,7 @@ import React, { Component } from 'react'; import { FormattedMessage, FormattedDate } from 'react-intl'; import { TransitionGroup, CSSTransition } from 'react-transition-group'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; import Button from '../../button/component'; export default class DefaultContent extends Component { diff --git a/bigbluebutton-html5/imports/ui/components/presentation/presentation-overlay/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/presentation-overlay/container.jsx index 6600b4ab97409efc09c7804846911cb90203adc1..89f5e39c6f79db9ed7cca302a0edb8b629de28ac 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/presentation-overlay/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/presentation-overlay/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import PresentationOverlayService from './service'; import PresentationOverlay from './component'; @@ -10,9 +10,9 @@ const PresentationOverlayContainer = ({ children, ...rest }) => ( </PresentationOverlay> ); -export default createContainer(() => ({ +export default withTracker(() => ({ updateCursor: PresentationOverlayService.updateCursor, -}), PresentationOverlayContainer); +}))(PresentationOverlayContainer); PresentationOverlayContainer.propTypes = { children: PropTypes.node, diff --git a/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/component.jsx b/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/component.jsx index 95a5321fef63dd41052b1e0e6434848c2f920e52..951246efc2e0bfbeb0e687bc133a738ad40567e0 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { defineMessages, injectIntl, FormattedMessage } from 'react-intl'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; import Button from '/imports/ui/components/button/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const intlMessages = defineMessages({ previousSlideLabel: { diff --git a/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/container.jsx index e414e27505f36303a80b5aaa1ccbd20d144a81ef..6de339c0759f0a2bd04dd54bc60c55a65245a540 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/presentation-toolbar/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import PresentationToolbarService from './service'; import PresentationToolbar from './component'; @@ -25,7 +25,7 @@ const PresentationToolbarContainer = (props) => { return null; }; -export default createContainer((params) => { +export default withTracker((params) => { const data = PresentationToolbarService.getSlideData(params); const { @@ -45,15 +45,12 @@ export default createContainer((params) => { PresentationToolbarService.skipToSlide(event), }, }; -}, PresentationToolbarContainer); +})(PresentationToolbarContainer); PresentationToolbarContainer.propTypes = { // Number of current slide being displayed currentSlideNum: PropTypes.number.isRequired, - // PresentationId of the current presentation - presentationId: PropTypes.string.isRequired, - // Is the user a presenter userIsPresenter: PropTypes.bool.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/component.jsx b/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/component.jsx index 9722a40b6b1254c692d6f09763a76283863a8376..dcb546d924925289750f8377e52c1bc3a1c089cf 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/component.jsx @@ -11,7 +11,7 @@ import ModalFullscreen from '/imports/ui/components/modal/fullscreen/component'; import Icon from '/imports/ui/components/icon/component'; import ButtonBase from '/imports/ui/components/button/base/component'; import Checkbox from '/imports/ui/components/checkbox/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; const propTypes = { intl: intlShape.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/container.jsx b/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/container.jsx index e90e66b8490c22b17470e46888b5d1a8b72f38aa..abcac9f716a19149009636b1d831e56c6b141062 100644 --- a/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/presentation/presentation-uploader/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import Service from './service'; import PresentationUploader from './component'; @@ -8,7 +8,7 @@ const PresentationUploaderContainer = props => ( <PresentationUploader {...props} /> ); -export default createContainer(() => { +export default withTracker(() => { const PRESENTATION_CONFIG = Meteor.settings.public.presentation; const currentPresentations = Service.getPresentations(); @@ -24,4 +24,4 @@ export default createContainer(() => { PRESENTATION_CONFIG.uploadEndpoint, ), }; -}, PresentationUploaderContainer); +})(PresentationUploaderContainer); diff --git a/bigbluebutton-html5/imports/ui/components/screenshare/component.jsx b/bigbluebutton-html5/imports/ui/components/screenshare/component.jsx index 093de370e6ef54ab0be0c1ed601359aa9f67c039..c381280101b799860a9807c0cabff1e0c31199fe 100644 --- a/bigbluebutton-html5/imports/ui/components/screenshare/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/screenshare/component.jsx @@ -7,7 +7,7 @@ export default class ScreenshareComponent extends React.Component { render() { return ( - <video id="screenshareVideo" style={{ height: '100%', width: '100%' }} /> + <video id="screenshareVideo" style={{ height: '100%', width: '100%' }} autoPlay playsInline /> ); } } diff --git a/bigbluebutton-html5/imports/ui/components/screenshare/container.jsx b/bigbluebutton-html5/imports/ui/components/screenshare/container.jsx index 37a2ba3c6fbf2e9d73949c144e2bf0ce7a420d0b..b10659a3dbb169acb2bc2f5a27f8d35b6001796b 100644 --- a/bigbluebutton-html5/imports/ui/components/screenshare/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/screenshare/container.jsx @@ -1,25 +1,26 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { isVideoBroadcasting, presenterScreenshareHasEnded, presenterScreenshareHasStarted } from './service'; import ScreenshareComponent from './component'; class ScreenshareContainer extends React.Component { + componentWillUnmount() { + this.props.presenterScreenshareHasEnded(); + } + render() { if (this.props.isVideoBroadcasting()) { return <ScreenshareComponent {...this.props} />; } - } - componentWillUnmount() { - this.props.presenterScreenshareHasEnded(); + return null; } - } -export default createContainer(() => ({ +export default withTracker(() => ({ isVideoBroadcasting, presenterScreenshareHasStarted, presenterScreenshareHasEnded, -}), ScreenshareContainer); +}))(ScreenshareContainer); diff --git a/bigbluebutton-html5/imports/ui/components/screenshare/service.js b/bigbluebutton-html5/imports/ui/components/screenshare/service.js index cdb7ecc5ef638abb9c47709b390b6e2b68bab139..33470b2ecd571fe97d01092772178b9240ecaf88 100644 --- a/bigbluebutton-html5/imports/ui/components/screenshare/service.js +++ b/bigbluebutton-html5/imports/ui/components/screenshare/service.js @@ -1,33 +1,46 @@ import Screenshare from '/imports/api/screenshare'; import VertoBridge from '/imports/api/screenshare/client/bridge'; +import KurentoBridge from '/imports/api/screenshare/client/bridge'; import PresentationService from '/imports/ui/components/presentation/service'; // when the meeting information has been updated check to see if it was // screensharing. If it has changed either trigger a call to receive video // and display it, or end the call and hide the video -function isVideoBroadcasting() { +const isVideoBroadcasting = () => { const ds = Screenshare.findOne({}); if (!ds) { return false; } - return ds.screenshare.stream && !PresentationService.isPresenter(); + + // TODO commented out isPresenter to enable screen viewing to the presenter + return ds.screenshare.stream; // && !PresentationService.isPresenter(); } // if remote screenshare has been ended disconnect and hide the video stream -function presenterScreenshareHasEnded() { - // references a function in the global namespace inside verto_extension.js +const presenterScreenshareHasEnded = () => { + // references a function in the global namespace inside kurento-extension.js // that we load dynamically - VertoBridge.vertoExitVideo(); + KurentoBridge.kurentoExitVideo(); } // if remote screenshare has been started connect and display the video stream -function presenterScreenshareHasStarted() { - // references a function in the global namespace inside verto_extension.js +const presenterScreenshareHasStarted = () => { + // references a function in the global namespace inside kurento-extension.js // that we load dynamically - VertoBridge.vertoWatchVideo(); + //VertoBridge.vertoWatchVideo(); + KurentoBridge.kurentoWatchVideo(); +} + +const shareScreen = () => { + KurentoBridge.kurentoShareScreen(); +} + +const unshareScreen = () => { + console.log("Exiting screenshare"); + KurentoBridge.kurentoExitScreenShare(); } export { - isVideoBroadcasting, presenterScreenshareHasEnded, presenterScreenshareHasStarted, + isVideoBroadcasting, presenterScreenshareHasEnded, presenterScreenshareHasStarted, shareScreen, unshareScreen, }; diff --git a/bigbluebutton-html5/imports/ui/components/settings/component.jsx b/bigbluebutton-html5/imports/ui/components/settings/component.jsx index f0f50d876667d3d262e60382e1ca93968f60ce8a..7ad3ac54d196889873a4d74c21a41692fd80d970 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/component.jsx @@ -9,7 +9,7 @@ import PropTypes from 'prop-types'; import { withModalMounter } from '../modal/service'; import Icon from '../icon/component'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ appTabLabel: { @@ -73,10 +73,12 @@ class Settings extends Component { constructor(props) { super(props); - const video = props.video; - const application = props.application; - const cc = props.cc; - const participants = props.participants; + const { + video, + participants, + cc, + application, + } = props; this.state = { current: { @@ -128,9 +130,16 @@ class Settings extends Component { onSelect={this.handleSelectTab} selectedIndex={this.state.selectedTab} role="presentation" + selectedTabPanelClassName={styles.selectedTab} > - <TabList className={styles.tabList}> - <Tab className={styles.tabSelector} aria-labelledby="appTab"> + <TabList + className={styles.tabList} + > + <Tab + className={styles.tabSelector} + aria-labelledby="appTab" + selectedClassName={styles.selected} + > <Icon iconName="application" className={styles.icon} /> <span id="appTab">{intl.formatMessage(intlMessages.appTabLabel)}</span> </Tab> @@ -138,7 +147,11 @@ class Settings extends Component { {/* <Icon iconName='video' className={styles.icon}/> */} {/* <span id="videoTab">{intl.formatMessage(intlMessages.videoTabLabel)}</span> */} {/* </Tab> */} - <Tab className={styles.tabSelector} aria-labelledby="ccTab"> + <Tab + className={styles.tabSelector} + aria-labelledby="ccTab" + selectedClassName={styles.selected} + > <Icon iconName="user" className={styles.icon} /> <span id="ccTab">{intl.formatMessage(intlMessages.closecaptionTabLabel)}</span> </Tab> @@ -181,7 +194,7 @@ class Settings extends Component { ); } render() { - const intl = this.props.intl; + const { intl } = this.props; return ( <Modal diff --git a/bigbluebutton-html5/imports/ui/components/settings/container.jsx b/bigbluebutton-html5/imports/ui/components/settings/container.jsx index b5ff6d69bfd58d33d4f6407b76f71136ea2e1b76..2fe0599d976d0f597f93948069c64b6e21865c13 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/container.jsx @@ -1,25 +1,20 @@ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; -import Settings from './component'; +import React from 'react'; +import { withTracker } from 'meteor/react-meteor-data'; import SettingsService from '/imports/ui/services/settings'; +import Settings from './component'; import { - getClosedCaptionLocales, - getUserRoles, - updateSettings, - getAvailableLocales, - } from './service'; + getClosedCaptionLocales, + getUserRoles, + updateSettings, + getAvailableLocales, +} from './service'; -class SettingsContainer extends Component { - render() { - return ( - <Settings {...this.props} /> - ); - } -} +const SettingsContainer = props => ( + <Settings {...props} /> +); -export default createContainer(() => ({ +export default withTracker(() => ({ audio: SettingsService.audio, video: SettingsService.video, application: SettingsService.application, @@ -29,4 +24,4 @@ export default createContainer(() => ({ locales: getClosedCaptionLocales(), availableLocales: getAvailableLocales(), isModerator: getUserRoles() === 'MODERATOR', -}), SettingsContainer); +}))(SettingsContainer); diff --git a/bigbluebutton-html5/imports/ui/components/settings/styles.scss b/bigbluebutton-html5/imports/ui/components/settings/styles.scss index 27322cf43b2fb04d05e85208c1681eb3db0f974d..ba31c422dc33f516120ac7b9e3dca9f1891b97be 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/settings/styles.scss @@ -4,55 +4,83 @@ display: flex; flex-flow: row; justify-content: flex-start; + @include mq($small-only) { + width: 100%; + flex-flow: column; + } } .tabList { display: flex; flex-flow: column; - flex-grow: 0; - border: none !important; - flex-shrink: 0; - border-right: 0.2rem solid #d4d9df; + border: none; + padding: 0; + margin: 0; + width: calc(100% / 3); + + @include mq($small-only) { + width: 100%; + flex-flow: row; + flex-wrap: wrap; + justify-content: center; + } } .icon { - margin-right: 0.7rem; - color: $color-gray-light; + margin-right: .5rem; + font-size: $font-size-large; } .tabSelector { font-size: 0.9rem; - padding: 0.1rem 0 !important; - padding-right: 1.2rem !important; - display: flex !important; + display: flex; flex-flow: row; + flex: 0 0 auto; justify-content: flex-start; border: none !important; - border-radius: 0 !important; - bottom: 0 !important; - margin: 0.5rem 0; - margin-right: 0.5rem; - transition: 0.3s color; + padding: $md-padding-y $md-padding-x; color: $color-gray-dark; + border-radius: .2rem; + cursor: pointer; + margin-bottom: $sm-padding-y; + align-items: center; + flex-grow: 0; + min-width: 0; + & > span { + @extend %text-elipsis; + } - &:first-child { - margin-top: 0; + @include mq($small-only) { + max-width: 100%; + margin-right: $sm-padding-x; + & > .icon { + display: none; + } } +} - &[aria-selected="true"] { - border-right: 0.2rem solid $color-primary !important; - padding-right: 1rem !important; - color: $color-link !important; +.selected { + color: $color-white; + background-color: $color-primary; + font-weight: bold; - &>.icon { - color: $color-link !important; - } + & > .icon { + color: $color-white; } } .tabPanel { - flex-grow: 1; - padding: 1rem; - padding-top: 0; - padding-right: 0; + display: none; + margin-left: 1rem; + width: calc(100% / 3 * 2); + + @include mq($small-only) { + width: 100%; + margin-left: 0; + margin-top: 1rem; + } +} + +.selectedTab { + display: block; } diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/application/component.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/application/component.jsx index 145dc92c8b58136de4f6e3723445b83d477ad5c1..4a744a5e3e44d53060b766806f5274e22cd87df5 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/application/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/application/component.jsx @@ -4,7 +4,7 @@ import cx from 'classnames'; import Toggle from '/imports/ui/components/switch/component'; import { defineMessages, injectIntl } from 'react-intl'; import BaseMenu from '../base/component'; -import styles from '../styles'; +import { styles } from '../styles'; const MIN_FONTSIZE = 0; const MAX_FONTSIZE = 4; diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/application/container.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/application/container.jsx index 3320793888732fad6b57bd585d718d637df28617..b9011514dd1d53ea7551f4abda72077f85ce2758 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/application/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/application/container.jsx @@ -1,15 +1,15 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import Application from './component'; -const ApplicationContainer = props => ( +const ApplicationContainer = ({ children, ...props }) => ( <Application {...props}> - {props.children} + {children} </Application> - ); +); -export default createContainer(() => ({ +export default withTracker(() => ({ fontSizes: [ '12px', '14px', @@ -17,4 +17,4 @@ export default createContainer(() => ({ '18px', '20px', ], -}), ApplicationContainer); +}))(ApplicationContainer); diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/component.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/component.jsx index 7eff5472cd0c082bda5dd5d84fa815faaad1be11..50a7e11f3ca06b3d192c0634663fb5a9a657aeeb 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/component.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import styles from '../styles'; +import { styles } from '../styles'; import cx from 'classnames'; import BaseMenu from '../base/component'; import Toggle from '/imports/ui/components/switch/component'; diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/container.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/container.jsx index 53979f92925a2f9ce234b53d1b678a879012e145..e3d5c8861fe8ce2e8d600d7d9f49e4adb3e9bcb9 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/closed-captions/container.jsx @@ -1,17 +1,12 @@ -import React, { Component } from 'react'; -import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import React from 'react'; +import { withTracker } from 'meteor/react-meteor-data'; import ClosedCaptionsMenu from './component'; import Service from './service'; -class ClosedCaptionsMenuContainer extends Component { - render() { - return ( - <ClosedCaptionsMenu {...this.props}> - {this.props.children} - </ClosedCaptionsMenu> - ); - } -} +const ClosedCaptionsMenuContainer = ({ children, ...props }) => ( + <ClosedCaptionsMenu {...props}> + {children} + </ClosedCaptionsMenu> +); -export default createContainer(() => Service.getClosedCaptionSettings(), ClosedCaptionsMenuContainer); +export default withTracker(() => Service.getClosedCaptionSettings(), ClosedCaptionsMenuContainer); diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/participants/component.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/participants/component.jsx index 779ac5cd5a5370aec55f6bfdd66d8ab0cf63cb30..83071940d7c97856a0125d4774ab0b2d346fc332 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/participants/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/participants/component.jsx @@ -5,7 +5,7 @@ import cx from 'classnames'; import { defineMessages, injectIntl } from 'react-intl'; import _ from 'lodash'; import BaseMenu from '../base/component'; -import styles from '../styles'; +import { styles } from '../styles'; const intlMessages = defineMessages({ participantsTitle: { diff --git a/bigbluebutton-html5/imports/ui/components/settings/submenus/video/component.jsx b/bigbluebutton-html5/imports/ui/components/settings/submenus/video/component.jsx index 4db656f01b51969a9b769636447d75419e64b5a6..51bd64c2f3c9511ef0b90b73d08975d5481d8cad 100644 --- a/bigbluebutton-html5/imports/ui/components/settings/submenus/video/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/settings/submenus/video/component.jsx @@ -3,7 +3,7 @@ import Toggle from '/imports/ui/components/switch/component'; import cx from 'classnames'; import { defineMessages, injectIntl } from 'react-intl'; import BaseMenu from '../base/component'; -import styles from '../styles'; +import { styles } from '../styles'; const intlMessages = defineMessages({ videoSectionTitle: { diff --git a/bigbluebutton-html5/imports/ui/components/toast/component.jsx b/bigbluebutton-html5/imports/ui/components/toast/component.jsx index 3929ec7c0817a0c9f34662be157801e8e5a0587f..e3adfcdbc02bbc56a6f33fc53e6338d3f7cce786 100644 --- a/bigbluebutton-html5/imports/ui/components/toast/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/toast/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { toast } from 'react-toastify'; import Icon from '../icon/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { icon: PropTypes.string, diff --git a/bigbluebutton-html5/imports/ui/components/toast/container.jsx b/bigbluebutton-html5/imports/ui/components/toast/container.jsx index 26b92d5b989d5a26aec58f448ac81a15de90d195..59242e12224ef5f4120f0be657c741136d7523d1 100644 --- a/bigbluebutton-html5/imports/ui/components/toast/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/toast/container.jsx @@ -1,6 +1,7 @@ import React from 'react'; +import Breakouts from '/imports/api/breakouts'; import { ToastContainer as Toastify } from 'react-toastify'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { defineMessages, injectIntl } from 'react-intl'; import injectNotify from '/imports/ui/components/toast/inject-notify/component'; @@ -8,9 +9,14 @@ import Auth from '/imports/ui/services/auth'; import Meetings from '/imports/api/meetings'; import Icon from '../icon/component'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ + + toastBreakoutRoomEnded: { + id: 'app.toast.breakoutRoomEnded', + description: 'message when the breakout room is ended', + }, notificationRecordingStart: { id: 'app.notification.recordingStart', description: 'Notification for when the recording start', @@ -32,7 +38,13 @@ class ToastContainer extends React.Component { } } -export default injectIntl(injectNotify(createContainer(({ notify, intl }) => { +export default injectIntl(injectNotify(withTracker(({ notify, intl }) => { + Breakouts.find().observeChanges({ + removed() { + notify(intl.formatMessage(intlMessages.toastBreakoutRoomEnded), 'info', 'rooms'); + }, + }); + const meetingId = Auth.meetingID; Meetings.find({ meetingId }).observeChanges({ @@ -59,4 +71,4 @@ export default injectIntl(injectNotify(createContainer(({ notify, intl }) => { closeOnClick: true, pauseOnHover: true, }; -}, ToastContainer))); +})(ToastContainer))); diff --git a/bigbluebutton-html5/imports/ui/components/user-avatar/component.jsx b/bigbluebutton-html5/imports/ui/components/user-avatar/component.jsx index 7201a52a2a0a5b8ba6c981c8467a9203d1917424..93b28165f6c9923ca0ed406121487050e18291dd 100644 --- a/bigbluebutton-html5/imports/ui/components/user-avatar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-avatar/component.jsx @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { children: PropTypes.node.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-icon/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-icon/component.jsx index c5cd7bb62943a8f06d8718db1ea0170d1d76ab25..0dc1867befbd1b47d59493a1106ca2472edabdb5 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-icon/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-icon/component.jsx @@ -1,7 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import Icon from '/imports/ui/components/icon/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { icon: PropTypes.string.isRequired, diff --git a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-unread-messages/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-unread-messages/component.jsx index 5769c46351a65f531e8e40d61c1180416b054745..a6ac2cb9ff972422e2165fc0aae2d786e6b899f1 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-unread-messages/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/chat-unread-messages/component.jsx @@ -1,7 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { defineMessages, injectIntl } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; const intlMessages = defineMessages({ unreadPlural: { diff --git a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/component.jsx index 8600181af8daa7a6a7d5bfaf1fc379d794c2e529..96d76f4e49ecd51a3e7e2377a9866f522379015c 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/chat-list-item/component.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { withRouter, Link } from 'react-router'; import cx from 'classnames'; import { defineMessages, injectIntl } from 'react-intl'; -import styles from './styles'; +import { styles } from './styles'; import ChatAvatar from './chat-avatar/component'; import ChatIcon from './chat-icon/component'; import ChatUnreadCounter from './chat-unread-messages/component'; diff --git a/bigbluebutton-html5/imports/ui/components/user-list/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/component.jsx index eec083ad33ee82fb9c0f726dd666ec3bee36e768..330f874818d9b3d6bc21e9600b65c264c73d8748 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/component.jsx @@ -4,7 +4,7 @@ import PropTypes from 'prop-types'; import { withRouter } from 'react-router'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; -import styles from './styles'; +import { styles } from './styles'; import UserContent from './user-list-content/component'; const propTypes = { @@ -23,7 +23,7 @@ const propTypes = { isPublicChat: PropTypes.func.isRequired, setEmojiStatus: PropTypes.func.isRequired, assignPresenter: PropTypes.func.isRequired, - kickUser: PropTypes.func.isRequired, + removeUser: PropTypes.func.isRequired, toggleVoice: PropTypes.func.isRequired, changeRole: PropTypes.func.isRequired, roving: PropTypes.func.isRequired, @@ -63,7 +63,7 @@ class UserList extends Component { isBreakoutRoom={this.props.isBreakoutRoom} setEmojiStatus={this.props.setEmojiStatus} assignPresenter={this.props.assignPresenter} - kickUser={this.props.kickUser} + removeUser={this.props.removeUser} toggleVoice={this.props.toggleVoice} changeRole={this.props.changeRole} meeting={this.props.meeting} diff --git a/bigbluebutton-html5/imports/ui/components/user-list/container.jsx b/bigbluebutton-html5/imports/ui/components/user-list/container.jsx index 4d8063c9ed63e075673e283c6919bab81466a4df..af6165f73585a456bd1f6ea8ae50f2cdb5cc01e1 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import { meetingIsBreakout } from '/imports/ui/components/app/service'; import Meetings from '/imports/api/meetings'; import Service from './service'; @@ -8,7 +8,6 @@ import UserList from './component'; const propTypes = { openChats: PropTypes.arrayOf(String).isRequired, - openChat: PropTypes.string.isRequired, users: PropTypes.arrayOf(Object).isRequired, currentUser: PropTypes.shape({}).isRequired, meeting: PropTypes.shape({}).isRequired, @@ -19,16 +18,10 @@ const propTypes = { isPublicChat: PropTypes.func.isRequired, setEmojiStatus: PropTypes.func.isRequired, assignPresenter: PropTypes.func.isRequired, - kickUser: PropTypes.func.isRequired, + removeUser: PropTypes.func.isRequired, toggleVoice: PropTypes.func.isRequired, changeRole: PropTypes.func.isRequired, roving: PropTypes.func.isRequired, - userActions: PropTypes.func.isRequired, - children: PropTypes.Object, -}; - -const defaultProps = { - children: {}, }; const UserListContainer = (props) => { @@ -36,10 +29,7 @@ const UserListContainer = (props) => { users, currentUser, openChats, - openChat, - userActions, isBreakoutRoom, - children, meeting, getAvailableActions, normalizeEmojiName, @@ -47,7 +37,7 @@ const UserListContainer = (props) => { isPublicChat, setEmojiStatus, assignPresenter, - kickUser, + removeUser, toggleVoice, changeRole, roving, @@ -59,35 +49,28 @@ const UserListContainer = (props) => { meeting={meeting} currentUser={currentUser} openChats={openChats} - openChat={openChat} isBreakoutRoom={isBreakoutRoom} setEmojiStatus={setEmojiStatus} assignPresenter={assignPresenter} - kickUser={kickUser} + removeUser={removeUser} toggleVoice={toggleVoice} changeRole={changeRole} - userActions={userActions} getAvailableActions={getAvailableActions} normalizeEmojiName={normalizeEmojiName} isMeetingLocked={isMeetingLocked} isPublicChat={isPublicChat} roving={roving} - > - {children} - </UserList> + /> ); }; UserListContainer.propTypes = propTypes; -UserListContainer.defaultProps = defaultProps; -export default createContainer(({ params }) => ({ +export default withTracker(({ params }) => ({ users: Service.getUsers(), meeting: Meetings.findOne({}), currentUser: Service.getCurrentUser(), openChats: Service.getOpenChats(params.chatID), - openChat: params.chatID, - userActions: Service.userActions, isBreakoutRoom: meetingIsBreakout(), getAvailableActions: Service.getAvailableActions, normalizeEmojiName: Service.normalizeEmojiName, @@ -95,8 +78,8 @@ export default createContainer(({ params }) => ({ isPublicChat: Service.isPublicChat, setEmojiStatus: Service.setEmojiStatus, assignPresenter: Service.assignPresenter, - kickUser: Service.kickUser, + removeUser: Service.removeUser, toggleVoice: Service.toggleVoice, changeRole: Service.changeRole, roving: Service.roving, -}), UserListContainer); +}))(UserListContainer); diff --git a/bigbluebutton-html5/imports/ui/components/user-list/service.js b/bigbluebutton-html5/imports/ui/components/user-list/service.js index 1116627ff613bc3a08bacf591457e32fcace4a58..9ad599475a17a0354cfddd1331426afaf35d62bb 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/service.js +++ b/bigbluebutton-html5/imports/ui/components/user-list/service.js @@ -239,8 +239,8 @@ const getAvailableActions = (currentUser, user, router, isBreakoutRoom) => { && user.emoji.status !== EMOJI_STATUSES.none && !isDialInUser; - // if currentUser is a moderator, allow kicking other users - const allowedToKick = currentUser.isModerator && !user.isCurrent && !isBreakoutRoom; + // if currentUser is a moderator, allow removing other users + const allowedToRemove = currentUser.isModerator && !user.isCurrent && !isBreakoutRoom; const allowedToSetPresenter = currentUser.isModerator && !user.isPresenter @@ -261,7 +261,7 @@ const getAvailableActions = (currentUser, user, router, isBreakoutRoom) => { allowedToMuteAudio, allowedToUnmuteAudio, allowedToResetStatus, - allowedToKick, + allowedToRemove, allowedToSetPresenter, allowedToPromote, allowedToDemote, @@ -301,11 +301,11 @@ const setEmojiStatus = (userId) => { makeCall('setEmojiStatus', userId, 'none'); const assignPresenter = (userId) => { makeCall('assignPresenter', userId); }; -const kickUser = (userId) => { +const removeUser = (userId) => { if (isVoiceOnlyUser(userId)) { makeCall('ejectUserFromVoice', userId); } else { - makeCall('kickUser', userId); + makeCall('removeUser', userId); } }; @@ -352,7 +352,7 @@ const roving = (event, itemCount, changeState) => { export default { setEmojiStatus, assignPresenter, - kickUser, + removeUser, toggleVoice, changeRole, getUsers, diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/component.jsx index 279222ea48a60224d489f846a18cd3fb5f8ab7e2..48c0a863730b4ba978c96353523f1e930078c035 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from './styles'; +import { styles } from './styles'; import UserParticipants from './user-participants/component'; import UserMessages from './user-messages/component'; @@ -20,7 +20,7 @@ const propTypes = { isPublicChat: PropTypes.func.isRequired, setEmojiStatus: PropTypes.func.isRequired, assignPresenter: PropTypes.func.isRequired, - kickUser: PropTypes.func.isRequired, + removeUser: PropTypes.func.isRequired, toggleVoice: PropTypes.func.isRequired, changeRole: PropTypes.func.isRequired, roving: PropTypes.func.isRequired, @@ -54,7 +54,7 @@ class UserContent extends Component { isBreakoutRoom={this.props.isBreakoutRoom} setEmojiStatus={this.props.setEmojiStatus} assignPresenter={this.props.assignPresenter} - kickUser={this.props.kickUser} + removeUser={this.props.removeUser} toggleVoice={this.props.toggleVoice} changeRole={this.props.changeRole} getAvailableActions={this.props.getAvailableActions} diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-messages/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-messages/component.jsx index 9b6aa43332791bd179d7e6ecf07ed4edbf51464e..d71b6270cface4869da5c74fe5dc260a732460e3 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-messages/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-messages/component.jsx @@ -3,7 +3,7 @@ import { TransitionGroup, CSSTransition } from 'react-transition-group'; import PropTypes from 'prop-types'; import { defineMessages } from 'react-intl'; import cx from 'classnames'; -import styles from '/imports/ui/components/user-list/user-list-content/styles'; +import { styles } from '/imports/ui/components/user-list/user-list-content/styles'; import ChatListItem from './../../chat-list-item/component'; const propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/component.jsx index b5b55c34bdd1d9c653f01b1454a5ace3a02da4bc..f56c57859e11fcc04aa6d4566b26aece26008b24 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/component.jsx @@ -3,7 +3,7 @@ import { TransitionGroup, CSSTransition } from 'react-transition-group'; import PropTypes from 'prop-types'; import { defineMessages } from 'react-intl'; import cx from 'classnames'; -import styles from '/imports/ui/components/user-list/user-list-content/styles'; +import { styles } from '/imports/ui/components/user-list/user-list-content/styles'; import UserListItem from './user-list-item/component'; const propTypes = { @@ -17,7 +17,7 @@ const propTypes = { isBreakoutRoom: PropTypes.bool, setEmojiStatus: PropTypes.func.isRequired, assignPresenter: PropTypes.func.isRequired, - kickUser: PropTypes.func.isRequired, + removeUser: PropTypes.func.isRequired, toggleVoice: PropTypes.func.isRequired, changeRole: PropTypes.func.isRequired, getAvailableActions: PropTypes.func.isRequired, @@ -60,8 +60,8 @@ const intlMessages = defineMessages({ id: 'app.userList.menu.makePresenter.label', description: 'Set this user to be the presenter in this meeting', }, - KickUserLabel: { - id: 'app.userList.menu.kickUser.label', + RemoveUserLabel: { + id: 'app.userList.menu.removeUser.label', description: 'Forcefully remove this user from the meeting', }, MuteUserAudioLabel: { @@ -140,7 +140,7 @@ class UserParticipants extends Component { changeRole, assignPresenter, setEmojiStatus, - kickUser, + removeUser, toggleVoice, } = this.props; @@ -161,9 +161,9 @@ class UserParticipants extends Component { handler: user => assignPresenter(user.id), icon: 'presentation', }, - kick: { - label: user => intl.formatMessage(intlMessages.KickUserLabel, { 0: user.name }), - handler: user => kickUser(user.id), + remove: { + label: user => intl.formatMessage(intlMessages.RemoveUserLabel, { 0: user.name }), + handler: user => removeUser(user.id), icon: 'circle_close', }, mute: { diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/component.jsx index fe70a3f4a39eef557baaacc5bc2a803c9477af27..26d2c09dc9acf5647b53ce5f085359ab838b4be4 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/component.jsx @@ -64,7 +64,7 @@ class UserListItem extends Component { openChat, clearStatus, setPresenter, - kick, + remove, mute, unmute, promote, @@ -78,7 +78,7 @@ class UserListItem extends Component { allowedToMuteAudio, allowedToUnmuteAudio, allowedToResetStatus, - allowedToKick, + allowedToRemove, allowedToSetPresenter, allowedToPromote, allowedToDemote, @@ -90,7 +90,7 @@ class UserListItem extends Component { (allowedToUnmuteAudio ? UserListItem.createAction(unmute, user) : null), (allowedToResetStatus ? UserListItem.createAction(clearStatus, user) : null), (allowedToSetPresenter ? UserListItem.createAction(setPresenter, user) : null), - (allowedToKick ? UserListItem.createAction(kick, user) : null), + (allowedToRemove ? UserListItem.createAction(remove, user) : null), (allowedToPromote ? UserListItem.createAction(promote, user) : null), (allowedToDemote ? UserListItem.createAction(demote, user) : null), ]); diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-action/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-action/component.jsx index f1fa3bdcd017a4dd46670ecc5c5447b1aadc6174..8be32c6163f4b0a4ec6a321d625cad280032c460 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-action/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-action/component.jsx @@ -9,21 +9,20 @@ const propTypes = { options: PropTypes.arrayOf(PropTypes.shape({})).isRequired, }; -const UserActions = (props) => { - const { key, icon, label, handler, options } = props; +export default class UserActions extends React.PureComponent { + render() { + const { key, icon, label, handler, options } = this.props; - const userAction = ( - <DropdownListItem - key={key} - icon={icon} - label={label} - defaultMessage={label} - onClick={() => handler.call(this, ...options)} - /> - ); - - return userAction; -}; + return ( + <DropdownListItem + key={key} + icon={icon} + label={label} + defaultMessage={label} + onClick={() => handler.call(this, ...options)} + /> + ); + } +} UserActions.propTypes = propTypes; -export default UserActions; diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-icons/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-icons/component.jsx index 752796dd32f908c36a82c810eb8be66659223c66..fd945bc2b79cce55c2164ec5bc5fb3ab387de788 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-icons/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-icons/component.jsx @@ -1,7 +1,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import Icon from '/imports/ui/components/icon/component'; -import styles from './styles'; +import { styles } from './styles'; const propTypes = { user: PropTypes.shape({ diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-list-content/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-list-content/component.jsx index 17f4b7ae3deb70aaca89c87404d19c99f6896437..5fed67c2ea2d7421ce12b34c995dcdbd1b099ff0 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-list-content/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-list-content/component.jsx @@ -11,7 +11,7 @@ import DropdownContent from '/imports/ui/components/dropdown/content/component'; import DropdownList from '/imports/ui/components/dropdown/list/component'; import DropdownListSeparator from '/imports/ui/components/dropdown/list/separator/component'; import DropdownListTitle from '/imports/ui/components/dropdown/list/title/component'; -import styles from './styles'; +import { styles } from './styles'; import UserName from './../user-name/component'; import UserIcons from './../user-icons/component'; @@ -84,15 +84,24 @@ class UserListContent extends Component { this.getDropdownMenuParent = this.getDropdownMenuParent.bind(this); } + componentWillMount() { + this.title = _.uniqueId('dropdown-title-'); + this.seperator = _.uniqueId('action-separator-'); + } + componentDidUpdate() { this.checkDropdownDirection(); } onActionsShow() { - const dropdown = findDOMNode(this.dropdown); + const dropdown = this.getDropdownMenuParent(); const scrollContainer = this.props.getScrollContainerRef(); const dropdownTrigger = dropdown.children[0]; + const list = findDOMNode(this.list); + const children = [].slice.call(list.children); + children.find(child => child.getAttribute('role') === 'menuitem').focus(); + this.setState({ isActionsOpen: true, dropdownVisible: false, @@ -128,7 +137,7 @@ class UserListContent extends Component { */ checkDropdownDirection() { if (this.isDropdownActivedByUser()) { - const dropdown = findDOMNode(this.dropdown); + const dropdown = this.getDropdownMenuParent(); const dropdownTrigger = dropdown.children[0]; const dropdownContent = dropdown.children[1]; @@ -163,12 +172,6 @@ class UserListContent extends Component { */ isDropdownActivedByUser() { const { isActionsOpen, dropdownVisible } = this.state; - const list = findDOMNode(this.list); - - if (isActionsOpen && dropdownVisible) { - const children = [].slice.call(list.children); - children.find(child => child.getAttribute('role') === 'menuitem').focus(); - } return isActionsOpen && !dropdownVisible; } @@ -283,13 +286,14 @@ class UserListContent extends Component { > { [ - (<DropdownListTitle - description={intl.formatMessage(messages.menuTitleContext)} - key={_.uniqueId('dropdown-list-title')} - > - {user.name} - </DropdownListTitle>), - (<DropdownListSeparator key={_.uniqueId('action-separator')} />), + ( + <DropdownListTitle + description={intl.formatMessage(messages.menuTitleContext)} + key={this.title} + > + {user.name} + </DropdownListTitle>), + (<DropdownListSeparator key={this.seperator} />), ].concat(actions) } </DropdownList> diff --git a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-name/component.jsx b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-name/component.jsx index 28f4df490187d90372724678c73ad352eb16f538..4b67eb7770f3f9b9653b7f7449166c0190beaa86 100644 --- a/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-name/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/user-list/user-list-content/user-participants/user-list-item/user-name/component.jsx @@ -2,7 +2,7 @@ import React from 'react'; import PropTypes from 'prop-types'; import { defineMessages } from 'react-intl'; import Icon from '/imports/ui/components/icon/component'; -import styles from './styles'; +import { styles } from './styles'; const messages = defineMessages({ diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx b/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx index fcd9e12dbd8bff5bd7965e6b0cc626e36b7bd76c..db8c606e23ff46f9d4477517ac12cb3e73537507 100644 --- a/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/video-dock/component.jsx @@ -1,11 +1,571 @@ -import React from 'react'; -import ScreenshareContainer from '/imports/ui/components/screenshare/container'; -import styles from './styles'; +import React, { Component } from 'react'; +import { styles } from './styles'; +import { defineMessages, injectIntl } from 'react-intl'; +import VideoService from './service'; +import { log } from '/imports/ui/services/api'; +import { notify } from '/imports/ui/services/notification'; +import { toast } from 'react-toastify'; +import Toast from '/imports/ui/components/toast/component'; -const VideoDock = () => ( - <div className={styles.videoDock}> - <ScreenshareContainer /> - </div> -); +const intlMessages = defineMessages({ + iceCandidateError: { + id: 'app.video.iceCandidateError', + description: 'Error message for ice candidate fail', + }, + permissionError: { + id: 'app.video.permissionError', + description: 'Error message for webcam permission', + }, + sharingError: { + id: 'app.video.sharingError', + description: 'Error on sharing webcam', + }, + chromeExtensionError: { + id: 'app.video.chromeExtensionError', + description: 'Error message for Chrome Extension not installed', + }, + chromeExtensionErrorLink: { + id: 'app.video.chromeExtensionErrorLink', + description: 'Error message for Chrome Extension not installed', + }, +}); -export default VideoDock; +class VideoElement extends Component { + constructor(props) { + super(props); + } + + render() { + return <video id={`video-elem-${this.props.videoId}`} width={320} height={240} autoPlay={true} playsInline={true} />; + } + + componentDidMount() { + this.props.onMount(this.props.videoId, false); + } +} + +class VideoDock extends Component { + constructor(props) { + super(props); + + // Set a valid bbb-webrtc-sfu application server socket in the settings + this.ws = new ReconnectingWebSocket(Meteor.settings.public.kurento.wsUrl); + this.wsQueue = []; + this.webRtcPeers = {}; + this.reconnectWebcam = false; + this.reconnectList = []; + this.sharedCameraTimeout = null; + this.subscribedCamerasTimeouts = []; + + this.state = { + videos: {}, + sharedWebcam : false, + }; + + this.unshareWebcam = this.unshareWebcam.bind(this); + this.shareWebcam = this.shareWebcam.bind(this); + + this.onWsOpen = this.onWsOpen.bind(this); + this.onWsClose = this.onWsClose.bind(this); + this.onWsMessage = this.onWsMessage.bind(this); + } + + setupReconnectVideos() { + for (id in this.webRtcPeers) { + this.disconnected(id); + this.stop(id); + } + } + + reconnectVideos() { + for (i in this.reconnectList) { + const id = this.reconnectList[i]; + + // TODO: base this on BBB API users instead of using memory + if (id != this.myId) { + setTimeout(() => { + log('debug', ` [camera] Trying to reconnect camera ${id}`); + this.start(id, false); + }, 5000); + } + } + + if (this.reconnectWebcam) { + log('debug', ` [camera] Trying to re-share ${this.myId} after reconnect.`); + this.start(this.myId, true); + } + + this.reconnectWebcam = false; + this.reconnectList = []; + } + + componentDidMount() { + const ws = this.ws; + const { users, userId } = this.props; + + users.forEach((user) => { + if (user.has_stream && user.userId !== userId) { + this.start(user.userId, false); + } + }) + + document.addEventListener('joinVideo', this.shareWebcam.bind(this));// TODO find a better way to do this + document.addEventListener('exitVideo', this.unshareWebcam.bind(this)); + document.addEventListener('installChromeExtension', this.installChromeExtension.bind(this)); + + window.addEventListener('resize', this.adjustVideos); + + ws.addEventListener('message', this.onWsMessage); + } + + componentWillMount () { + this.ws.addEventListener('open', this.onWsOpen); + this.ws.addEventListener('close', this.onWsClose); + + window.addEventListener('online', this.ws.open.bind(this.ws)); + window.addEventListener('offline', this.ws.close.bind(this.ws)); + } + + componentWillUnmount () { + document.removeEventListener('joinVideo', this.shareWebcam); + document.removeEventListener('exitVideo', this.unshareWebcam); + document.removeEventListener('installChromeExtension', this.installChromeExtension); + window.removeEventListener('resize', this.adjustVideos); + + this.ws.removeEventListener('message', this.onWsMessage); + this.ws.removeEventListener('open', this.onWsOpen); + this.ws.removeEventListener('close', this.onWsClose); + // Close websocket connection to prevent multiple reconnects from happening + + window.removeEventListener('online', this.ws.open); + window.removeEventListener('offline', this.ws.close); + + this.ws.close(); + } + + adjustVideos () { + setTimeout(() => { + window.adjustVideos('webcamArea', true); + }, 0); + } + + onWsOpen () { + log('debug', '------ Websocket connection opened.'); + + // -- Resend queued messages that happened when socket was not connected + while (this.wsQueue.length > 0) { + this.sendMessage(this.wsQueue.pop()); + } + + this.reconnectVideos(); + } + + onWsClose (error) { + log('debug', '------ Websocket connection closed.'); + + this.setupReconnectVideos(); + } + + onWsMessage (msg) { + const { intl } = this.props; + const parsedMessage = JSON.parse(msg.data); + + console.log('Received message new ws message: '); + console.log(parsedMessage); + + switch (parsedMessage.id) { + + case 'startResponse': + this.startResponse(parsedMessage); + break; + + case 'error': + this.handleError(parsedMessage); + break; + + case 'playStart': + this.handlePlayStart(parsedMessage); + break; + + case 'playStop': + this.handlePlayStop(parsedMessage); + + break; + + case 'iceCandidate': + + const webRtcPeer = this.webRtcPeers[parsedMessage.cameraId]; + + if (webRtcPeer !== null) { + if (webRtcPeer.didSDPAnswered) { + webRtcPeer.addIceCandidate(parsedMessage.candidate, (err) => { + if (err) { + this.notifyError(intl.formatMessage(intlMessages.iceCandidateError)); + return log('error', `Error adding candidate: ${err}`); + } + }); + } else { + webRtcPeer.iceQueue.push(parsedMessage.candidate); + } + } else { + log('error', ' [ICE] Message arrived before webRtcPeer?'); + } + break; + } + }; + + start(id, shareWebcam) { + const that = this; + + console.log(`Starting video call for video: ${id} with ${shareWebcam}`); + + if (shareWebcam) { + VideoService.joiningVideo(); + this.setState({sharedWebcam: true}); + this.myId = id; + this.initWebRTC(id, true); + } else { + // initWebRTC with shareWebcam false will be called after react mounts the element + this.createVideoTag(id); + } + } + + initWebRTC(id, shareWebcam) { + let that = this; + const { intl } = this.props; + + const onIceCandidate = function (candidate) { + const message = { + type: 'video', + role: shareWebcam ? 'share' : 'viewer', + id: 'onIceCandidate', + candidate, + cameraId: id, + }; + that.sendMessage(message); + }; + + let videoConstraints = {}; + if (!!navigator.userAgent.match(/Version\/[\d\.]+.*Safari/)) { // Custom constraints for Safari + videoConstraints = { + width: {min:320, max:640}, + height: {min:240, max:480} + } + } else { + videoConstraints = { + width: {min: 320, ideal: 320}, + height: {min: 240, ideal:240}, + frameRate: {min: 5, ideal: 10} + }; + } + + let options = { + mediaConstraints: { + audio: false, + video: videoConstraints + }, + onicecandidate: onIceCandidate, + }; + + let peerObj; + if (shareWebcam) { + options.localVideo = this.refs.videoInput; + peerObj = kurentoUtils.WebRtcPeer.WebRtcPeerSendonly; + } else { + peerObj = kurentoUtils.WebRtcPeer.WebRtcPeerRecvonly; + options.remoteVideo = document.getElementById(`video-elem-${id}`); + } + + let webRtcPeer = new peerObj(options, function (error) { + if (error) { + log('error', ' WebRTC peerObj create error'); + log('error', error); + that.notifyError(intl.formatMessage(intlMessages.permissionError)); + /* This notification error is displayed considering kurento-utils + * returned the error 'The request is not allowed by the user agent + * or the platform in the current context.', but there are other + * errors that could be returned. */ + + that.destroyWebRTCPeer(id); + that.destroyVideoTag(id); + VideoService.resetState(); + return log('error', error); + } + + this.didSDPAnswered = false; + this.iceQueue = []; + + that.webRtcPeers[id] = webRtcPeer; + if (shareWebcam) { + that.sharedWebcam = webRtcPeer; + } + + this.generateOffer((error, offerSdp) => { + if (error) { + log('error', ' WebRtc generate offer error'); + + that.destroyWebRTCPeer(id); + that.destroyVideoTag(id); + + return log('error', error); + } + + console.log(`Invoking SDP offer callback function ${location.host}`); + const message = { + type: 'video', + role: shareWebcam ? 'share' : 'viewer', + id: 'start', + sdpOffer: offerSdp, + cameraId: id, + }; + that.sendMessage(message); + }); + while (this.iceQueue.length) { + let candidate = this.iceQueue.shift(); + this.addIceCandidate(candidate, (err) => { + if (err) { + this.notifyError(intl.formatMessage(intlMessages.iceCandidateError)); + return console.error(`Error adding candidate: ${err}`); + } + }); + } + this.didSDPAnswered = true; + }); + } + + disconnected(id) { + if (this.sharedWebcam) { + log('debug', ' [camera] Webcam disconnected, will try re-share webcam later.'); + this.reconnectWebcam = true; + } else { + this.reconnectList.push(id); + + log('debug', ` [camera] ${id} disconnected, will try re-subscribe later.`); + } + } + + stop(id) { + const { userId } = this.props; + this.sendMessage({ + type: 'video', + role: id == userId ? 'share' : 'viewer', + id: 'stop', + cameraId: id, + }); + + this.destroyWebRTCPeer(id); + this.destroyVideoTag(id); + } + + createVideoTag(id) { + let videos = this.state.videos; + + videos[id] = true; + this.setState({videos: videos}) + } + + destroyVideoTag(id) { + let videos = this.state.videos; + + delete videos[id]; + this.setState({videos: videos}); + + if (id == this.myId) { + this.setState({sharedWebcam: false}); + } + } + + destroyWebRTCPeer(id) { + const webRtcPeer = this.webRtcPeers[id]; + + if (webRtcPeer) { + log('info', 'Stopping WebRTC peer'); + + if (id == this.myId && this.sharedWebcam) { + this.sharedWebcam.dispose(); + this.sharedWebcam = null; + } + + webRtcPeer.dispose(); + delete this.webRtcPeers[id]; + } else { + log('info', 'No WebRTC peer to stop (not an error)'); + } + } + + shareWebcam() { + const { users, userId } = this.props; + + if (this.connectedToMediaServer()) { + this.start(userId, true); + } else { + log("error", "Not connected to media server"); + } + } + + unshareWebcam() { + VideoService.exitingVideo(); + log('info', 'Unsharing webcam'); + const { userId } = this.props; + VideoService.sendUserUnshareWebcam(userId); + VideoService.exitedVideo(); + } + + startResponse(message) { + const id = message.cameraId; + const webRtcPeer = this.webRtcPeers[id]; + + if (message.sdpAnswer == null) { + return log('debug', 'Null sdp answer. Camera unplugged?'); + } + + if (webRtcPeer == null) { + return log('debug', 'Null webrtc peer ????'); + } + + log('info', 'SDP answer received from server. Processing ...'); + + webRtcPeer.processAnswer(message.sdpAnswer, (error) => { + if (error) { + return log('error', error); + } + }); + + if (message.cameraId == this.props.userId) { + log('info', "camera id sendusershare ", id); + VideoService.sendUserShareWebcam(id); + } + } + + sendMessage(message) { + const ws = this.ws; + + if (this.connectedToMediaServer()) { + const jsonMessage = JSON.stringify(message); + console.log(`Sending message: ${jsonMessage}`); + ws.send(jsonMessage, (error) => { + if (error) { + console.error(`client: Websocket error "${error}" on message "${jsonMessage.id}"`); + } + }); + } else { + // No need to queue video stop messages + if (message.id != 'stop') { + this.wsQueue.push(message); + } + } + } + + connectedToMediaServer() { + return this.ws.readyState === WebSocket.OPEN; + } + + connectionStatus() { + return this.ws.readyState; + } + + handlePlayStop(message) { + log('info', 'Handle play stop <--------------------'); + log('error', message); + + const { users } = this.props; + + if (message.cameraId == this.props) { + this.unshareWebcam(); + } else { + this.stop(message.cameraId); + } + } + + handlePlayStart(message) { + log('info', 'Handle play start <==================='); + + if (message.cameraId == this.props.userId) { + VideoService.joinedVideo(); + } + } + + handleError(message) { + const { intl } = this.props; + this.notifyError(intl.formatMessage(intlMessages.sharingError)); + + console.error(' Handle error --------------------->'); + log('debug', message.message); + } + + notifyError(message) { + notify(message, 'error', 'video'); + } + + installChromeExtension() { + const { intl } = this.props; + const CHROME_EXTENSION_LINK = Meteor.settings.public.kurento.chromeExtensionLink; + + this.notifyError(<div>{intl.formatMessage(intlMessages.chromeExtensionError)} <a href={CHROME_EXTENSION_LINK} target="_blank">{intl.formatMessage(intlMessages.chromeExtensionErrorLink)}</a></div>); + } + + componentDidUpdate() { + this.adjustVideos(); + } + + render() { + let cssClass; + if (this.state.sharedWebcam) { + cssClass = styles.sharedWebcamVideoLocal; + } + else { + cssClass = styles.sharedWebcamVideo; + } + + return ( + + <div className={styles.videoDock}> + <div id="webcamArea"> + {Object.keys(this.state.videos).map((id) => { + return (<VideoElement videoId={id} key={id} onMount={this.initWebRTC.bind(this)} />); + })} + <video autoPlay={true} playsInline={true} muted={true} id="shareWebcamVideo" className={cssClass} ref="videoInput" /> + </div> + </div> + ); + } + + shouldComponentUpdate(nextProps, nextState) { + const { users, userId } = this.props; + const nextUsers = nextProps.users; + + if (users) { + let suc = false; + + for (let i = 0; i < users.length; i++) { + if (users && users[i] && + nextUsers && nextUsers[i]) { + if (users[i].has_stream !== nextUsers[i].has_stream) { + console.log(`User ${nextUsers[i].has_stream ? '' : 'un'}shared webcam ${users[i].userId}`); + + if (nextUsers[i].has_stream) { + if (userId !== users[i].userId) { + this.start(users[i].userId, false); + } + } else { + this.stop(users[i].userId); + } + + if (!nextUsers[i].has_stream) { + this.destroyVideoTag(users[i].userId); + } + + suc = suc || true; + } + } + } + + return true; + } + + return false; + } + +} + +export default injectIntl(VideoDock); diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/container.jsx b/bigbluebutton-html5/imports/ui/components/video-dock/container.jsx index ad18e501e980831cb554c5070b75b55c51a12f16..81ec2f44cb649c0ff451195efa081564e073b5cd 100644 --- a/bigbluebutton-html5/imports/ui/components/video-dock/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/video-dock/container.jsx @@ -1,15 +1,15 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; - +import { withTracker } from 'meteor/react-meteor-data'; import VideoDock from './component'; +import VideoService from './service'; -const VideoDockContainer = props => ( - <VideoDock> - {props.children} +const VideoDockContainer = ({ children, ...props }) => ( + <VideoDock {...props}> + {children} </VideoDock> ); -export default createContainer(() => { - const data = {}; - return data; -}, VideoDockContainer); +export default withTracker(() => ({ + users: VideoService.getAllUsers(), + userId: VideoService.userId(), +}))(VideoDockContainer); diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/service.js b/bigbluebutton-html5/imports/ui/components/video-dock/service.js new file mode 100644 index 0000000000000000000000000000000000000000..dbae7b46c163411d6104f29b0d3730f9b2186196 --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/video-dock/service.js @@ -0,0 +1,109 @@ +import { Tracker } from 'meteor/tracker'; +import { makeCall } from '/imports/ui/services/api'; +import Users from '/imports/api/users'; +import Auth from '/imports/ui/services/auth'; + +class VideoService { + constructor() { + this.defineProperties({ + isConnected: false, + isWaitingResponse: false, + }); + } + + defineProperties(obj) { + Object.keys(obj).forEach((key) => { + const privateKey = `_${key}`; + this[privateKey] = { + value: obj[key], + tracker: new Tracker.Dependency(), + }; + + Object.defineProperty(this, key, { + set: (value) => { + this[privateKey].value = value; + this[privateKey].tracker.changed(); + }, + get: () => { + this[privateKey].tracker.depend(); + return this[privateKey].value; + }, + }); + }); + } + + joinVideo() { + var joinVideoEvent = new Event('joinVideo'); + document.dispatchEvent(joinVideoEvent); + } + + joiningVideo() { + this.isWaitingResponse = true; + } + + joinedVideo() { + this.isWaitingResponse = false; + this.isConnected = true; + } + + exitVideo() { + var exitVideoEvent = new Event('exitVideo'); + document.dispatchEvent(exitVideoEvent); + } + + exitingVideo() { + this.isWaitingResponse = true; + } + + exitedVideo() { + this.isWaitingResponse = false; + this.isConnected = false; + } + + resetState() { + this.isWaitingResponse = false; + this.isConnected = false; + } + + sendUserShareWebcam(stream) { + makeCall('userShareWebcam', stream); + } + + sendUserUnshareWebcam(stream) { + makeCall('userUnshareWebcam', stream); + } + + getAllUsers() { + return Users.find().fetch(); + } + + userId() { + return Auth.userID; + } + + isConnected() { + return this.isConnected; + } + + isWaitingResponse() { + return this.isWaitingResponse; + } +} + +const videoService = new VideoService(); + +export default { + exitVideo: () => videoService.exitVideo(), + exitingVideo: () => videoService.exitingVideo(), + exitedVideo: () => videoService.exitedVideo(), + getAllUsers: () => videoService.getAllUsers(), + isConnected: () => videoService.isConnected, + isWaitingResponse: () => videoService.isWaitingResponse, + joinVideo: () => videoService.joinVideo(), + joiningVideo: () => videoService.joiningVideo(), + joinedVideo: () => videoService.joinedVideo(), + resetState: () => videoService.resetState(), + sendUserShareWebcam: (stream) => videoService.sendUserShareWebcam(stream), + sendUserUnshareWebcam: (stream) => videoService.sendUserUnshareWebcam(stream), + userId: () => videoService.userId(), +}; diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/styles.scss b/bigbluebutton-html5/imports/ui/components/video-dock/styles.scss index a37e967d4ce74c1e91f784b5d0fac052d3fd6009..2dce62f218a11fd0b3ffbc6fc7e9c561bb4a6c37 100644 --- a/bigbluebutton-html5/imports/ui/components/video-dock/styles.scss +++ b/bigbluebutton-html5/imports/ui/components/video-dock/styles.scss @@ -7,9 +7,16 @@ bottom: 0; left: 0; - background-image: url(https://avatars.slack-edge.com/2016-01-04/17715243383_99a961f4cb2bf2cde5c4_512.jpg); background-size: cover; background-position: center; box-shadow: 0 0 5px rgba(0, 0, 0, .5); border-radius: .2rem; } + +.sharedWebcamVideo { + display: none; +} + +.sharedWebcamVideoLocal { + display: normal; +} diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/component.jsx b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/component.jsx new file mode 100644 index 0000000000000000000000000000000000000000..cce42066cefcab79bebd56ac2b30b609812489a5 --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/component.jsx @@ -0,0 +1,49 @@ +import React from 'react'; +import PropTypes from 'prop-types'; +import Button from '/imports/ui/components/button/component'; +import { defineMessages, injectIntl, intlShape } from 'react-intl'; + +const intlMessages = defineMessages({ + joinVideo: { + id: 'app.video.joinVideo', + description: 'Join video button label', + }, + leaveVideo: { + id: 'app.video.leaveVideo', + description: 'Leave video button label', + }, +}); + +const JoinVideoOptions = ({intl, isWaitingResponse, isConnected, isSharingVideo, handleJoinVideo, handleCloseVideo}) => { + if (isSharingVideo) { + return ( + <Button + onClick={handleCloseVideo} + label={intl.formatMessage(intlMessages.leaveVideo)} + hideLabel + aria-label={intl.formatMessage(intlMessages.leaveVideo)} + color={'danger'} + icon={'video'} + size={'lg'} + circle + disabled={isWaitingResponse} + /> + ); + } + + return ( + <Button + onClick={handleJoinVideo} + label={intl.formatMessage(intlMessages.joinVideo)} + hideLabel + aria-label={intl.formatMessage(intlMessages.joinVideo)} + color={'primary'} + icon={'video_off'} + size={'lg'} + circle + disabled={isWaitingResponse || (!isSharingVideo && isConnected)} + /> + ); +} + +export default injectIntl(JoinVideoOptions); diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/container.jsx b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/container.jsx new file mode 100644 index 0000000000000000000000000000000000000000..793dd978cea382a746b66cabd66c78fc391b4ee8 --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/container.jsx @@ -0,0 +1,20 @@ +import React from 'react'; +import { withTracker } from 'meteor/react-meteor-data'; +import JoinVideoOptions from './component'; +import VideoMenuService from './service'; +import VideoService from '../service'; + +const JoinVideoOptionsContainer = props => (<JoinVideoOptions {...props} />); + +export default withTracker((params) => { + const isSharingVideo = VideoMenuService.isSharingVideo(); + const isWaitingResponse = VideoService.isWaitingResponse(); + const isConnected = VideoService.isConnected(); + return { + isSharingVideo, + isWaitingResponse, + isConnected, + handleJoinVideo: params.handleJoinVideo, + handleCloseVideo: params.handleCloseVideo, + }; +})(JoinVideoOptionsContainer); diff --git a/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/service.js b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/service.js new file mode 100644 index 0000000000000000000000000000000000000000..92a58cd21afc50dac0196a3d19d325fea668e125 --- /dev/null +++ b/bigbluebutton-html5/imports/ui/components/video-dock/video-menu/service.js @@ -0,0 +1,12 @@ +import Users from '/imports/api/users'; +import Auth from '/imports/ui/services/auth/index'; + +const isSharingVideo = () => { + const userId = Auth.userID; + const user = Users.findOne({ userId: userId }); + return user.has_stream ? true : false; +}; + +export default { + isSharingVideo +}; diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-factory/reactive-annotation/container.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-factory/reactive-annotation/container.jsx index 9124ab46ec73e3126a0da66fa889927339c69c9a..51c5b5be59502c085628ef57326255b93ed655da 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-factory/reactive-annotation/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-factory/reactive-annotation/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import ReactiveAnnotationService from './service'; import ReactiveAnnotation from './component'; @@ -19,14 +19,14 @@ const ReactiveAnnotationContainer = (props) => { return null; }; -export default createContainer((params) => { +export default withTracker((params) => { const { shapeId } = params; const annotation = ReactiveAnnotationService.getAnnotationById(shapeId); return { annotation, }; -}, ReactiveAnnotationContainer); +})(ReactiveAnnotationContainer); ReactiveAnnotationContainer.propTypes = { annotation: PropTypes.objectOf(PropTypes.oneOfType([ diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-group/container.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-group/container.jsx index 53f3fecc97d31ccd05f1e58d19f7225bfd7d367c..1c697b061f31d0b0635ef602ea9c1fde3c6d2ae6 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-group/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/annotation-group/container.jsx @@ -1,6 +1,6 @@ import React from 'react'; import PropTypes from 'prop-types'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import AnnotationGroupService from './service'; import AnnotationGroup from './component'; @@ -12,14 +12,14 @@ const AnnotationGroupContainer = props => ( /> ); -export default createContainer((params) => { +export default withTracker((params) => { const { whiteboardId } = params; const annotationsInfo = AnnotationGroupService.getCurrentAnnotationsInfo(whiteboardId); return { annotationsInfo, }; -}, AnnotationGroupContainer); +})(AnnotationGroupContainer); AnnotationGroupContainer.propTypes = { // initial width and height of the slide; required to calculate the annotations' coordinates diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/annotations/text/container.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/annotations/text/container.jsx index b58769135eca5a864281be91a64b7fb4885aa9de..e910f81acb45a8d82949b3be8972d9c71f8d0864 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/annotations/text/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/annotations/text/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import TextShapeService from './service'; import TextDrawComponent from './component'; @@ -7,7 +7,7 @@ const TextDrawContainer = props => ( <TextDrawComponent {...props} /> ); -export default createContainer((params) => { +export default withTracker((params) => { const isPresenter = TextShapeService.isPresenter(); const isMultiUser = TextShapeService.getMultiUserStatus(); const activeTextShapeId = TextShapeService.activeTextShapeId(); @@ -21,4 +21,4 @@ export default createContainer((params) => { setTextShapeValue: TextShapeService.setTextShapeValue, resetTextShapeActiveId: TextShapeService.resetTextShapeActiveId, }; -}, TextDrawContainer); +})(TextDrawContainer); diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/container.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/container.jsx index 6db90e596807ee7bf6529ab8e974de4a2ffe56b8..d9580c9a8143fb4578c51d748c540478fdbbc041 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/container.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import PropTypes from 'prop-types'; import WhiteboardOverlayService from './service'; import WhiteboardOverlay from './component'; @@ -13,13 +13,13 @@ const WhiteboardOverlayContainer = (props) => { return null; }; -export default createContainer(() => ({ +export default withTracker(() => ({ sendAnnotation: WhiteboardOverlayService.sendAnnotation, setTextShapeActiveId: WhiteboardOverlayService.setTextShapeActiveId, resetTextShapeSession: WhiteboardOverlayService.resetTextShapeSession, drawSettings: WhiteboardOverlayService.getWhiteboardToolbarValues(), userId: WhiteboardOverlayService.getCurrentUserId(), -}), WhiteboardOverlayContainer); +}))(WhiteboardOverlayContainer); WhiteboardOverlayContainer.propTypes = { diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pan-zoom-draw-listener/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pan-zoom-draw-listener/component.jsx index 2818cd19e58a47bb9d49404119588174c3ce731a..13ad6c3c6a33f754106d9b2d1887c0276da0acf1 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pan-zoom-draw-listener/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pan-zoom-draw-listener/component.jsx @@ -1,6 +1,6 @@ import React from 'react'; // import PropTypes from 'prop-types'; -// import styles from '../styles.scss'; +// import { styles } from '../styles.scss'; export default class PanZoomDrawListener extends React.Component { constructor(props) { diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pencil-draw-listener/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pencil-draw-listener/component.jsx index 50937ae453251923082c483eba3a11c571590894..0c55f14f8c67dafbcd1481ec8ab3b906c1f505cb 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pencil-draw-listener/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/pencil-draw-listener/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from '../styles.scss'; +import { styles } from '../styles.scss'; const ANNOTATION_CONFIG = Meteor.settings.public.whiteboard.annotations; const MESSAGE_FREQUENCY = ANNOTATION_CONFIG.message_frequency; diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/shape-draw-listener/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/shape-draw-listener/component.jsx index 6907d264b9a7c45ea3a4e4d152961b6fd342befa..cc60e45bb5fe04d3be22ff30f62fb871348eb01b 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/shape-draw-listener/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/shape-draw-listener/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from '../styles.scss'; +import { styles } from '../styles.scss'; const ANNOTATION_CONFIG = Meteor.settings.public.whiteboard.annotations; const MESSAGE_FREQUENCY = ANNOTATION_CONFIG.message_frequency; diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/text-draw-listener/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/text-draw-listener/component.jsx index 1e12e94cde29485aea82c7ae80967b4d81ce4234..8737e2464f17726c9a50b17ac6079461091245b1 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/text-draw-listener/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-overlay/text-draw-listener/component.jsx @@ -1,6 +1,6 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; -import styles from '../styles.scss'; +import { styles } from '../styles.scss'; const ANNOTATION_CONFIG = Meteor.settings.public.whiteboard.annotations; const DRAW_START = ANNOTATION_CONFIG.status.start; diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/component.jsx index d9fb758a6831c8503a912a2be7824d930ef6b673..bbe79fb38470efde1716394c0aece1d5b3a9a428 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/component.jsx @@ -2,8 +2,9 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; import { HEXToINTColor, INTToHEXColor } from '/imports/utils/hexInt'; +import { defineMessages, injectIntl, intlShape } from 'react-intl'; import injectWbResizeEvent from '/imports/ui/components/presentation/resize-wrapper/component'; -import styles from './styles.scss'; +import { styles } from './styles.scss'; import ToolbarMenuItem from './toolbar-menu-item/component'; import ToolbarSubmenu from './toolbar-submenu/component'; @@ -14,8 +15,42 @@ const THICKNESS_RADIUSES = TOOLBAR_CONFIG.thickness; const FONT_SIZES = TOOLBAR_CONFIG.font_sizes; const ANNOTATION_TOOLS = TOOLBAR_CONFIG.tools; -class WhiteboardToolbar extends Component { +const intlMessages = defineMessages({ + toolbarTools: { + id: 'app.whiteboard.toolbar.tools', + description: 'Whiteboard toolbar tools menu', + }, + toolbarLineThickness: { + id: 'app.whiteboard.toolbar.thickness', + description: 'Whiteboard toolbar thickness menu', + }, + toolbarLineColor: { + id: 'app.whiteboard.toolbar.color', + description: 'Whiteboard toolbar colors menu', + }, + toolbarUndoAnnotation: { + id: 'app.whiteboard.toolbar.undo', + description: 'Whiteboard toolbar tools menu', + }, + toolbarClearAnnotations: { + id: 'app.whiteboard.toolbar.clear', + description: 'Whiteboard toolbar clear menu', + }, + toolbarMultiUserOn: { + id: 'app.whiteboard.toolbar.multiUserOn', + description: 'Whiteboard toolbar turn multi-user on menu', + }, + toolbarMultiUserOff: { + id: 'app.whiteboard.toolbar.multiUserOff', + description: 'Whiteboard toolbar turn multi-user off menu', + }, + toolbarFontSize: { + id: 'app.whiteboard.toolbar.fontSize', + description: 'Whiteboard toolbar font size menu', + }, +}); +class WhiteboardToolbar extends Component { constructor() { super(); @@ -25,8 +60,8 @@ class WhiteboardToolbar extends Component { // variables to keep current selected draw settings annotationSelected: { - icon: 'hand', - value: 'hand', + icon: 'pen_tool', + value: 'pencil', }, thicknessSelected: { value: 4 }, colorSelected: { value: '#000000' }, @@ -256,9 +291,11 @@ class WhiteboardToolbar extends Component { } renderToolItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Tools'} + label={intl.formatMessage(intlMessages.toolbarTools)} icon={this.state.annotationSelected.icon} onItemClick={this.displaySubMenu} objectToReturn={'annotationList'} @@ -282,9 +319,11 @@ class WhiteboardToolbar extends Component { } renderFontItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Font Size List'} + label={intl.formatMessage(intlMessages.toolbarFontSize)} customIcon={this.renderFontItemIcon()} onItemClick={this.displaySubMenu} objectToReturn={'fontSizeList'} @@ -324,9 +363,12 @@ class WhiteboardToolbar extends Component { } renderThicknessItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Thickness List'} + disabled={this.state.annotationSelected.value === 'hand'} + label={intl.formatMessage(intlMessages.toolbarLineThickness)} onItemClick={this.displaySubMenu} objectToReturn={'thicknessList'} onBlur={this.closeSubMenu} @@ -387,9 +429,12 @@ class WhiteboardToolbar extends Component { } renderColorItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Color List'} + disabled={this.state.annotationSelected.value === 'hand'} + label={intl.formatMessage(intlMessages.toolbarLineColor)} onItemClick={this.displaySubMenu} objectToReturn={'colorList'} onBlur={this.closeSubMenu} @@ -433,9 +478,11 @@ class WhiteboardToolbar extends Component { } renderUndoItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Undo Annotation'} + label={intl.formatMessage(intlMessages.toolbarUndoAnnotation)} icon={'undo'} onItemClick={this.handleUndo} className={cx(styles.toolbarButton, styles.notActive)} @@ -444,9 +491,11 @@ class WhiteboardToolbar extends Component { } renderClearAllItem() { + const { intl } = this.props; + return ( <ToolbarMenuItem - label={'Clear All Annotations'} + label={intl.formatMessage(intlMessages.toolbarClearAnnotations)} icon={'circle_close'} onItemClick={this.handleClearAll} className={cx(styles.toolbarButton, styles.notActive)} @@ -455,11 +504,11 @@ class WhiteboardToolbar extends Component { } renderMultiUserItem() { - const { multiUser } = this.props; + const { intl, multiUser } = this.props; return ( <ToolbarMenuItem - label={multiUser ? 'Turn multi-user mode off' : 'Tuen multi-user mode on'} + label={multiUser ? intl.formatMessage(intlMessages.toolbarMultiUserOff) : intl.formatMessage(intlMessages.toolbarMultiUserOn)} icon={multiUser ? 'multi_whiteboard' : 'whiteboard'} onItemClick={this.handleSwitchWhiteboardMode} className={cx(styles.toolbarButton, styles.notActive)} @@ -540,6 +589,9 @@ WhiteboardToolbar.propTypes = { // defines the physical height of the whiteboard height: PropTypes.number.isRequired, + + intl: intlShape.isRequired, + }; -export default injectWbResizeEvent(WhiteboardToolbar); +export default injectWbResizeEvent(injectIntl(WhiteboardToolbar)); diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/container.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/container.jsx index 7c48c619b3a9fd8543a9c593e258081dee0e7879..ed45e4208db7d1983bfab6898642b9ccf748c561 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/container.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/container.jsx @@ -1,13 +1,13 @@ import React from 'react'; -import { createContainer } from 'meteor/react-meteor-data'; +import { withTracker } from 'meteor/react-meteor-data'; import WhiteboardToolbarService from './service'; import WhiteboardToolbar from './component'; const WhiteboardToolbarContainer = props => ( <WhiteboardToolbar {...props} /> - ); +); -export default createContainer(() => ({ +export default withTracker(() => ({ actions: { undoAnnotation: WhiteboardToolbarService.undoAnnotation, clearWhiteboard: WhiteboardToolbarService.clearWhiteboard, @@ -23,4 +23,4 @@ export default createContainer(() => ({ textShapeActiveId: WhiteboardToolbarService.getTextShapeActiveId(), multiUser: WhiteboardToolbarService.getMultiUserStatus(), isPresenter: WhiteboardToolbarService.isPresenter(), -}), WhiteboardToolbarContainer); +}))(WhiteboardToolbarContainer); diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-menu-item/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-menu-item/component.jsx index 03888407293c5a2fa3a27c50bf8fd8668d50a781..0fb421517f3701be8d7a96a8a92eedc969c05dc5 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-menu-item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-menu-item/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import _ from 'lodash'; -import styles from '../styles'; +import { styles } from '../styles'; export default class ToolbarMenuItem extends Component { constructor() { @@ -68,6 +68,7 @@ export default class ToolbarMenuItem extends Component { onBlur={this.props.onBlur} className={this.props.className} setRef={this.setRef} + disabled={this.props.disabled} /> {this.props.children} </div> diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu-item/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu-item/component.jsx index f66e1d58e2d301664cd94eccc813aea8112a373a..6a5a4aba2a4f21b73b2dfa8510449a389db0bc61 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu-item/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu-item/component.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import Button from '/imports/ui/components/button/component'; import _ from 'lodash'; -import styles from '../styles'; +import { styles } from '../styles'; export default class ToolbarSubmenuItem extends Component { constructor() { @@ -50,6 +50,13 @@ export default class ToolbarSubmenuItem extends Component { } render() { + const { + className, + customIcon, + icon, + label, + } = this.props; + return ( <div className={styles.buttonWrapper}> <Button @@ -57,11 +64,12 @@ export default class ToolbarSubmenuItem extends Component { role="button" color="default" size="md" - label={this.props.label} - icon={this.props.icon} - customIcon={this.props.customIcon} + label={label} + aria-label={label} + icon={icon} + customIcon={customIcon} onMouseUp={this.handleOnMouseUp} - className={this.props.className} + className={className} setRef={this.setRef} /> </div> diff --git a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu/component.jsx b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu/component.jsx index 75351247aefdd9afc3c86a474cb3494e75c3ffec..dfcf2d41fed3e617b9ac1a0a62c37bb1b0f25ede 100644 --- a/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu/component.jsx +++ b/bigbluebutton-html5/imports/ui/components/whiteboard/whiteboard-toolbar/toolbar-submenu/component.jsx @@ -1,10 +1,91 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import cx from 'classnames'; -import styles from '../styles'; +import { defineMessages, injectIntl, intlShape } from 'react-intl'; +import _ from 'lodash'; +import { styles } from '../styles'; import ToolbarSubmenuItem from '../toolbar-submenu-item/component'; -export default class ToolbarSubmenu extends Component { +const intlMessages = defineMessages({ + toolHand: { + id: 'app.whiteboard.toolbar.tools.hand', + description: 'Tool submenu hand item', + }, + toolPencil: { + id: 'app.whiteboard.toolbar.tools.pencil', + description: 'Tool submenu pencil annotation', + }, + toolRectangle: { + id: 'app.whiteboard.toolbar.tools.rectangle', + description: 'Tool submenu rectangle annotation', + }, + toolTriangle: { + id: 'app.whiteboard.toolbar.tools.triangle', + description: 'Tool submenu triangle annotation', + }, + toolEllipse: { + id: 'app.whiteboard.toolbar.tools.ellipse', + description: 'Tool submenu ellipse annotation', + }, + toolLine: { + id: 'app.whiteboard.toolbar.tools.line', + description: 'Tool submenu line annotation', + }, + toolText: { + id: 'app.whiteboard.toolbar.tools.text', + description: 'Tool submenu text annotation', + }, + colorBlack: { + id: 'app.whiteboard.toolbar.color.black', + description: 'Color submenu black color', + }, + colorWhite: { + id: 'app.whiteboard.toolbar.color.white', + description: 'Color submenu white color', + }, + colorRed: { + id: 'app.whiteboard.toolbar.color.red', + description: 'Color submenu red color', + }, + colorOrange: { + id: 'app.whiteboard.toolbar.color.orange', + description: 'Color submenu orange color', + }, + colorEletricLime: { + id: 'app.whiteboard.toolbar.color.eletricLime', + description: 'Color submenu eletric lime color', + }, + colorLime: { + id: 'app.whiteboard.toolbar.color.lime', + description: 'Color submenu lime color', + }, + colorCyan: { + id: 'app.whiteboard.toolbar.color.cyan', + description: 'Color submenu cyan color', + }, + colorDodgerBlue: { + id: 'app.whiteboard.toolbar.color.dodgerBlue', + description: 'Color submenu dodger blue color', + }, + colorBlue: { + id: 'app.whiteboard.toolbar.color.blue', + description: 'Color submenu blue color', + }, + colorViolet: { + id: 'app.whiteboard.toolbar.color.violet', + description: 'Color submenu violet color', + }, + colorMagenta: { + id: 'app.whiteboard.toolbar.color.magenta', + description: 'Color submenu magenta color', + }, + colorSilver: { + id: 'app.whiteboard.toolbar.color.silver', + description: 'Color submenu silver color', + }, +}); + +class ToolbarSubmenu extends Component { static getCustomIcon(type, obj) { if (type === 'color') { return ( @@ -68,8 +149,33 @@ export default class ToolbarSubmenu extends Component { } } + formatSubmenuLabel(type, obj) { + const { intl } = this.props; + + if (type === 'annotations') { + const intlLabel = `tool${_.upperFirst(obj.value)}`; + return intl.formatMessage(intlMessages[intlLabel]); + } + + if (type === 'color') { + const intlLabel = `color${_.upperFirst(obj.label)}`; + return intl.formatMessage(intlMessages[intlLabel]); + } + + if (type === 'thickness' || type === 'font-size') { + return obj.value.toString(); + } + + return ''; + } + render() { - const { type, objectsToRender, objectSelected, label, customIcon } = this.props; + const { + type, + objectsToRender, + objectSelected, + customIcon, + } = this.props; return ( <div @@ -80,7 +186,7 @@ export default class ToolbarSubmenu extends Component { {objectsToRender ? objectsToRender.map(obj => ( <ToolbarSubmenuItem - label={obj.value} + label={this.formatSubmenuLabel(type, obj)} icon={!customIcon ? obj.icon : null} customIcon={customIcon ? ToolbarSubmenu.getCustomIcon(type, obj) : null} onItemClick={this.onItemClick} @@ -131,4 +237,9 @@ ToolbarSubmenu.propTypes = { ]).isRequired, label: PropTypes.string.isRequired, customIcon: PropTypes.bool.isRequired, + + intl: intlShape.isRequired, + }; + +export default injectIntl(ToolbarSubmenu); diff --git a/bigbluebutton-html5/imports/ui/services/audio-manager/index.js b/bigbluebutton-html5/imports/ui/services/audio-manager/index.js index 6bab22deee57027321f94b3e51a063af57b471a7..06516e9580ef5c4d444646e4fee05b709800eae9 100644 --- a/bigbluebutton-html5/imports/ui/services/audio-manager/index.js +++ b/bigbluebutton-html5/imports/ui/services/audio-manager/index.js @@ -32,15 +32,7 @@ class AudioManager { isWaitingPermissions: false, error: null, outputDeviceId: null, - }); - - const query = VoiceUsers.find({ intId: Auth.userID }); - - query.observeChanges({ - changed: (id, fields) => { - if (fields.muted === this.isMuted) return; - this.isMuted = fields.muted; - }, + muteHandle: null, }); } @@ -135,6 +127,17 @@ class AudioManager { this.isConnecting = false; this.isConnected = true; + // listen to the VoiceUsers changes and update the flag + if(!this.muteHandle) { + const query = VoiceUsers.find({ intId: Auth.userID }); + this.muteHandle = query.observeChanges({ + changed: (id, fields) => { + if (fields.muted === this.isMuted) return; + this.isMuted = fields.muted; + }, + }); + } + if (!this.isEchoTest) { this.notify(this.messages.info.JOINED_AUDIO); } diff --git a/bigbluebutton-html5/imports/ui/services/auth/index.js b/bigbluebutton-html5/imports/ui/services/auth/index.js index 92fa54f5dd0b676874385ae4054f7bc6f1f8435c..782a6df3856210f165d208c779a913080fd5ac44 100644 --- a/bigbluebutton-html5/imports/ui/services/auth/index.js +++ b/bigbluebutton-html5/imports/ui/services/auth/index.js @@ -111,23 +111,7 @@ class Auth { } return new Promise((resolve) => { - const credentialsSnapshot = { - meetingId: this.meetingID, - requesterUserId: this.userID, - requesterToken: this.token, - }; - - // make sure users who did not connect are not added to the meeting - // do **not** use the custom call - it relies on expired data - Meteor.call('userLogout', credentialsSnapshot, (error) => { - if (error) { - log('error', error, { credentials: credentialsSnapshot }); - } else { - this.fetchLogoutUrl() - .then(this.clearCredentials) - .then(resolve); - } - }); + resolve(this._logoutURL); }); } @@ -179,10 +163,6 @@ class Auth { makeCall('validateAuthToken'); }); } - - fetchLogoutUrl() { - return Promise.resolve(this._logoutURL); - } } const AuthSingleton = new Auth(); diff --git a/bigbluebutton-html5/imports/ui/stylesheets/variables/breakpoints.scss b/bigbluebutton-html5/imports/ui/stylesheets/variables/breakpoints.scss index 66e389d353b73481207035c5713e67f02cfaefe3..d21b00dd97ca148aefc2b13ad5d9de91c3148f19 100644 --- a/bigbluebutton-html5/imports/ui/stylesheets/variables/breakpoints.scss +++ b/bigbluebutton-html5/imports/ui/stylesheets/variables/breakpoints.scss @@ -13,9 +13,10 @@ @return nth($range, 2); } - -$small-range: (0em, 40em); -/* 0, 640px */ +$xsmall-range: (0em, 25.937em); +/* 0px, 415px */ +$small-range: (26em, 40em); +/* 416px, 640px */ $medium-range: (40.063em, 64em); /* 641px, 1024px */ $large-range: (64.063em, 90em); @@ -30,6 +31,7 @@ $landscape: "#{$screen} and (orientation: landscape)"; $portrait: "#{$screen} and (orientation: portrait)"; $small-up: $screen; $small-only: "#{$screen} and (max-width: #{upper-bound($small-range)})"; +$xsmall-only: "#{$screen} and (min-width:#{lower-bound($xsmall-range)}) and (max-width:#{upper-bound($xsmall-range)})"; $medium-up: "#{$screen} and (min-width:#{lower-bound($medium-range)})"; $medium-only: "#{$screen} and (min-width:#{lower-bound($medium-range)}) and (max-width:#{upper-bound($medium-range)})"; $large-up: "#{$screen} and (min-width:#{lower-bound($large-range)})"; @@ -44,6 +46,7 @@ $breakpoints: ( 'landscape': $landscape, 'portrait': $portrait, 'small': $small-only, + 'xsmall': $xsmall-only, 'medium': $medium-only, 'large': $large-only, 'xlarge': $xlarge-only, diff --git a/bigbluebutton-html5/imports/utils/locales.js b/bigbluebutton-html5/imports/utils/locales.js deleted file mode 100644 index 6a66ee8be2ec5da0b7a29e4aba8e7cc24212bec0..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/imports/utils/locales.js +++ /dev/null @@ -1,1740 +0,0 @@ -const locales = [ - { - locale: 'af_NA', - name: 'Afrikaans (Namibia)', - }, - { - locale: 'af_ZA', - name: 'Afrikaans (South Africa)', - }, - { - locale: 'af', - name: 'Afrikaans', - }, - { - locale: 'ak_GH', - name: 'Akan (Ghana)', - }, - { - locale: 'ak', - name: 'Akan', - }, - { - locale: 'sq_AL', - name: 'Albanian (Albania)', - }, - { - locale: 'sq', - name: 'Albanian', - }, - { - locale: 'am_ET', - name: 'Amharic (Ethiopia)', - }, - { - locale: 'am', - name: 'Amharic', - }, - { - locale: 'ar_DZ', - name: 'Arabic (Algeria)', - }, - { - locale: 'ar_BH', - name: 'Arabic (Bahrain)', - }, - { - locale: 'ar_EG', - name: 'Arabic (Egypt)', - }, - { - locale: 'ar_IQ', - name: 'Arabic (Iraq)', - }, - { - locale: 'ar_JO', - name: 'Arabic (Jordan)', - }, - { - locale: 'ar_KW', - name: 'Arabic (Kuwait)', - }, - { - locale: 'ar_LB', - name: 'Arabic (Lebanon)', - }, - { - locale: 'ar_LY', - name: 'Arabic (Libya)', - }, - { - locale: 'ar_MA', - name: 'Arabic (Morocco)', - }, - { - locale: 'ar_OM', - name: 'Arabic (Oman)', - }, - { - locale: 'ar_QA', - name: 'Arabic (Qatar)', - }, - { - locale: 'ar_SA', - name: 'Arabic (Saudi Arabia)', - }, - { - locale: 'ar_SD', - name: 'Arabic (Sudan)', - }, - { - locale: 'ar_SY', - name: 'Arabic (Syria)', - }, - { - locale: 'ar_TN', - name: 'Arabic (Tunisia)', - }, - { - locale: 'ar_AE', - name: 'Arabic (United Arab Emirates)', - }, - { - locale: 'ar_YE', - name: 'Arabic (Yemen)', - }, - { - locale: 'ar', - name: 'Arabic', - }, - { - locale: 'hy_AM', - name: 'Armenian (Armenia)', - }, - { - locale: 'hy', - name: 'Armenian', - }, - { - locale: 'as_IN', - name: 'Assamese (India)', - }, - { - locale: 'as', - name: 'Assamese', - }, - { - locale: 'asa_TZ', - name: 'Asu (Tanzania)', - }, - { - locale: 'asa', - name: 'Asu', - }, - { - locale: 'az_Cyrl', - name: 'Azerbaijani (Cyrillic)', - }, - { - locale: 'az_Cyrl_AZ', - name: 'Azerbaijani (Cyrillic, Azerbaijan)', - }, - { - locale: 'az_Latn', - name: 'Azerbaijani (Latin)', - }, - { - locale: 'az_Latn_AZ', - name: 'Azerbaijani (Latin, Azerbaijan)', - }, - { - locale: 'az', - name: 'Azerbaijani', - }, - { - locale: 'bm_ML', - name: 'Bambara (Mali)', - }, - { - locale: 'bm', - name: 'Bambara', - }, - { - locale: 'eu_ES', - name: 'Basque (Spain)', - }, - { - locale: 'eu', - name: 'Basque', - }, - { - locale: 'be_BY', - name: 'Belarusian (Belarus)', - }, - { - locale: 'be', - name: 'Belarusian', - }, - { - locale: 'bem_ZM', - name: 'Bemba (Zambia)', - }, - { - locale: 'bem', - name: 'Bemba', - }, - { - locale: 'bez_TZ', - name: 'Bena (Tanzania)', - }, - { - locale: 'bez', - name: 'Bena', - }, - { - locale: 'bn_BD', - name: 'Bengali (Bangladesh)', - }, - { - locale: 'bn_IN', - name: 'Bengali (India)', - }, - { - locale: 'bn', - name: 'Bengali', - }, - { - locale: 'bs_BA', - name: 'Bosnian (Bosnia and Herzegovina)', - }, - { - locale: 'bs', - name: 'Bosnian', - }, - { - locale: 'bg_BG', - name: 'Bulgarian (Bulgaria)', - }, - { - locale: 'bg', - name: 'Bulgarian', - }, - { - locale: 'my_MM', - name: 'Burmese (Myanmar [Burma])', - }, - { - locale: 'my', - name: 'Burmese', - }, - { - locale: 'ca_ES', - name: 'Catalan (Spain)', - }, - { - locale: 'ca', - name: 'Catalan', - }, - { - locale: 'tzm_Latn', - name: 'Central Morocco Tamazight (Latin)', - }, - { - locale: 'tzm_Latn_MA', - name: 'Central Morocco Tamazight (Latin, Morocco)', - }, - { - locale: 'tzm', - name: 'Central Morocco Tamazight', - }, - { - locale: 'chr_US', - name: 'Cherokee (United States)', - }, - { - locale: 'chr', - name: 'Cherokee', - }, - { - locale: 'cgg_UG', - name: 'Chiga (Uganda)', - }, - { - locale: 'cgg', - name: 'Chiga', - }, - { - locale: 'zh_Hans', - name: 'Chinese (Simplified Han)', - }, - { - locale: 'zh_Hans_CN', - name: 'Chinese (Simplified Han, China)', - }, - { - locale: 'zh_Hans_HK', - name: 'Chinese (Simplified Han, Hong Kong SAR China)', - }, - { - locale: 'zh_Hans_MO', - name: 'Chinese (Simplified Han, Macau SAR China)', - }, - { - locale: 'zh_Hans_SG', - name: 'Chinese (Simplified Han, Singapore)', - }, - { - locale: 'zh_Hant', - name: 'Chinese (Traditional Han)', - }, - { - locale: 'zh_Hant_HK', - name: 'Chinese (Traditional Han, Hong Kong SAR China)', - }, - { - locale: 'zh_Hant_MO', - name: 'Chinese (Traditional Han, Macau SAR China)', - }, - { - locale: 'zh_Hant_TW', - name: 'Chinese (Traditional Han, Taiwan)', - }, - { - locale: 'zh', - name: 'Chinese', - }, - { - locale: 'kw_GB', - name: 'Cornish (United Kingdom)', - }, - { - locale: 'kw', - name: 'Cornish', - }, - { - locale: 'hr_HR', - name: 'Croatian (Croatia)', - }, - { - locale: 'hr', - name: 'Croatian', - }, - { - locale: 'cs_CZ', - name: 'Czech (Czech Republic)', - }, - { - locale: 'cs', - name: 'Czech', - }, - { - locale: 'da_DK', - name: 'Danish (Denmark)', - }, - { - locale: 'da', - name: 'Danish', - }, - { - locale: 'nl_BE', - name: 'Dutch (Belgium)', - }, - { - locale: 'nl_NL', - name: 'Dutch (Netherlands)', - }, - { - locale: 'nl', - name: 'Dutch', - }, - { - locale: 'ebu_KE', - name: 'Embu (Kenya)', - }, - { - locale: 'ebu', - name: 'Embu', - }, - { - locale: 'en_AS', - name: 'English (American Samoa)', - }, - { - locale: 'en_AU', - name: 'English (Australia)', - }, - { - locale: 'en_BE', - name: 'English (Belgium)', - }, - { - locale: 'en_BZ', - name: 'English (Belize)', - }, - { - locale: 'en_BW', - name: 'English (Botswana)', - }, - { - locale: 'en_CA', - name: 'English (Canada)', - }, - { - locale: 'en_GU', - name: 'English (Guam)', - }, - { - locale: 'en_HK', - name: 'English (Hong Kong SAR China)', - }, - { - locale: 'en_IN', - name: 'English (India)', - }, - { - locale: 'en_IE', - name: 'English (Ireland)', - }, - { - locale: 'en_JM', - name: 'English (Jamaica)', - }, - { - locale: 'en_MT', - name: 'English (Malta)', - }, - { - locale: 'en_MH', - name: 'English (Marshall Islands)', - }, - { - locale: 'en_MU', - name: 'English (Mauritius)', - }, - { - locale: 'en_NA', - name: 'English (Namibia)', - }, - { - locale: 'en_NZ', - name: 'English (New Zealand)', - }, - { - locale: 'en_MP', - name: 'English (Northern Mariana Islands)', - }, - { - locale: 'en_PK', - name: 'English (Pakistan)', - }, - { - locale: 'en_PH', - name: 'English (Philippines)', - }, - { - locale: 'en_SG', - name: 'English (Singapore)', - }, - { - locale: 'en_ZA', - name: 'English (South Africa)', - }, - { - locale: 'en_TT', - name: 'English (Trinidad and Tobago)', - }, - { - locale: 'en_UM', - name: 'English (U.S. Minor Outlying Islands)', - }, - { - locale: 'en_VI', - name: 'English (U.S. Virgin Islands)', - }, - { - locale: 'en_GB', - name: 'English (United Kingdom)', - }, - { - locale: 'en_US', - name: 'English (United States)', - }, - { - locale: 'en_ZW', - name: 'English (Zimbabwe)', - }, - { - locale: 'en', - name: 'English', - }, - { - locale: 'eo', - name: 'Esperanto', - }, - { - locale: 'et_EE', - name: 'Estonian (Estonia)', - }, - { - locale: 'et', - name: 'Estonian', - }, - { - locale: 'ee_GH', - name: 'Ewe (Ghana)', - }, - { - locale: 'ee_TG', - name: 'Ewe (Togo)', - }, - { - locale: 'ee', - name: 'Ewe', - }, - { - locale: 'fo_FO', - name: 'Faroese (Faroe Islands)', - }, - { - locale: 'fo', - name: 'Faroese', - }, - { - locale: 'fil_PH', - name: 'Filipino (Philippines)', - }, - { - locale: 'fil', - name: 'Filipino', - }, - { - locale: 'fi_FI', - name: 'Finnish (Finland)', - }, - { - locale: 'fi', - name: 'Finnish', - }, - { - locale: 'fr_BE', - name: 'French (Belgium)', - }, - { - locale: 'fr_BJ', - name: 'French (Benin)', - }, - { - locale: 'fr_BF', - name: 'French (Burkina Faso)', - }, - { - locale: 'fr_BI', - name: 'French (Burundi)', - }, - { - locale: 'fr_CM', - name: 'French (Cameroon)', - }, - { - locale: 'fr_CA', - name: 'French (Canada)', - }, - { - locale: 'fr_CF', - name: 'French (Central African Republic)', - }, - { - locale: 'fr_TD', - name: 'French (Chad)', - }, - { - locale: 'fr_KM', - name: 'French (Comoros)', - }, - { - locale: 'fr_CG', - name: 'French (Congo - Brazzaville)', - }, - { - locale: 'fr_CD', - name: 'French (Congo - Kinshasa)', - }, - { - locale: 'fr_CI', - name: 'French (Côte d’Ivoire)', - }, - { - locale: 'fr_DJ', - name: 'French (Djibouti)', - }, - { - locale: 'fr_GQ', - name: 'French (Equatorial Guinea)', - }, - { - locale: 'fr_FR', - name: 'French (France)', - }, - { - locale: 'fr_GA', - name: 'French (Gabon)', - }, - { - locale: 'fr_GP', - name: 'French (Guadeloupe)', - }, - { - locale: 'fr_GN', - name: 'French (Guinea)', - }, - { - locale: 'fr_LU', - name: 'French (Luxembourg)', - }, - { - locale: 'fr_MG', - name: 'French (Madagascar)', - }, - { - locale: 'fr_ML', - name: 'French (Mali)', - }, - { - locale: 'fr_MQ', - name: 'French (Martinique)', - }, - { - locale: 'fr_MC', - name: 'French (Monaco)', - }, - { - locale: 'fr_NE', - name: 'French (Niger)', - }, - { - locale: 'fr_RW', - name: 'French (Rwanda)', - }, - { - locale: 'fr_RE', - name: 'French (Réunion)', - }, - { - locale: 'fr_BL', - name: 'French (Saint Barthélemy)', - }, - { - locale: 'fr_MF', - name: 'French (Saint Martin)', - }, - { - locale: 'fr_SN', - name: 'French (Senegal)', - }, - { - locale: 'fr_CH', - name: 'French (Switzerland)', - }, - { - locale: 'fr_TG', - name: 'French (Togo)', - }, - { - locale: 'fr', - name: 'French', - }, - { - locale: 'ff_SN', - name: 'Fulah (Senegal)', - }, - { - locale: 'ff', - name: 'Fulah', - }, - { - locale: 'gl_ES', - name: 'Galician (Spain)', - }, - { - locale: 'gl', - name: 'Galician', - }, - { - locale: 'lg_UG', - name: 'Ganda (Uganda)', - }, - { - locale: 'lg', - name: 'Ganda', - }, - { - locale: 'ka_GE', - name: 'Georgian (Georgia)', - }, - { - locale: 'ka', - name: 'Georgian', - }, - { - locale: 'de_AT', - name: 'German (Austria)', - }, - { - locale: 'de_BE', - name: 'German (Belgium)', - }, - { - locale: 'de_DE', - name: 'German (Germany)', - }, - { - locale: 'de_LI', - name: 'German (Liechtenstein)', - }, - { - locale: 'de_LU', - name: 'German (Luxembourg)', - }, - { - locale: 'de_CH', - name: 'German (Switzerland)', - }, - { - locale: 'de', - name: 'German', - }, - { - locale: 'el_CY', - name: 'Greek (Cyprus)', - }, - { - locale: 'el_GR', - name: 'Greek (Greece)', - }, - { - locale: 'el', - name: 'Greek', - }, - { - locale: 'gu_IN', - name: 'Gujarati (India)', - }, - { - locale: 'gu', - name: 'Gujarati', - }, - { - locale: 'guz_KE', - name: 'Gusii (Kenya)', - }, - { - locale: 'guz', - name: 'Gusii', - }, - { - locale: 'ha_Latn', - name: 'Hausa (Latin)', - }, - { - locale: 'ha_Latn_GH', - name: 'Hausa (Latin, Ghana)', - }, - { - locale: 'ha_Latn_NE', - name: 'Hausa (Latin, Niger)', - }, - { - locale: 'ha_Latn_NG', - name: 'Hausa (Latin, Nigeria)', - }, - { - locale: 'ha', - name: 'Hausa', - }, - { - locale: 'haw_US', - name: 'Hawaiian (United States)', - }, - { - locale: 'haw', - name: 'Hawaiian', - }, - { - locale: 'he_IL', - name: 'Hebrew (Israel)', - }, - { - locale: 'he', - name: 'Hebrew', - }, - { - locale: 'hi_IN', - name: 'Hindi (India)', - }, - { - locale: 'hi', - name: 'Hindi', - }, - { - locale: 'hu_HU', - name: 'Hungarian (Hungary)', - }, - { - locale: 'hu', - name: 'Hungarian', - }, - { - locale: 'is_IS', - name: 'Icelandic (Iceland)', - }, - { - locale: 'is', - name: 'Icelandic', - }, - { - locale: 'ig_NG', - name: 'Igbo (Nigeria)', - }, - { - locale: 'ig', - name: 'Igbo', - }, - { - locale: 'id_ID', - name: 'Indonesian (Indonesia)', - }, - { - locale: 'id', - name: 'Indonesian', - }, - { - locale: 'ga_IE', - name: 'Irish (Ireland)', - }, - { - locale: 'ga', - name: 'Irish', - }, - { - locale: 'it_IT', - name: 'Italian (Italy)', - }, - { - locale: 'it_CH', - name: 'Italian (Switzerland)', - }, - { - locale: 'it', - name: 'Italian', - }, - { - locale: 'ja_JP', - name: 'Japanese (Japan)', - }, - { - locale: 'ja', - name: 'Japanese', - }, - { - locale: 'kea_CV', - name: 'Kabuverdianu (Cape Verde)', - }, - { - locale: 'kea', - name: 'Kabuverdianu', - }, - { - locale: 'kab_DZ', - name: 'Kabyle (Algeria)', - }, - { - locale: 'kab', - name: 'Kabyle', - }, - { - locale: 'kl_GL', - name: 'Kalaallisut (Greenland)', - }, - { - locale: 'kl', - name: 'Kalaallisut', - }, - { - locale: 'kln_KE', - name: 'Kalenjin (Kenya)', - }, - { - locale: 'kln', - name: 'Kalenjin', - }, - { - locale: 'kam_KE', - name: 'Kamba (Kenya)', - }, - { - locale: 'kam', - name: 'Kamba', - }, - { - locale: 'kn_IN', - name: 'Kannada (India)', - }, - { - locale: 'kn', - name: 'Kannada', - }, - { - locale: 'kk_Cyrl', - name: 'Kazakh (Cyrillic)', - }, - { - locale: 'kk_Cyrl_KZ', - name: 'Kazakh (Cyrillic, Kazakhstan)', - }, - { - locale: 'kk', - name: 'Kazakh', - }, - { - locale: 'km_KH', - name: 'Khmer (Cambodia)', - }, - { - locale: 'km', - name: 'Khmer', - }, - { - locale: 'ki_KE', - name: 'Kikuyu (Kenya)', - }, - { - locale: 'ki', - name: 'Kikuyu', - }, - { - locale: 'rw_RW', - name: 'Kinyarwanda (Rwanda)', - }, - { - locale: 'rw', - name: 'Kinyarwanda', - }, - { - locale: 'kok_IN', - name: 'Konkani (India)', - }, - { - locale: 'kok', - name: 'Konkani', - }, - { - locale: 'ko_KR', - name: 'Korean (South Korea)', - }, - { - locale: 'ko', - name: 'Korean', - }, - { - locale: 'khq_ML', - name: 'Koyra Chiini (Mali)', - }, - { - locale: 'khq', - name: 'Koyra Chiini', - }, - { - locale: 'ses_ML', - name: 'Koyraboro Senni (Mali)', - }, - { - locale: 'ses', - name: 'Koyraboro Senni', - }, - { - locale: 'lag_TZ', - name: 'Langi (Tanzania)', - }, - { - locale: 'lag', - name: 'Langi', - }, - { - locale: 'lv_LV', - name: 'Latvian (Latvia)', - }, - { - locale: 'lv', - name: 'Latvian', - }, - { - locale: 'lt_LT', - name: 'Lithuanian (Lithuania)', - }, - { - locale: 'lt', - name: 'Lithuanian', - }, - { - locale: 'luo_KE', - name: 'Luo (Kenya)', - }, - { - locale: 'luo', - name: 'Luo', - }, - { - locale: 'luy_KE', - name: 'Luyia (Kenya)', - }, - { - locale: 'luy', - name: 'Luyia', - }, - { - locale: 'mk_MK', - name: 'Macedonian (Macedonia)', - }, - { - locale: 'mk', - name: 'Macedonian', - }, - { - locale: 'jmc_TZ', - name: 'Machame (Tanzania)', - }, - { - locale: 'jmc', - name: 'Machame', - }, - { - locale: 'kde_TZ', - name: 'Makonde (Tanzania)', - }, - { - locale: 'kde', - name: 'Makonde', - }, - { - locale: 'mg_MG', - name: 'Malagasy (Madagascar)', - }, - { - locale: 'mg', - name: 'Malagasy', - }, - { - locale: 'ms_BN', - name: 'Malay (Brunei)', - }, - { - locale: 'ms_MY', - name: 'Malay (Malaysia)', - }, - { - locale: 'ms', - name: 'Malay', - }, - { - locale: 'ml_IN', - name: 'Malayalam (India)', - }, - { - locale: 'ml', - name: 'Malayalam', - }, - { - locale: 'mt_MT', - name: 'Maltese (Malta)', - }, - { - locale: 'mt', - name: 'Maltese', - }, - { - locale: 'gv_GB', - name: 'Manx (United Kingdom)', - }, - { - locale: 'gv', - name: 'Manx', - }, - { - locale: 'mr_IN', - name: 'Marathi (India)', - }, - { - locale: 'mr', - name: 'Marathi', - }, - { - locale: 'mas_KE', - name: 'Masai (Kenya)', - }, - { - locale: 'mas_TZ', - name: 'Masai (Tanzania)', - }, - { - locale: 'mas', - name: 'Masai', - }, - { - locale: 'mer_KE', - name: 'Meru (Kenya)', - }, - { - locale: 'mer', - name: 'Meru', - }, - { - locale: 'mfe_MU', - name: 'Morisyen (Mauritius)', - }, - { - locale: 'mfe', - name: 'Morisyen', - }, - { - locale: 'naq_NA', - name: 'Nama (Namibia)', - }, - { - locale: 'naq', - name: 'Nama', - }, - { - locale: 'ne_IN', - name: 'Nepali (India)', - }, - { - locale: 'ne_NP', - name: 'Nepali (Nepal)', - }, - { - locale: 'ne', - name: 'Nepali', - }, - { - locale: 'nd_ZW', - name: 'North Ndebele (Zimbabwe)', - }, - { - locale: 'nd', - name: 'North Ndebele', - }, - { - locale: 'nb_NO', - name: 'Norwegian Bokmål (Norway)', - }, - { - locale: 'nb', - name: 'Norwegian Bokmål', - }, - { - locale: 'nn_NO', - name: 'Norwegian Nynorsk (Norway)', - }, - { - locale: 'nn', - name: 'Norwegian Nynorsk', - }, - { - locale: 'nyn_UG', - name: 'Nyankole (Uganda)', - }, - { - locale: 'nyn', - name: 'Nyankole', - }, - { - locale: 'or_IN', - name: 'Oriya (India)', - }, - { - locale: 'or', - name: 'Oriya', - }, - { - locale: 'om_ET', - name: 'Oromo (Ethiopia)', - }, - { - locale: 'om_KE', - name: 'Oromo (Kenya)', - }, - { - locale: 'om', - name: 'Oromo', - }, - { - locale: 'ps_AF', - name: 'Pashto (Afghanistan)', - }, - { - locale: 'ps', - name: 'Pashto', - }, - { - locale: 'fa_AF', - name: 'Persian (Afghanistan)', - }, - { - locale: 'fa_IR', - name: 'Persian (Iran)', - }, - { - locale: 'fa', - name: 'Persian', - }, - { - locale: 'pl_PL', - name: 'Polish (Poland)', - }, - { - locale: 'pl', - name: 'Polish', - }, - { - locale: 'pt_BR', - name: 'Portuguese (Brazil)', - }, - { - locale: 'pt_GW', - name: 'Portuguese (Guinea-Bissau)', - }, - { - locale: 'pt_MZ', - name: 'Portuguese (Mozambique)', - }, - { - locale: 'pt_PT', - name: 'Portuguese (Portugal)', - }, - { - locale: 'pt', - name: 'Portuguese', - }, - { - locale: 'pa_Arab', - name: 'Punjabi (Arabic)', - }, - { - locale: 'pa_Arab_PK', - name: 'Punjabi (Arabic, Pakistan)', - }, - { - locale: 'pa_Guru', - name: 'Punjabi (Gurmukhi)', - }, - { - locale: 'pa_Guru_IN', - name: 'Punjabi (Gurmukhi, India)', - }, - { - locale: 'pa', - name: 'Punjabi', - }, - { - locale: 'ro_MD', - name: 'Romanian (Moldova)', - }, - { - locale: 'ro_RO', - name: 'Romanian (Romania)', - }, - { - locale: 'ro', - name: 'Romanian', - }, - { - locale: 'rm_CH', - name: 'Romansh (Switzerland)', - }, - { - locale: 'rm', - name: 'Romansh', - }, - { - locale: 'rof_TZ', - name: 'Rombo (Tanzania)', - }, - { - locale: 'rof', - name: 'Rombo', - }, - { - locale: 'ru_MD', - name: 'Russian (Moldova)', - }, - { - locale: 'ru_RU', - name: 'Russian (Russia)', - }, - { - locale: 'ru_UA', - name: 'Russian (Ukraine)', - }, - { - locale: 'ru', - name: 'Russian', - }, - { - locale: 'rwk_TZ', - name: 'Rwa (Tanzania)', - }, - { - locale: 'rwk', - name: 'Rwa', - }, - { - locale: 'saq_KE', - name: 'Samburu (Kenya)', - }, - { - locale: 'saq', - name: 'Samburu', - }, - { - locale: 'sg_CF', - name: 'Sango (Central African Republic)', - }, - { - locale: 'sg', - name: 'Sango', - }, - { - locale: 'seh_MZ', - name: 'Sena (Mozambique)', - }, - { - locale: 'seh', - name: 'Sena', - }, - { - locale: 'sr_Cyrl', - name: 'Serbian (Cyrillic)', - }, - { - locale: 'sr_Cyrl_BA', - name: 'Serbian (Cyrillic, Bosnia and Herzegovina)', - }, - { - locale: 'sr_Cyrl_ME', - name: 'Serbian (Cyrillic, Montenegro)', - }, - { - locale: 'sr_Cyrl_RS', - name: 'Serbian (Cyrillic, Serbia)', - }, - { - locale: 'sr_Latn', - name: 'Serbian (Latin)', - }, - { - locale: 'sr_Latn_BA', - name: 'Serbian (Latin, Bosnia and Herzegovina)', - }, - { - locale: 'sr_Latn_ME', - name: 'Serbian (Latin, Montenegro)', - }, - { - locale: 'sr_Latn_RS', - name: 'Serbian (Latin, Serbia)', - }, - { - locale: 'sr', - name: 'Serbian', - }, - { - locale: 'sn_ZW', - name: 'Shona (Zimbabwe)', - }, - { - locale: 'sn', - name: 'Shona', - }, - { - locale: 'ii_CN', - name: 'Sichuan Yi (China)', - }, - { - locale: 'ii', - name: 'Sichuan Yi', - }, - { - locale: 'si_LK', - name: 'Sinhala (Sri Lanka)', - }, - { - locale: 'si', - name: 'Sinhala', - }, - { - locale: 'sk_SK', - name: 'Slovak (Slovakia)', - }, - { - locale: 'sk', - name: 'Slovak', - }, - { - locale: 'sl_SI', - name: 'Slovenian (Slovenia)', - }, - { - locale: 'sl', - name: 'Slovenian', - }, - { - locale: 'xog_UG', - name: 'Soga (Uganda)', - }, - { - locale: 'xog', - name: 'Soga', - }, - { - locale: 'so_DJ', - name: 'Somali (Djibouti)', - }, - { - locale: 'so_ET', - name: 'Somali (Ethiopia)', - }, - { - locale: 'so_KE', - name: 'Somali (Kenya)', - }, - { - locale: 'so_SO', - name: 'Somali (Somalia)', - }, - { - locale: 'so', - name: 'Somali', - }, - { - locale: 'es_AR', - name: 'Spanish (Argentina)', - }, - { - locale: 'es_BO', - name: 'Spanish (Bolivia)', - }, - { - locale: 'es_CL', - name: 'Spanish (Chile)', - }, - { - locale: 'es_CO', - name: 'Spanish (Colombia)', - }, - { - locale: 'es_CR', - name: 'Spanish (Costa Rica)', - }, - { - locale: 'es_DO', - name: 'Spanish (Dominican Republic)', - }, - { - locale: 'es_EC', - name: 'Spanish (Ecuador)', - }, - { - locale: 'es_SV', - name: 'Spanish (El Salvador)', - }, - { - locale: 'es_GQ', - name: 'Spanish (Equatorial Guinea)', - }, - { - locale: 'es_GT', - name: 'Spanish (Guatemala)', - }, - { - locale: 'es_HN', - name: 'Spanish (Honduras)', - }, - { - locale: 'es_419', - name: 'Spanish (Latin America)', - }, - { - locale: 'es_MX', - name: 'Spanish (Mexico)', - }, - { - locale: 'es_NI', - name: 'Spanish (Nicaragua)', - }, - { - locale: 'es_PA', - name: 'Spanish (Panama)', - }, - { - locale: 'es_PY', - name: 'Spanish (Paraguay)', - }, - { - locale: 'es_PE', - name: 'Spanish (Peru)', - }, - { - locale: 'es_PR', - name: 'Spanish (Puerto Rico)', - }, - { - locale: 'es_ES', - name: 'Spanish (Spain)', - }, - { - locale: 'es_US', - name: 'Spanish (United States)', - }, - { - locale: 'es_UY', - name: 'Spanish (Uruguay)', - }, - { - locale: 'es_VE', - name: 'Spanish (Venezuela)', - }, - { - locale: 'es', - name: 'Spanish', - }, - { - locale: 'sw_KE', - name: 'Swahili (Kenya)', - }, - { - locale: 'sw_TZ', - name: 'Swahili (Tanzania)', - }, - { - locale: 'sw', - name: 'Swahili', - }, - { - locale: 'sv_FI', - name: 'Swedish (Finland)', - }, - { - locale: 'sv_SE', - name: 'Swedish (Sweden)', - }, - { - locale: 'sv', - name: 'Swedish', - }, - { - locale: 'gsw_CH', - name: 'Swiss German (Switzerland)', - }, - { - locale: 'gsw', - name: 'Swiss German', - }, - { - locale: 'shi_Latn', - name: 'Tachelhit (Latin)', - }, - { - locale: 'shi_Latn_MA', - name: 'Tachelhit (Latin, Morocco)', - }, - { - locale: 'shi_Tfng', - name: 'Tachelhit (Tifinagh)', - }, - { - locale: 'shi_Tfng_MA', - name: 'Tachelhit (Tifinagh, Morocco)', - }, - { - locale: 'shi', - name: 'Tachelhit', - }, - { - locale: 'dav_KE', - name: 'Taita (Kenya)', - }, - { - locale: 'dav', - name: 'Taita', - }, - { - locale: 'ta_IN', - name: 'Tamil (India)', - }, - { - locale: 'ta_LK', - name: 'Tamil (Sri Lanka)', - }, - { - locale: 'ta', - name: 'Tamil', - }, - { - locale: 'te_IN', - name: 'Telugu (India)', - }, - { - locale: 'te', - name: 'Telugu', - }, - { - locale: 'teo_KE', - name: 'Teso (Kenya)', - }, - { - locale: 'teo_UG', - name: 'Teso (Uganda)', - }, - { - locale: 'teo', - name: 'Teso', - }, - { - locale: 'th_TH', - name: 'Thai (Thailand)', - }, - { - locale: 'th', - name: 'Thai', - }, - { - locale: 'bo_CN', - name: 'Tibetan (China)', - }, - { - locale: 'bo_IN', - name: 'Tibetan (India)', - }, - { - locale: 'bo', - name: 'Tibetan', - }, - { - locale: 'ti_ER', - name: 'Tigrinya (Eritrea)', - }, - { - locale: 'ti_ET', - name: 'Tigrinya (Ethiopia)', - }, - { - locale: 'ti', - name: 'Tigrinya', - }, - { - locale: 'to_TO', - name: 'Tonga (Tonga)', - }, - { - locale: 'to', - name: 'Tonga', - }, - { - locale: 'tr_TR', - name: 'Turkish (Turkey)', - }, - { - locale: 'tr', - name: 'Turkish', - }, - { - locale: 'uk_UA', - name: 'Ukrainian (Ukraine)', - }, - { - locale: 'uk', - name: 'Ukrainian', - }, - { - locale: 'ur_IN', - name: 'Urdu (India)', - }, - { - locale: 'ur_PK', - name: 'Urdu (Pakistan)', - }, - { - locale: 'ur', - name: 'Urdu', - }, - { - locale: 'uz_Arab', - name: 'Uzbek (Arabic)', - }, - { - locale: 'uz_Arab_AF', - name: 'Uzbek (Arabic, Afghanistan)', - }, - { - locale: 'uz_Cyrl', - name: 'Uzbek (Cyrillic)', - }, - { - locale: 'uz_Cyrl_UZ', - name: 'Uzbek (Cyrillic, Uzbekistan)', - }, - { - locale: 'uz_Latn', - name: 'Uzbek (Latin)', - }, - { - locale: 'uz_Latn_UZ', - name: 'Uzbek (Latin, Uzbekistan)', - }, - { - locale: 'uz', - name: 'Uzbek', - }, - { - locale: 'vi_VN', - name: 'Vietnamese (Vietnam)', - }, - { - locale: 'vi', - name: 'Vietnamese', - }, - { - locale: 'vun_TZ', - name: 'Vunjo (Tanzania)', - }, - { - locale: 'vun', - name: 'Vunjo', - }, - { - locale: 'cy_GB', - name: 'Welsh (United Kingdom)', - }, - { - locale: 'cy', - name: 'Welsh', - }, - { - locale: 'yo_NG', - name: 'Yoruba (Nigeria)', - }, - { - locale: 'yo', - name: 'Yoruba', - }, - { - locale: 'zu_ZA', - name: 'Zulu (South Africa)', - }, - { - locale: 'zu', - name: 'Zulu', - }, -]; - -export default locales; diff --git a/bigbluebutton-html5/package-lock.json b/bigbluebutton-html5/package-lock.json index f4798f2b93be27ea001c29e45916bfd5f038c07d..11bab643c9f78c12f785ba8acbd62d85712046de 100644 --- a/bigbluebutton-html5/package-lock.json +++ b/bigbluebutton-html5/package-lock.json @@ -3,291 +3,173 @@ "requires": true, "lockfileVersion": 1, "dependencies": { - "abbrev": { - "version": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg=" + "attr-accept": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-1.1.0.tgz", + "integrity": "sha1-tc01In8WOTWo8d4Q7T66FpQfa+Y=" }, - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", - "integrity": "sha1-MXrHghgmwixwLWYYmrg1lnXxNdc=", - "dev": true - }, - "acorn-jsx": { - "version": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "autoprefixer": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.1.6.tgz", + "integrity": "sha512-C9yv/UF3X+eJTi/zvfxuyfxmLibYrntpF3qoJYrMeQwgUJOZrZvpJiMG2FMQ3qnhWtF/be4pYONBBw95ZGe3vA==", "dev": true, "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz" + "browserslist": "2.11.0", + "caniuse-lite": "1.0.30000789", + "normalize-range": "0.1.2", + "num2fraction": "1.2.2", + "postcss": "6.0.16", + "postcss-value-parser": "3.3.0" }, "dependencies": { - "acorn": { - "version": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "browserslist": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.0.tgz", + "integrity": "sha512-mNYp0RNeu1xueGuJFSXkU+K0nH+dBE/gcjtyhtNKfU8hwdrVIfoA7i5iFSjOmzkGdL2QaO7YX9ExiVPE7AY9JA==", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000789", + "electron-to-chromium": "1.3.30" + } + }, + "caniuse-lite": { + "version": "1.0.30000789", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000789.tgz", + "integrity": "sha1-Lj2TeyZxM/Y2Ne9/RB+sZjYPyIk=", "dev": true - } - } - }, - "ajv": { - "version": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz", - "integrity": "sha1-RBT/dKUIecII7l/cgm4ywwNUnto=", - "requires": { - "co": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "fast-deep-equal": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", - "fast-json-stable-stringify": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "json-schema-traverse": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz" - } - }, - "ajv-keywords": { - "version": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", - "dev": true - }, - "amdefine": { - "version": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" - }, - "ansi-escapes": { - "version": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", - "integrity": "sha1-7D6LTp+AZPwCw6ybZfHCdb2o75I=", - "dev": true - }, - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, - "any-promise": { - "version": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" - }, - "app-root-path": { - "version": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz", - "integrity": "sha1-zWLc+OT9WkF+/GZNLlsQZTxlG0Y=", - "dev": true - }, - "aproba": { - "version": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha1-aALmJk79GMeQobDVF/DyYnvyyUo=" - }, - "archiver": { - "version": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", - "dev": true, - "requires": { - "archiver-utils": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "async": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", - "buffer-crc32": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "tar-stream": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.4.tgz", - "walkdir": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", - "zip-stream": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz" - }, - "dependencies": { - "async": { - "version": "https://registry.npmjs.org/async/-/async-2.5.0.tgz", - "integrity": "sha1-hDGQ/WtzV6C54clW7d3V7IRitU0=", + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz" + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } - } - } - }, - "archiver-utils": { - "version": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", - "dev": true, - "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "lazystream": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "normalize-path": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - }, - "dependencies": { - "normalize-path": { - "version": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "electron-to-chromium": { + "version": "1.3.30", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.30.tgz", + "integrity": "sha512-zx1Prv7kYLfc4OA60FhxGbSo4qrEjgSzpo1/37i7l9ltXPYOoQBtjQxY9KmsgfHnBxHlBGXwLlsbt/gub1w5lw==", + "dev": true, + "requires": { + "electron-releases": "2.1.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", + "dev": true + }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "postcss-value-parser": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", + "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", "dev": true, "requires": { - "remove-trailing-separator": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + "has-flag": "2.0.0" } } } }, - "are-we-there-yet": { - "version": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", - "requires": { - "delegates": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - } - }, - "argparse": { - "version": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", - "dev": true, - "requires": { - "sprintf-js": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" - } - }, - "aria-query": { - "version": "https://registry.npmjs.org/aria-query/-/aria-query-0.7.0.tgz", - "integrity": "sha1-SvEKHmFXPd6gzzuZtRxSwFtCTSQ=", - "dev": true, - "requires": { - "ast-types-flow": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz" - } - }, - "array-find-index": { - "version": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" - }, - "array-includes": { - "version": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", - "dev": true, - "requires": { - "define-properties": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "es-abstract": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.9.0.tgz" - } - }, - "array-union": { - "version": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" - } - }, - "array-uniq": { - "version": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true - }, - "arrify": { - "version": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, - "asap": { - "version": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" - }, - "asn1": { - "version": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" - }, - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" - }, - "assertion-error": { - "version": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.0.2.tgz", - "integrity": "sha1-E8pRXYYgbaC6xm6DTdOX2HWBCUw=", - "dev": true - }, - "ast-types-flow": { - "version": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", - "dev": true - }, - "async": { - "version": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=" - }, - "async-foreach": { - "version": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=" - }, - "asynckit": { - "version": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" - }, - "atob": { - "version": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", - "integrity": "sha1-lfE2KbEsOlGl0hWr3OKqnzL4B3M=", - "dev": true - }, - "autoprefixer": { - "version": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.1.6.tgz", - "integrity": "sha1-+5MwOfdK90qD5xIlznjZ/Vi6hNc=", - "dev": true, - "requires": { - "browserslist": "https://registry.npmjs.org/browserslist/-/browserslist-2.6.1.tgz", - "caniuse-lite": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000756.tgz", - "normalize-range": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "num2fraction": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "postcss-value-parser": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz" - } - }, - "autosize": { - "version": "https://registry.npmjs.org/autosize/-/autosize-3.0.21.tgz", - "integrity": "sha1-8YL0DRd1fZeKE5pMnKQMTA5EhgM=" - }, - "aws-sign2": { - "version": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" - }, - "aws4": { - "version": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", - "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" - }, - "axobject-query": { - "version": "https://registry.npmjs.org/axobject-query/-/axobject-query-0.1.0.tgz", - "integrity": "sha1-YvWdvFnJ+SQnWco0mWDnov48NsA=", - "dev": true, - "requires": { - "ast-types-flow": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz" - } - }, - "babel-code-frame": { - "version": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "js-tokens": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz" - } - }, "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz" - } - }, - "balanced-match": { - "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" - }, - "bcrypt-pbkdf": { - "version": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", - "optional": true, - "requires": { - "tweetnacl": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" - } - }, - "bindings": { - "version": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", - "integrity": "sha1-s0b27PapX1qBXFg5/HzbIlAvHtc=" - }, - "bl": { - "version": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", - "dev": true, - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" + "core-js": "2.5.3", + "regenerator-runtime": "0.11.1" + }, + "dependencies": { + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "regenerator-runtime": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + } } }, "block-stream": { @@ -297,4717 +179,8261 @@ "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" } }, - "boom": { - "version": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz" - } - }, - "brace-expansion": { - "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", - "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", - "requires": { - "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - } - }, - "browserslist": { - "version": "https://registry.npmjs.org/browserslist/-/browserslist-2.6.1.tgz", - "integrity": "sha1-zGWgWtYTHr2ibwdvKCK6G8gmN2s=", - "dev": true, - "requires": { - "caniuse-lite": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000756.tgz", - "electron-to-chromium": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz" - } - }, - "buffer-crc32": { - "version": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", - "dev": true - }, - "builtin-modules": { - "version": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" - }, - "caller-path": { - "version": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", - "dev": true, - "requires": { - "callsites": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz" - } - }, - "callsites": { - "version": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", - "dev": true - }, - "camelcase": { - "version": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" - }, - "camelcase-keys": { - "version": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "requires": { - "camelcase": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "map-obj": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" - } - }, - "caniuse-lite": { - "version": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000756.tgz", - "integrity": "sha1-PacBwVIbn6uHAExt58l/pH2+qtI=", - "dev": true - }, - "caseless": { - "version": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" - }, "chai": { - "version": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.1.2.tgz", "integrity": "sha1-D2RYS6ZC8PKs4oBiefTwbKI61zw=", "dev": true, "requires": { - "assertion-error": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.0.2.tgz", - "check-error": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "deep-eql": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "get-func-name": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "pathval": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "type-detect": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.3.tgz" - } - }, - "chain-function": { - "version": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz", - "integrity": "sha1-DUqzfn4Y6tC9xHuSB2QRjOWHM9w=" - }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "has-ansi": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" - } - }, - "check-error": { - "version": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", - "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", - "dev": true - }, - "ci-info": { - "version": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.1.tgz", - "integrity": "sha1-R7RN8RjEjSWXtW00Ln4leRBgFxo=", - "dev": true - }, - "circular-json": { - "version": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha1-gVyZ6oT2gJUp0vRXkb34JxE1LWY=", - "dev": true - }, - "classnames": { - "version": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz", - "integrity": "sha1-+zgB1FNGdknvNgPH1hoCvRKb3m0=" - }, - "cli-cursor": { - "version": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, - "requires": { - "restore-cursor": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz" - } - }, - "cli-spinners": { - "version": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz", - "integrity": "sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw=", - "dev": true - }, - "cli-truncate": { - "version": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", - "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", - "dev": true, - "requires": { - "slice-ansi": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" + "assertion-error": "1.1.0", + "check-error": "1.0.2", + "deep-eql": "3.0.1", + "get-func-name": "2.0.0", + "pathval": "1.1.0", + "type-detect": "4.0.5" }, "dependencies": { - "slice-ansi": { - "version": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true + }, + "check-error": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.2.tgz", + "integrity": "sha1-V00xLt2Iu13YkS6Sht1sCu1KrII=", + "dev": true + }, + "deep-eql": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", + "integrity": "sha512-+QeIQyN5ZuO+3Uk5DYh6/1eKO0m0YmJFGNmFHGACpf1ClL1nmlV/p4gNgbl2pJGxgXb4faqo6UE+M5ACEMyVcw==", + "dev": true, + "requires": { + "type-detect": "4.0.5" + } + }, + "get-func-name": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", + "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", + "dev": true + }, + "pathval": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", + "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", + "dev": true + }, + "type-detect": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.5.tgz", + "integrity": "sha512-N9IvkQslUGYGC24RkJk1ba99foK6TkwC2FHAEBlQFBP0RxQZS8ZpJuAZcwiY/w9ZJHFQb1aOXBI60OdxhTrwEQ==", "dev": true } } }, - "cli-width": { - "version": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "chardet": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", "dev": true }, + "classnames": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz", + "integrity": "sha1-+zgB1FNGdknvNgPH1hoCvRKb3m0=" + }, "clipboard": { - "version": "https://registry.npmjs.org/clipboard/-/clipboard-1.7.1.tgz", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-1.7.1.tgz", "integrity": "sha1-Ng1taUbpmnof7zleQrqStem1oWs=", "requires": { - "good-listener": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "select": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "tiny-emitter": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz" - } - }, - "cliui": { - "version": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "requires": { - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "wrap-ansi": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz" - } - }, - "co": { - "version": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" - }, - "code-point-at": { - "version": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" - }, - "color-convert": { - "version": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", - "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", - "dev": true, - "requires": { - "color-name": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz" - } - }, - "color-name": { - "version": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true - }, - "colors": { - "version": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" - }, - "combined-stream": { - "version": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", - "requires": { - "delayed-stream": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" - } - }, - "commander": { - "version": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "integrity": "sha1-FXFS/R56bI2YpbcVzzdt+SgARWM=", - "dev": true - }, - "compress-commons": { - "version": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", - "dev": true, - "requires": { - "buffer-crc32": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - "crc32-stream": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "normalize-path": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" + "good-listener": "1.2.2", + "select": "1.1.2", + "tiny-emitter": "2.0.2" }, "dependencies": { - "normalize-path": { - "version": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, + "delegate": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", + "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==" + }, + "good-listener": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", + "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", "requires": { - "remove-trailing-separator": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz" + "delegate": "3.2.0" } + }, + "select": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", + "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" + }, + "tiny-emitter": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz", + "integrity": "sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==" } } }, - "computed-style": { - "version": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz", - "integrity": "sha1-fzRP2FhLLkJb7cpKGvwOMAuwXXQ=" - }, - "concat-map": { - "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" - }, - "concat-stream": { - "version": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", - "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", - "dev": true, - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "typedarray": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" - } - }, - "console-control-strings": { - "version": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" - }, - "contains-path": { - "version": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true - }, "core-js": { - "version": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "integrity": "sha1-rmh03GaTd4m4B1T/VCjfZoGcpQs=" - }, - "core-util-is": { - "version": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=" + }, + "electron-releases": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/electron-releases/-/electron-releases-2.1.0.tgz", + "integrity": "sha512-cyKFD1bTE/UgULXfaueIN1k5EPFzs+FRc/rvCY5tIynefAPqopQEgjr0EzY+U3Dqrk/G4m9tXSPuZ77v6dL/Rw==", + "dev": true }, - "cosmiconfig": { - "version": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-1.1.0.tgz", - "integrity": "sha1-DeoPmATv37kp+7GxiOJVU+oFPTc=", + "eslint": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.9.0.tgz", + "integrity": "sha1-doedJ0BoJhsZH+Dy9Wx0wvQgjos=", "dev": true, "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "js-yaml": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "os-homedir": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "parse-json": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "require-from-string": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz" - } - }, - "crc": { - "version": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", - "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=", - "dev": true - }, - "crc32-stream": { - "version": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", - "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", - "dev": true, - "requires": { - "crc": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - } - }, - "create-react-class": { - "version": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", - "integrity": "sha1-zx7RXxKq1/FO9fLf4F5sQvke8Co=", - "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - } - }, - "cross-spawn": { - "version": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", - "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" - } - }, - "cryptiles": { - "version": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz" + "ajv": "5.5.2", + "babel-code-frame": "6.26.0", + "chalk": "2.3.0", + "concat-stream": "1.6.0", + "cross-spawn": "5.1.0", + "debug": "3.1.0", + "doctrine": "2.1.0", + "eslint-scope": "3.7.1", + "espree": "3.5.2", + "esquery": "1.0.0", + "estraverse": "4.2.0", + "esutils": "2.0.2", + "file-entry-cache": "2.0.0", + "functional-red-black-tree": "1.0.1", + "glob": "7.1.2", + "globals": "9.18.0", + "ignore": "3.3.7", + "imurmurhash": "0.1.4", + "inquirer": "3.3.0", + "is-resolvable": "1.0.1", + "js-yaml": "3.10.0", + "json-stable-stringify": "1.0.1", + "levn": "0.3.0", + "lodash": "4.17.4", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "natural-compare": "1.4.0", + "optionator": "0.8.2", + "path-is-inside": "1.0.2", + "pluralize": "7.0.0", + "progress": "2.0.0", + "require-uncached": "1.0.3", + "semver": "5.4.1", + "strip-ansi": "4.0.0", + "strip-json-comments": "2.0.1", + "table": "4.0.2", + "text-table": "0.2.0" }, "dependencies": { - "boom": { - "version": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha1-XdnabuOl8wIHdDYpDLcX0/SlTgI=", + "acorn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.3.0.tgz", + "integrity": "sha512-Yej+zOJ1Dm/IMZzzj78OntP/r3zHEaKcyNoU2lAaxPtrseM6rF0xwqoz5Q5ysAiED9hTjI2hgtvLXitlCN1/Ug==", + "dev": true + }, + "acorn-jsx": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", + "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "dev": true, "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz" + "acorn": "3.3.0" + }, + "dependencies": { + "acorn": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", + "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", + "dev": true + } } - } - } - }, - "css": { - "version": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", - "integrity": "sha1-c6TIHehdtmTU7mdPfUcIXjstVdw=", - "dev": true, - "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "source-map-resolve": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", - "urix": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" - }, - "dependencies": { - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", - "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "dev": true, "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" + "co": "4.6.0", + "fast-deep-equal": "1.0.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" } - } - } - }, - "css-parse": { - "version": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", - "dev": true, - "requires": { - "css": "https://registry.npmjs.org/css/-/css-2.2.1.tgz" - } - }, - "css-selector-tokenizer": { - "version": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", - "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", - "dev": true, - "requires": { - "cssesc": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "fastparse": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", - "regexpu-core": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz" - } - }, - "css-value": { - "version": "https://registry.npmjs.org/css-value/-/css-value-0.0.1.tgz", - "integrity": "sha1-Xv1sLupeof1rasV+wEJ7GEUkJOo=", - "dev": true - }, - "cssesc": { - "version": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true - }, - "currently-unhandled": { - "version": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "requires": { - "array-find-index": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz" - } - }, - "cycle": { - "version": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=" - }, - "damerau-levenshtein": { - "version": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz", - "integrity": "sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=", - "dev": true - }, - "dashdash": { - "version": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - } - }, - "date-fns": { - "version": "https://registry.npmjs.org/date-fns/-/date-fns-1.29.0.tgz", - "integrity": "sha1-EuYJzcuTUScxHQTTMzTilgoqVOY=", - "dev": true - }, - "date-format": { - "version": "https://registry.npmjs.org/date-format/-/date-format-0.0.2.tgz", - "integrity": "sha1-+v1Ej3IRXvHitzkVWukvK+bCjdE=", - "dev": true - }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", - "requires": { - "ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - } - }, - "decamelize": { - "version": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" - }, - "decompress-response": { - "version": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", - "requires": { - "mimic-response": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz" - } - }, - "deep-eql": { - "version": "https://registry.npmjs.org/deep-eql/-/deep-eql-3.0.1.tgz", - "integrity": "sha1-38lARACtHI/gI+faHfHBR8S0RN8=", - "dev": true, - "requires": { - "type-detect": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.3.tgz" - } - }, - "deep-is": { - "version": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true - }, - "deepmerge": { - "version": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz", - "integrity": "sha1-EEmdhohEza1P7ghC34x/bwyVp1M=" - }, - "define-properties": { - "version": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", - "dev": true, - "requires": { - "foreach": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "object-keys": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz" - } - }, - "del": { - "version": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", - "dev": true, - "requires": { - "globby": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "is-path-cwd": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "is-path-in-cwd": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz" - } - }, - "delayed-stream": { - "version": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" - }, - "delegate": { - "version": "https://registry.npmjs.org/delegate/-/delegate-3.1.3.tgz", - "integrity": "sha1-moJRp3fXAl+qVXN7w7BxdCEnqf0=" - }, - "delegates": { - "version": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" - }, - "doctrine": { - "version": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", - "integrity": "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=", - "dev": true, - "requires": { - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - } - }, - "dom-helpers": { - "version": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.2.1.tgz", - "integrity": "sha1-MgPgf+0he9H0JLAZc1WC/Deyglo=" - }, - "double-ended-queue": { - "version": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" - }, - "duplexer3": { - "version": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" - }, - "ecc-jsbn": { - "version": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", - "optional": true, - "requires": { - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" - } - }, - "ejs": { - "version": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", - "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=", - "dev": true - }, - "electron-to-chromium": { - "version": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.27.tgz", - "integrity": "sha1-eOy4o5kGYYe7N07t412ccFZagD0=", - "dev": true - }, - "elegant-spinner": { - "version": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", - "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", - "dev": true - }, - "emoji-regex": { - "version": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.5.1.tgz", - "integrity": "sha1-m66pKbFVVlwR6kHGYm6qZc75ksI=", - "dev": true - }, - "encoding": { - "version": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", - "requires": { - "iconv-lite": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz" - } - }, - "end-of-stream": { - "version": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", - "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", - "dev": true, - "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz" - } - }, - "error-ex": { - "version": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", - "requires": { - "is-arrayish": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" - } - }, - "es-abstract": { - "version": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.9.0.tgz", - "integrity": "sha1-aQgpoHyuNrIi5/2bdcDQVz6yUic=", - "dev": true, - "requires": { - "es-to-primitive": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "function-bind": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "has": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "is-callable": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", - "is-regex": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz" - } - }, - "es-to-primitive": { - "version": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", - "dev": true, - "requires": { - "is-callable": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", - "is-date-object": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "is-symbol": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz" - } - }, - "escape-string-regexp": { - "version": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" - }, - "eslint": { - "version": "https://registry.npmjs.org/eslint/-/eslint-4.9.0.tgz", - "integrity": "sha1-doedJ0BoJhsZH+Dy9Wx0wvQgjos=", - "dev": true, - "requires": { - "ajv": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz", - "babel-code-frame": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "concat-stream": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", - "cross-spawn": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "doctrine": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", - "eslint-scope": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "espree": "https://registry.npmjs.org/espree/-/espree-3.5.1.tgz", - "esquery": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "file-entry-cache": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "functional-red-black-tree": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "globals": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "ignore": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "imurmurhash": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "inquirer": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "is-resolvable": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", - "js-yaml": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "json-stable-stringify": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "levn": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "natural-compare": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "optionator": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "pluralize": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "progress": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", - "require-uncached": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "strip-json-comments": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "table": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "text-table": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" - }, - "dependencies": { + }, + "ajv-keywords": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", + "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", + "dev": true + }, + "ansi-escapes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", + "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==", + "dev": true + }, "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", "dev": true }, "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "argparse": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", + "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "sprintf-js": "1.0.3" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "array-union": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", + "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "array-uniq": "1.0.3" } }, - "cross-spawn": { - "version": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "array-uniq": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "dev": true + }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", + "dev": true + }, + "babel-code-frame": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", + "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "dev": true, "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "shebang-command": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" + "chalk": "1.1.3", + "esutils": "2.0.2", + "js-tokens": "3.0.2" + }, + "dependencies": { + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + } } }, - "debug": { - "version": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha1-W7WgZyYotkFJVmuhaBnmFRjGcmE=", + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "dev": true, "requires": { - "ms": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" + "balanced-match": "1.0.0", + "concat-map": "0.0.1" } }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "caller-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", + "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", "dev": true, "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + "callsites": "0.2.0" } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "callsites": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", + "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", + "dev": true + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } - } - } - }, - "eslint-config-airbnb": { - "version": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-16.1.0.tgz", - "integrity": "sha1-JUa/sCzJ/pIoS/FyPM8uh7xFykY=", - "dev": true, - "requires": { - "eslint-config-airbnb-base": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz" - } - }, - "eslint-config-airbnb-base": { - "version": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz", - "integrity": "sha1-OGRB5UoSzNlXsKklZKS6/r10eUQ=", - "dev": true, - "requires": { - "eslint-restricted-globals": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz" - } - }, - "eslint-import-resolver-node": { - "version": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz", - "integrity": "sha1-RCJXTN5mqaewmZOO5NUIoZng48w=", - "dev": true, - "requires": { - "debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "resolve": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz" - } - }, - "eslint-module-utils": { - "version": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz", - "integrity": "sha1-q67IJBd2E7ipWymWOeG2+s9HNEk=", - "dev": true, - "requires": { - "debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "pkg-dir": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz" - } - }, - "eslint-plugin-import": { - "version": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz", - "integrity": "sha1-+htu8x/LPFAcCYWcG4bx/FuYaJQ=", - "dev": true, - "requires": { - "builtin-modules": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "contains-path": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "doctrine": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "eslint-import-resolver-node": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.1.tgz", - "eslint-module-utils": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz", - "has": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "lodash.cond": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "read-pkg-up": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz" - }, - "dependencies": { - "doctrine": { - "version": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + }, + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "esutils": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + "restore-cursor": "2.0.0" } }, - "find-up": { - "version": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "dev": true, "requires": { - "locate-path": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" + "color-name": "1.1.3" } }, - "load-json-file": { - "version": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "concat-stream": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", + "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", "dev": true, "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "parse-json": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" + "inherits": "2.0.3", + "readable-stream": "2.3.3", + "typedarray": "0.0.6" } }, - "path-type": { - "version": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", - "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" } }, - "read-pkg": { - "version": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", - "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "dev": true, "requires": { - "load-json-file": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", - "normalize-package-data": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "path-type": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz" + "ms": "2.0.0" } }, - "read-pkg-up": { - "version": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", - "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "deep-is": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", + "dev": true + }, + "del": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", + "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "find-up": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "read-pkg": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz" + "globby": "5.0.0", + "is-path-cwd": "1.0.0", + "is-path-in-cwd": "1.0.0", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "rimraf": "2.6.2" } }, - "strip-bom": { - "version": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - } - } - }, - "eslint-plugin-jsx-a11y": { - "version": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.2.tgz", - "integrity": "sha1-ZZJ3p1iwNsMFp+ShMFfDAc075z8=", - "dev": true, - "requires": { - "aria-query": "https://registry.npmjs.org/aria-query/-/aria-query-0.7.0.tgz", - "array-includes": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "ast-types-flow": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "axobject-query": "https://registry.npmjs.org/axobject-query/-/axobject-query-0.1.0.tgz", - "damerau-levenshtein": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz", - "emoji-regex": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.5.1.tgz", - "jsx-ast-utils": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz" - } - }, - "eslint-plugin-react": { - "version": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.4.0.tgz", - "integrity": "sha1-MAqVhhuXKcCH02LdZKvMNRp0Nko=", - "dev": true, - "requires": { - "doctrine": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", - "has": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "jsx-ast-utils": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz" - }, - "dependencies": { - "jsx-ast-utils": { - "version": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", - "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dev": true, "requires": { - "array-includes": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz" + "esutils": "2.0.2" } - } - } - }, - "eslint-restricted-globals": { - "version": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz", - "integrity": "sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=", - "dev": true - }, - "eslint-scope": { - "version": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", - "dev": true, - "requires": { - "esrecurse": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz" - } - }, - "espree": { - "version": "https://registry.npmjs.org/espree/-/espree-3.5.1.tgz", - "integrity": "sha1-DJiLirRttTEAoZVK5LqZXd0n2H4=", - "dev": true, - "requires": { - "acorn": "https://registry.npmjs.org/acorn/-/acorn-5.2.1.tgz", - "acorn-jsx": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz" - } - }, - "esprima": { - "version": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha1-RJnt3NERDgshi6zy+n9/WfVcqAQ=", - "dev": true - }, - "esquery": { - "version": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", - "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", - "dev": true, - "requires": { - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz" - } - }, - "esrecurse": { - "version": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", - "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", - "dev": true, - "requires": { - "estraverse": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - } - }, - "estraverse": { - "version": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true - }, - "esutils": { - "version": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true - }, - "eventemitter2": { - "version": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-4.1.2.tgz", - "integrity": "sha1-DhqEd6+CGm7zmVsxG/dMI6UkfxU=" - }, - "execa": { - "version": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", - "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", - "dev": true, - "requires": { - "cross-spawn": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "get-stream": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "npm-run-path": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "p-finally": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "strip-eof": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" - }, - "dependencies": { - "cross-spawn": { - "version": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", - "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "eslint-scope": { + "version": "3.7.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", + "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", "dev": true, "requires": { - "lru-cache": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "shebang-command": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" + "esrecurse": "4.2.0", + "estraverse": "4.2.0" } - } - } - }, - "exenv": { - "version": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", - "integrity": "sha1-KueOhdmJQVhnCwPUe+wfA72Ru50=" - }, - "exit": { - "version": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true - }, - "exit-hook": { - "version": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", - "dev": true - }, - "extend": { - "version": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" - }, - "external-editor": { - "version": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", - "integrity": "sha1-UsJJo5gbm6GHx8rPW+tQvx2Rprw=", - "dev": true, - "requires": { - "iconv-lite": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "jschardet": "https://registry.npmjs.org/jschardet/-/jschardet-1.6.0.tgz", - "tmp": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz" - } - }, - "extsprintf": { - "version": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" - }, - "eyes": { - "version": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=" - }, - "fast-deep-equal": { - "version": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", - "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" - }, - "fast-json-stable-stringify": { - "version": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" - }, - "fast-levenshtein": { - "version": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastparse": { - "version": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", - "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", - "dev": true - }, - "fbjs": { - "version": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", - "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", - "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "isomorphic-fetch": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "promise": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "setimmediate": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "ua-parser-js": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz" - }, - "dependencies": { - "core-js": { - "version": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", - "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" - } - } - }, - "fibers": { - "version": "https://registry.npmjs.org/fibers/-/fibers-2.0.0.tgz", - "integrity": "sha512-sLxo4rZVk7xLgAjb/6zEzHJfSALx6u6coN1z61XCOF7i6CyTdJawF4+RdpjCSeS8AP66eR2InScbYAz9RAVOgA==", - "dev": true - }, - "figures": { - "version": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, - "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" - } - }, - "file-entry-cache": { - "version": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", - "dev": true, - "requires": { - "flat-cache": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" - } - }, - "find-up": { - "version": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "requires": { - "path-exists": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "flat": { - "version": "https://registry.npmjs.org/flat/-/flat-4.0.0.tgz", - "integrity": "sha1-Orx/O1iOZM533EL9Wao1gGYi/qg=", - "requires": { - "is-buffer": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz" - } - }, - "flat-cache": { - "version": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", - "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", - "dev": true, - "requires": { - "circular-json": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "del": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "write": "https://registry.npmjs.org/write/-/write-0.2.1.tgz" - } - }, - "flatten": { - "version": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", - "dev": true - }, - "foreach": { - "version": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, - "forever-agent": { - "version": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" - }, - "form-data": { - "version": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", - "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", - "requires": { - "asynckit": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz" - } - }, - "fs.realpath": { - "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" - }, - "fstream": { - "version": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", - "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz" - } - }, - "function-bind": { - "version": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=", - "dev": true - }, - "functional-red-black-tree": { - "version": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true - }, - "gauge": { - "version": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "requires": { - "aproba": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "console-control-strings": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "has-unicode": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "wide-align": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz" - } - }, - "gaze": { - "version": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", - "requires": { - "globule": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz" - } - }, - "get-caller-file": { - "version": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" - }, - "get-func-name": { - "version": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.0.tgz", - "integrity": "sha1-6td0q+5y4gQJQzoGY2YCPdaIekE=", - "dev": true - }, - "get-own-enumerable-property-symbols": { - "version": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz", - "integrity": "sha1-XErYfyg0xLm06EVJ3B4GUPs4wks=", - "dev": true - }, - "get-stdin": { - "version": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" - }, - "get-stream": { - "version": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - }, - "getpass": { - "version": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" - } - }, - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", - "requires": { - "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" - } - }, - "globals": { - "version": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha1-qjiWs+abSH8X4x7SFD1pqOMMLYo=", - "dev": true - }, - "globby": { - "version": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", - "dev": true, - "requires": { - "array-union": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "arrify": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "globule": { - "version": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", - "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", - "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" - } - }, - "good-listener": { - "version": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "requires": { - "delegate": "https://registry.npmjs.org/delegate/-/delegate-3.1.3.tgz" - } - }, - "got": { - "version": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "integrity": "sha1-BUUP2ECU5rvqVvRRpDqcKJFmOFo=", - "requires": { - "decompress-response": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", - "duplexer3": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "get-stream": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "is-plain-obj": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "is-retry-allowed": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "isurl": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "lowercase-keys": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "p-cancelable": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "p-timeout": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.0.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "timed-out": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "url-parse-lax": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "url-to-options": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz" - } - }, - "graceful-fs": { - "version": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" - }, - "har-schema": { - "version": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" - }, - "har-validator": { - "version": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", - "requires": { - "ajv": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz", - "har-schema": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" - } - }, - "has": { - "version": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", - "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", - "dev": true, - "requires": { - "function-bind": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" - } - }, - "has-ansi": { - "version": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" - } - }, - "has-flag": { - "version": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", - "dev": true - }, - "has-symbol-support-x": { - "version": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", - "integrity": "sha1-ZuwuN34MfXzO2wejqE13UQ/xvEw=" - }, - "has-to-string-tag-x": { - "version": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "integrity": "sha1-oEWrOD17SyASoAFIqwql8pAETU0=", - "requires": { - "has-symbol-support-x": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz" - } - }, - "has-unicode": { - "version": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" - }, - "hawk": { - "version": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha1-r02RTrBl+bXOTZ0RwcshJu7MMDg=", - "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "cryptiles": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "hoek": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", - "sntp": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz" - } - }, - "hiredis": { - "version": "https://registry.npmjs.org/hiredis/-/hiredis-0.5.0.tgz", - "integrity": "sha1-2wOpi+zXAD0TwmAEOs7s+s31m4c=", - "requires": { - "bindings": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", - "nan": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz" - } - }, - "history": { - "version": "https://registry.npmjs.org/history/-/history-3.3.0.tgz", - "integrity": "sha1-/O3M6PEpdTcVRdc1RhAzV5ptrpw=", - "requires": { - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "query-string": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "warning": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz" - } - }, - "hoek": { - "version": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", - "integrity": "sha1-ctnQdU9/4lyi0BrY+PmpRJqJUm0=" - }, - "hoist-non-react-statics": { - "version": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" - }, - "hosted-git-info": { - "version": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", - "integrity": "sha1-bWDjSzq7yDEwYsO3mO+NkBoHrzw=" - }, - "http-signature": { - "version": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "jsprim": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "sshpk": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz" - } - }, - "humanize-duration": { - "version": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.10.1.tgz", - "integrity": "sha512-FHD+u5OKj8TSsSdMHJxSCC78N5Rt4ecil6sWvI+xPbUKhxvHmkKo/V8imbR1m2dXueZYLIl7PcSYX9i/oEiOIA==", - "dev": true - }, - "husky": { - "version": "https://registry.npmjs.org/husky/-/husky-0.14.3.tgz", - "integrity": "sha1-xp7XTi0neXaaF7qDmbVM4LY8EsM=", - "dev": true, - "requires": { - "is-ci": "https://registry.npmjs.org/is-ci/-/is-ci-1.0.10.tgz", - "normalize-path": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz", - "strip-indent": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz" - }, - "dependencies": { - "strip-indent": { - "version": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", - "dev": true - } - } - }, - "iconv-lite": { - "version": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha1-90aPYBNfXl2tM5nAqBvpoWA6CCs=" - }, - "icss-replace-symbols": { - "version": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, - "ignore": { - "version": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", - "integrity": "sha1-YSKJv7PCIOGGpYEYYY1b6MG6sCE=", - "dev": true - }, - "immutability-helper": { - "version": "https://registry.npmjs.org/immutability-helper/-/immutability-helper-2.4.0.tgz", - "integrity": "sha512-rW/L/56ZMo9NStMK85kFrUFFGy4NeJbCdhfrDHIZrFfxYtuwuxD+dT3mWMcdmrNO61hllc60AeGglCRhfZ1dZw==", - "requires": { - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz" - } - }, - "imurmurhash": { - "version": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "in-publish": { - "version": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", - "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=" - }, - "indent-string": { - "version": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "requires": { - "repeating": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" - } - }, - "indexes-of": { - "version": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", - "dev": true - }, - "inflight": { - "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } - }, - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - }, - "inquirer": { - "version": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha1-ndLyrXZdyrH/BEO0kUQqILoifck=", - "dev": true, - "requires": { - "ansi-escapes": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "cli-cursor": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "cli-width": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "external-editor": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", - "figures": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "mute-stream": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "run-async": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "rx-lite": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "rx-lite-aggregates": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" - }, - "dependencies": { - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + }, + "espree": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.2.tgz", + "integrity": "sha512-sadKeYwaR/aJ3stC2CdvgXu1T16TdYN+qwCpcWbMnGJ8s0zNWemzrvb2GbD4OhmJ/fwpJjudThAlLobGbWZbCQ==", + "dev": true, + "requires": { + "acorn": "5.3.0", + "acorn-jsx": "3.0.1" + } + }, + "esprima": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", "dev": true }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + "esquery": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", + "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "estraverse": "4.2.0" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "esrecurse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", + "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "estraverse": "4.2.0", + "object-assign": "4.1.1" } }, - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "estraverse": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", + "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", "dev": true }, - "string-width": { - "version": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true + }, + "external-editor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", + "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", "dev": true, "requires": { - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" + "chardet": "0.4.2", + "iconv-lite": "0.4.19", + "tmp": "0.0.33" } }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "fast-deep-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", + "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", + "dev": true + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", + "dev": true + }, + "fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", + "dev": true + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + "escape-string-regexp": "1.0.5" } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "file-entry-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", + "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "flat-cache": "1.3.0", + "object-assign": "4.1.1" } - } - } - }, - "intl-format-cache": { - "version": "https://registry.npmjs.org/intl-format-cache/-/intl-format-cache-2.0.5.tgz", - "integrity": "sha1-tITO/Lk1PzdPJd44mjzuoa8Y18k=" - }, - "intl-messageformat": { - "version": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-2.2.0.tgz", - "integrity": "sha1-NFvNRt5jC3aDMwwuUhd/9eq0hPw=", - "requires": { - "intl-messageformat-parser": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz" - } - }, - "intl-messageformat-parser": { - "version": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz", - "integrity": "sha1-tD1FqXRoytvkQzHXS7Ho3qRPwHU=" - }, - "intl-relativeformat": { - "version": "https://registry.npmjs.org/intl-relativeformat/-/intl-relativeformat-2.1.0.tgz", - "integrity": "sha1-AQ8RBYAiUfQKxH0OPhogE0iiVd8=", - "requires": { - "intl-messageformat": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-2.2.0.tgz" - } - }, - "invariant": { - "version": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", - "requires": { - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz" - } - }, - "invert-kv": { - "version": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" - }, - "is-arrayish": { - "version": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" - }, - "is-buffer": { - "version": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" - }, - "is-builtin-module": { - "version": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "requires": { - "builtin-modules": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz" - } - }, - "is-callable": { - "version": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", - "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", - "dev": true - }, - "is-ci": { - "version": "https://registry.npmjs.org/is-ci/-/is-ci-1.0.10.tgz", - "integrity": "sha1-9zkzayYyNlBhqdSCcM1WrjNpMY4=", - "dev": true, - "requires": { - "ci-info": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.1.tgz" - } - }, - "is-date-object": { - "version": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true - }, - "is-extglob": { - "version": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-finite": { - "version": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "requires": { - "number-is-nan": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" - } - }, - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "requires": { - "number-is-nan": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" - } - }, - "is-glob": { - "version": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, - "requires": { - "is-extglob": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - } - }, - "is-obj": { - "version": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", - "dev": true - }, - "is-object": { - "version": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", - "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" - }, - "is-path-cwd": { - "version": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true - }, - "is-path-in-cwd": { - "version": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", - "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", - "dev": true, - "requires": { - "is-path-inside": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" - } - }, - "is-path-inside": { - "version": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", - "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", - "dev": true, - "requires": { - "path-is-inside": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" - } - }, - "is-plain-obj": { - "version": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" - }, - "is-promise": { - "version": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, - "is-regex": { - "version": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "requires": { - "has": "https://registry.npmjs.org/has/-/has-1.0.1.tgz" - } - }, - "is-regexp": { - "version": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", - "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", - "dev": true - }, - "is-resolvable": { - "version": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", - "integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=", - "dev": true, - "requires": { - "tryit": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz" - } - }, - "is-retry-allowed": { - "version": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" - }, - "is-stream": { - "version": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" - }, - "is-symbol": { - "version": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true - }, - "is-typedarray": { - "version": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" - }, - "is-utf8": { - "version": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" - }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" - }, - "isexe": { - "version": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" - }, - "isomorphic-fetch": { - "version": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", - "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", - "requires": { - "node-fetch": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "whatwg-fetch": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz" - } - }, - "isstream": { - "version": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" - }, - "isurl": { - "version": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", - "integrity": "sha1-sn9PSfPNqj6kSgpbfzRi5u3DnWc=", - "requires": { - "has-to-string-tag-x": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", - "is-object": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz" - } - }, - "jasmine": { - "version": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", - "dev": true, - "requires": { - "exit": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "jasmine-core": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz" - } - }, - "jasmine-core": { - "version": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", - "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", - "dev": true - }, - "jest-get-type": { - "version": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-21.2.0.tgz", - "integrity": "sha1-9jdqudtLYNgeOfMHScbEZvQNSiM=", - "dev": true - }, - "jest-validate": { - "version": "https://registry.npmjs.org/jest-validate/-/jest-validate-21.2.1.tgz", - "integrity": "sha1-zAy8plPNVJN7pPKhEXlndFMN08c=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "jest-get-type": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-21.2.0.tgz", - "leven": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "pretty-format": "https://registry.npmjs.org/pretty-format/-/pretty-format-21.2.1.tgz" - }, - "dependencies": { - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + }, + "flat-cache": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", + "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "circular-json": "0.3.3", + "del": "2.2.2", + "graceful-fs": "4.1.11", + "write": "0.2.1" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "functional-red-black-tree": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "dev": true + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "globals": { + "version": "9.18.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", + "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", + "dev": true + }, + "globby": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", + "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "array-union": "1.0.2", + "arrify": "1.0.1", + "glob": "7.1.2", + "object-assign": "4.1.1", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" } - } - } - }, - "js-base64": { - "version": "https://registry.npmjs.org/js-base64/-/js-base64-2.3.2.tgz", - "integrity": "sha1-p5qSNmY3K1gPjif1GEXG9+j7+68=" - }, - "js-tokens": { - "version": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" - }, - "js-yaml": { - "version": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", - "integrity": "sha1-LnhEFka9RoLpY/IrbpKCPDCcYtw=", - "dev": true, - "requires": { - "argparse": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", - "esprima": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz" - } - }, - "jsbn": { - "version": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "optional": true - }, - "jschardet": { - "version": "https://registry.npmjs.org/jschardet/-/jschardet-1.6.0.tgz", - "integrity": "sha1-x9GnHtz/KDnbL57DD8XV69PBpng=", - "dev": true - }, - "jsesc": { - "version": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - }, - "json-schema": { - "version": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" - }, - "json-schema-traverse": { - "version": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" - }, - "json-stable-stringify": { - "version": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "requires": { - "jsonify": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" - } - }, - "json-stringify-safe": { - "version": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" - }, - "jsonify": { - "version": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true - }, - "jsprim": { - "version": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "json-schema": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "verror": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" - } - }, - "jsx-ast-utils": { - "version": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz", - "integrity": "sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE=", - "dev": true - }, - "junit-report-builder": { - "version": "https://registry.npmjs.org/junit-report-builder/-/junit-report-builder-1.2.0.tgz", - "integrity": "sha1-aJfM1e49gFGRpL5vEse+hQ5QwNY=", - "dev": true, - "requires": { - "date-format": "https://registry.npmjs.org/date-format/-/date-format-0.0.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "xmlbuilder": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-2.6.5.tgz" - }, - "dependencies": { - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", "dev": true }, - "xmlbuilder": { - "version": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-2.6.5.tgz", - "integrity": "sha1-b/etYPty0idk8AehZLd/K/FABSY=", + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz" + "ansi-regex": "2.1.1" } - } - } - }, - "lazystream": { - "version": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", - "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", - "dev": true, - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - } - }, - "lcid": { - "version": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "requires": { - "invert-kv": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz" - } - }, - "leven": { - "version": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true - }, - "levn": { - "version": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, - "requires": { - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "type-check": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" - } - }, - "line-height": { - "version": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz", - "integrity": "sha1-SxIF7d4YKHKl76PI9iCzGHqcVMk=", - "requires": { - "computed-style": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz" - } - }, - "lint-staged": { - "version": "https://registry.npmjs.org/lint-staged/-/lint-staged-4.3.0.tgz", - "integrity": "sha1-7Qd5rZpCwNxiuzJE5SKHC0ESWHk=", - "dev": true, - "requires": { - "app-root-path": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "commander": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "cosmiconfig": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-1.1.0.tgz", - "execa": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", - "is-glob": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "jest-validate": "https://registry.npmjs.org/jest-validate/-/jest-validate-21.2.1.tgz", - "listr": "https://registry.npmjs.org/listr/-/listr-0.12.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "log-symbols": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.1.0.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "npm-which": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", - "p-map": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "staged-git-files": "https://registry.npmjs.org/staged-git-files/-/staged-git-files-0.0.4.tgz", - "stringify-object": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.2.1.tgz" - }, - "dependencies": { - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", + "dev": true + }, + "ignore": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.7.tgz", + "integrity": "sha512-YGG3ejvBNHRqu0559EOxxNFihD0AjpvHlC/pdGKd3X3ofe+CoJkYazwNJYTNebqpPKN+VVQbh4ZFn1DivMNuHA==", + "dev": true + }, + "imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "once": "1.4.0", + "wrappy": "1.0.2" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "inquirer": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "ansi-escapes": "3.0.0", + "chalk": "2.3.0", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "2.1.0", + "figures": "2.0.0", + "lodash": "4.17.4", + "mute-stream": "0.0.7", + "run-async": "2.3.0", + "rx-lite": "4.0.8", + "rx-lite-aggregates": "4.0.8", + "string-width": "2.1.1", + "strip-ansi": "4.0.0", + "through": "2.3.8" } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "is-path-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", + "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", + "dev": true + }, + "is-path-in-cwd": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", + "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "is-path-inside": "1.0.1" } - } - } - }, - "listr": { - "version": "https://registry.npmjs.org/listr/-/listr-0.12.0.tgz", - "integrity": "sha1-a84sD1YD+klYDqF81qAMwOX6RRo=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cli-truncate": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", - "figures": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "indent-string": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "is-promise": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "listr-silent-renderer": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", - "listr-update-renderer": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz", - "listr-verbose-renderer": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", - "log-symbols": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "log-update": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", - "ora": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz", - "p-map": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "rxjs": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.2.tgz", - "stream-to-observable": "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.1.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" - }, - "dependencies": { - "figures": { - "version": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + }, + "is-path-inside": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", + "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "path-is-inside": "1.0.2" } }, - "log-symbols": { - "version": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-resolvable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.1.tgz", + "integrity": "sha512-y5CXYbzvB3jTnWAZH1Nl7ykUWb6T3BcTs56HUruwBf8MhF56n1HWqhDWnVFo8GHrUPDgvUUNVhrc2U8W7iqz5g==", + "dev": true + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", + "dev": true + }, + "js-yaml": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", + "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", "dev": true, "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" + "argparse": "1.0.9", + "esprima": "4.0.0" } - } - } - }, - "listr-silent-renderer": { - "version": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", - "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=", - "dev": true - }, - "listr-update-renderer": { - "version": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz", - "integrity": "sha1-yoDhd5tOcCZoB+ju0a1qvjmFUPk=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cli-truncate": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", - "elegant-spinner": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", - "figures": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "indent-string": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "log-symbols": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "log-update": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" - }, - "dependencies": { - "figures": { - "version": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", "dev": true, "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "jsonify": "0.0.0" } }, - "indent-string": { - "version": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", "dev": true }, - "log-symbols": { - "version": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "dev": true, "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" + "prelude-ls": "1.1.2", + "type-check": "0.3.2" } - } - } - }, - "listr-verbose-renderer": { - "version": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", - "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cli-cursor": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "date-fns": "https://registry.npmjs.org/date-fns/-/date-fns-1.29.0.tgz", - "figures": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz" - }, - "dependencies": { - "cli-cursor": { - "version": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", "dev": true, "requires": { - "restore-cursor": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz" + "pseudomap": "1.0.2", + "yallist": "2.1.2" } }, - "figures": { - "version": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "mimic-fn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", + "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "brace-expansion": "1.1.8" } }, - "onetime": { - "version": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, - "restore-cursor": { - "version": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { - "exit-hook": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "onetime": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz" + "minimist": "0.0.8" } - } - } - }, - "load-json-file": { - "version": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "parse-json": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "strip-bom": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" - } - }, - "locate-path": { - "version": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "path-exists": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" - }, - "dependencies": { - "path-exists": { - "version": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true - } - } - }, - "lodash": { - "version": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" - }, - "lodash.assign": { - "version": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" - }, - "lodash.clonedeep": { - "version": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" - }, - "lodash.cond": { - "version": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz", - "integrity": "sha1-9HGh2khr5g9quVXRcRVSPdHSVdU=", - "dev": true - }, - "lodash.mergewith": { - "version": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz", - "integrity": "sha1-FQzwoWeR9ZA7iJHqsVRgknS96lU=" - }, - "log-symbols": { - "version": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.1.0.tgz", - "integrity": "sha1-81+mDieIMrU43E3dy7R4pF0+O+Y=", - "dev": true, - "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz" - }, - "dependencies": { - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "wrappy": "1.0.2" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "mimic-fn": "1.1.0" } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "optionator": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", + "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "deep-is": "0.1.3", + "fast-levenshtein": "2.0.6", + "levn": "0.3.0", + "prelude-ls": "1.1.2", + "type-check": "0.3.2", + "wordwrap": "1.0.0" } - } - } - }, - "log-update": { - "version": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", - "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", - "dev": true, - "requires": { - "ansi-escapes": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "cli-cursor": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz" - }, - "dependencies": { - "ansi-escapes": { - "version": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", "dev": true }, - "cli-cursor": { - "version": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "path-is-inside": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "restore-cursor": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz" + "pinkie": "2.0.4" } }, - "onetime": { - "version": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", + "dev": true + }, + "prelude-ls": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", + "dev": true + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "progress": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", + "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", + "dev": true + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "require-uncached": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", + "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "dev": true, + "requires": { + "caller-path": "0.1.0", + "resolve-from": "1.0.1" + } + }, + "resolve-from": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", + "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", "dev": true }, "restore-cursor": { - "version": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "exit-hook": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "onetime": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz" + "onetime": "2.0.1", + "signal-exit": "3.0.2" } - } - } - }, - "loose-envify": { - "version": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", - "requires": { - "js-tokens": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz" - } - }, - "loud-rejection": { - "version": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "requires": { - "currently-unhandled": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz" - } - }, - "lowercase-keys": { - "version": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", - "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" - }, - "lru-cache": { - "version": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", - "integrity": "sha1-Yi4y6CSItJJ5EUpPns9F581rulU=", - "requires": { - "pseudomap": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "yallist": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" - } - }, - "map-obj": { - "version": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" - }, - "material-colors": { - "version": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.5.tgz", - "integrity": "sha1-UpJZPmdUyxvMK5gDDk4Najr8nqE=" - }, - "meow": { - "version": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "requires": { - "camelcase-keys": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "decamelize": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "loud-rejection": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "map-obj": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "minimist": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "normalize-package-data": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "read-pkg-up": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "redent": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "trim-newlines": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz" - } - }, - "meteor-node-stubs": { - "version": "https://registry.npmjs.org/meteor-node-stubs/-/meteor-node-stubs-0.3.2.tgz", - "integrity": "sha1-LJIkqRGx5mwUHGoXsaPcktw4d5U=", - "requires": { - "assert": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", - "browserify-zlib": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "buffer": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "console-browserify": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "constants-browserify": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "crypto-browserify": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz", - "domain-browser": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", - "events": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "http-browserify": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", - "https-browserify": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", - "os-browserify": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz", - "path-browserify": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "process": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "querystring-es3": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "readable-stream": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502", - "stream-browserify": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "timers-browserify": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", - "tty-browserify": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "url": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "util": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "vm-browserify": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz" - }, - "dependencies": { - "asn1.js": { - "version": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz", - "integrity": "sha1-SLokC0WpKA6UdImQull9IWYX/UA=", + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" + "glob": "7.1.2" } }, - "assert": { - "version": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", - "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, "requires": { - "util": "https://registry.npmjs.org/util/-/util-0.10.3.tgz" + "is-promise": "2.1.0" } }, - "balanced-match": { - "version": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "rx-lite": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", + "dev": true }, - "Base64": { - "version": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", - "integrity": "sha1-ujpCMHCOGGcFBl5mur3Uw1z2ACg=" + "rx-lite-aggregates": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "dev": true, + "requires": { + "rx-lite": "4.0.8" + } }, - "base64-js": { - "version": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", - "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true }, - "bn.js": { - "version": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true }, - "brace-expansion": { - "version": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", - "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, "requires": { - "balanced-match": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "concat-map": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" + "shebang-regex": "1.0.0" } }, - "brorand": { - "version": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true }, - "browserify-aes": { - "version": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.0.tgz", - "integrity": "sha512-W2bIMLYoZ9oow7TyePpMJk9l9LY7O3R61a/68bVCDOtnJynnwe3ZeW2IzzSkrQnPKNdJrxVDn3ALZNisSBwb7g==", + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slice-ansi": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", + "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "dev": true, "requires": { - "buffer-xor": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "is-fullwidth-code-point": "2.0.0" } }, - "browserify-cipher": { - "version": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", - "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, "requires": { - "browserify-aes": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.0.tgz", - "browserify-des": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" } }, - "browserify-des": { - "version": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", - "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true, "requires": { - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "des.js": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "safe-buffer": "5.1.1" } }, - "browserify-rsa": { - "version": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz" + "ansi-regex": "3.0.0" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + } } }, - "browserify-sign": { - "version": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + }, + "table": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", + "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "browserify-rsa": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "elliptic": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "parse-asn1": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz" + "ajv": "5.5.2", + "ajv-keywords": "2.1.1", + "chalk": "2.3.0", + "lodash": "4.17.4", + "slice-ansi": "1.0.0", + "string-width": "2.1.1" } }, - "browserify-zlib": { - "version": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", - "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "dev": true + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, "requires": { - "pako": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz" + "os-tmpdir": "1.0.2" } }, - "buffer": { - "version": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "type-check": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", + "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", + "dev": true, "requires": { - "base64-js": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", - "ieee754": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" + "prelude-ls": "1.1.2" } }, - "buffer-xor": { - "version": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + "typedarray": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true }, - "cipher-base": { - "version": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "isexe": "2.0.0" } }, - "concat-map": { - "version": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true }, - "console-browserify": { - "version": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "write": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", + "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "dev": true, "requires": { - "date-now": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz" + "mkdirp": "0.5.1" } }, - "constants-browserify": { - "version": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } + } + }, + "eslint-config-airbnb": { + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-16.1.0.tgz", + "integrity": "sha512-zLyOhVWhzB/jwbz7IPSbkUuj7X2ox4PHXTcZkEmDqTvd0baJmJyuxlFPDlZOE/Y5bC+HQRaEkT3FoHo9wIdRiw==", + "dev": true, + "requires": { + "eslint-config-airbnb-base": "12.1.0" + } + }, + "eslint-config-airbnb-base": { + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.1.0.tgz", + "integrity": "sha512-/vjm0Px5ZCpmJqnjIzcFb9TKZrKWz0gnuG/7Gfkt0Db1ELJR51xkZth+t14rYdqWgX836XbuxtArbIHlVhbLBA==", + "dev": true, + "requires": { + "eslint-restricted-globals": "0.1.1" + }, + "dependencies": { + "eslint-restricted-globals": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz", + "integrity": "sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=", + "dev": true + } + } + }, + "eslint-plugin-import": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.8.0.tgz", + "integrity": "sha512-Rf7dfKJxZ16QuTgVv1OYNxkZcsu/hULFnC+e+w0Gzi6jMC3guQoWQgxYxc54IDRinlb6/0v5z/PxxIKmVctN+g==", + "dev": true, + "requires": { + "builtin-modules": "1.1.1", + "contains-path": "0.1.0", + "debug": "2.6.9", + "doctrine": "1.5.0", + "eslint-import-resolver-node": "0.3.2", + "eslint-module-utils": "2.1.1", + "has": "1.0.1", + "lodash.cond": "4.5.2", + "minimatch": "3.0.4", + "read-pkg-up": "2.0.0" + }, + "dependencies": { + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true }, - "create-ecdh": { - "version": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", - "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "elliptic": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz" + "balanced-match": "1.0.0", + "concat-map": "0.0.1" } }, - "create-hash": { - "version": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "contains-path": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", + "dev": true + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, "requires": { - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "ripemd160": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "sha.js": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz" + "ms": "2.0.0" } }, - "create-hmac": { - "version": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", + "doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, "requires": { - "cipher-base": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "ripemd160": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "sha.js": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz" + "esutils": "2.0.2", + "isarray": "1.0.0" } }, - "crypto-browserify": { - "version": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz", - "integrity": "sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ==", + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "dev": true, "requires": { - "browserify-cipher": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", - "browserify-sign": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "create-ecdh": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "diffie-hellman": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "pbkdf2": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", - "public-encrypt": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz" + "is-arrayish": "0.2.1" } }, - "date-now": { - "version": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" - }, - "des.js": { - "version": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "eslint-import-resolver-node": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", + "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" + "debug": "2.6.9", + "resolve": "1.5.0" } }, - "diffie-hellman": { - "version": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", - "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", + "eslint-module-utils": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.1.1.tgz", + "integrity": "sha512-jDI/X5l/6D1rRD/3T43q8Qgbls2nq5km5KSqiwlyUbGo5+04fXhMKdCPhjwbqAa6HXWaMxj8Q4hQDIh7IadJQw==", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "miller-rabin": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz" + "debug": "2.6.9", + "pkg-dir": "1.0.0" } }, - "domain-browser": { - "version": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", - "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true }, - "elliptic": { - "version": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "brorand": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "hash.js": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "hmac-drbg": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "minimalistic-crypto-utils": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz" + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" } }, - "events": { - "version": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, - "evp_bytestokey": { - "version": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "dev": true, "requires": { - "md5.js": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "function-bind": "1.1.1" } }, - "fs.realpath": { - "version": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==", + "dev": true }, - "glob": { - "version": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "integrity": "sha1-wZyd+aAocC1nhhI4SmVSQExjbRU=", + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "dev": true, "requires": { - "fs.realpath": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "inflight": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "path-is-absolute": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" + "builtin-modules": "1.1.1" } }, - "hash-base": { - "version": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", - "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" } }, - "hash.js": { - "version": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz" + "p-locate": "2.0.0", + "path-exists": "3.0.0" }, "dependencies": { - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "dev": true } } }, - "hmac-drbg": { - "version": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "lodash.cond": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/lodash.cond/-/lodash.cond-4.5.2.tgz", + "integrity": "sha1-9HGh2khr5g9quVXRcRVSPdHSVdU=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "requires": { - "hash.js": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", - "minimalistic-assert": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "minimalistic-crypto-utils": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz" + "brace-expansion": "1.1.8" } }, - "http-browserify": { - "version": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", - "integrity": "sha1-M3la3nLfiKz7/TZ3PO/tp2RzWyA=", + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", + "dev": true + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "dev": true, "requires": { - "Base64": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.4.1", + "validate-npm-package-license": "3.0.1" } }, - "https-browserify": { - "version": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", - "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=" + "p-limit": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", + "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "dev": true, + "requires": { + "p-try": "1.0.0" + } }, - "ieee754": { - "version": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", - "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" + "p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "requires": { + "p-limit": "1.2.0" + } }, - "indexof": { - "version": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.1" + } }, - "inflight": { - "version": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "dev": true, "requires": { - "once": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "pinkie-promise": "2.0.1" } }, - "inherits": { - "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + "path-parse": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", + "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", + "dev": true }, - "isarray": { - "version": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "2.3.0" + } }, - "md5.js": { - "version": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "pkg-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", + "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", + "dev": true, + "requires": { + "find-up": "1.1.2" + } + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, "requires": { - "hash-base": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "find-up": "2.1.0", + "read-pkg": "2.0.0" }, "dependencies": { - "hash-base": { - "version": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "locate-path": "2.0.0" } } } }, - "miller-rabin": { - "version": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "resolve": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", + "integrity": "sha512-hgoSGrc3pjzAPHNBg+KnFcK2HwlHTs/YrAGUr6qgTVUZmXv1UEXXl0bZNBKMA9fud6lRYFdPGz0xXxycPzmmiw==", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "brorand": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz" + "path-parse": "1.0.5" } }, - "minimalistic-assert": { - "version": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", - "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" - }, - "minimalistic-crypto-utils": { - "version": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", + "dev": true }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "dev": true, "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz" + "spdx-license-ids": "1.2.2" } }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=", + "dev": true + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=", + "dev": true + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "dev": true, + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + } + } + }, + "eslint-plugin-jsx-a11y": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.3.tgz", + "integrity": "sha1-VFg9GuRCSDFi4EDhPMMYZUZRAOU=", + "dev": true, + "requires": { + "aria-query": "0.7.0", + "array-includes": "3.0.3", + "ast-types-flow": "0.0.7", + "axobject-query": "0.1.0", + "damerau-levenshtein": "1.0.4", + "emoji-regex": "6.5.1", + "jsx-ast-utils": "2.0.1" + }, + "dependencies": { + "aria-query": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-0.7.0.tgz", + "integrity": "sha512-/r2lHl09V3o74+2MLKEdewoj37YZqiQZnfen1O4iNlrOjUgeKuu1U2yF3iKh6HJxqF+OXkLMfQv65Z/cvxD6vA==", + "dev": true, "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" + "ast-types-flow": "0.0.7" } }, - "os-browserify": { - "version": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz", - "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" + "array-includes": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", + "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "dev": true, + "requires": { + "define-properties": "1.1.2", + "es-abstract": "1.10.0" + } }, - "pako": { - "version": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", - "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + "ast-types-flow": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", + "dev": true }, - "parse-asn1": { - "version": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", - "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", + "axobject-query": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-0.1.0.tgz", + "integrity": "sha1-YvWdvFnJ+SQnWco0mWDnov48NsA=", + "dev": true, "requires": { - "asn1.js": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz", - "browserify-aes": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.0.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "evp_bytestokey": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "pbkdf2": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz" + "ast-types-flow": "0.0.7" } }, - "path-browserify": { - "version": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" - }, - "path-is-absolute": { - "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "damerau-levenshtein": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz", + "integrity": "sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=", + "dev": true }, - "pbkdf2": { - "version": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", - "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, "requires": { - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "create-hmac": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", - "ripemd160": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "sha.js": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz" + "foreach": "2.0.5", + "object-keys": "1.0.11" } }, - "process": { - "version": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + "emoji-regex": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.5.1.tgz", + "integrity": "sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==", + "dev": true }, - "public-encrypt": { - "version": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", - "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", + "es-abstract": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", + "integrity": "sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ==", + "dev": true, "requires": { - "bn.js": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "browserify-rsa": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "create-hash": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", - "parse-asn1": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", - "randombytes": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz" + "es-to-primitive": "1.1.1", + "function-bind": "1.1.1", + "has": "1.0.1", + "is-callable": "1.1.3", + "is-regex": "1.0.4" } }, - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, + "requires": { + "is-callable": "1.1.3", + "is-date-object": "1.0.1", + "is-symbol": "1.0.1" + } }, - "querystring": { - "version": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true }, - "querystring-es3": { - "version": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, - "randombytes": { - "version": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz", - "integrity": "sha512-8T7Zn1AhMsQ/HI1SjcCfT/t4ii3eAqco3yOcSzS4mozsOz69lHLsoMXmF9nZgnFanYscnSlUSgs8uZyKzpE6kg==", + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "dev": true, "requires": { - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "function-bind": "1.1.1" } }, - "readable-stream": { - "version": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502", + "is-callable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", + "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", + "dev": true + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, "requires": { - "inherits": "2.0.3", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" - } + "has": "1.0.1" } }, - "rimraf": { - "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha1-LtgVDSShbqhlHm1u8PR8QVjOejY=", + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true + }, + "jsx-ast-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", + "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", + "dev": true, "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz" + "array-includes": "3.0.3" } }, - "ripemd160": { - "version": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", - "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", + "dev": true + } + } + }, + "eslint-plugin-react": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.4.0.tgz", + "integrity": "sha512-tvjU9u3VqmW2vVuYnE8Qptq+6ji4JltjOjJ9u7VAOxVYkUkyBZWRvNYKbDv5fN+L6wiA+4we9+qQahZ0m63XEA==", + "dev": true, + "requires": { + "doctrine": "2.1.0", + "has": "1.0.1", + "jsx-ast-utils": "2.0.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "array-includes": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", + "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "dev": true, "requires": { - "hash-base": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "define-properties": "1.1.2", + "es-abstract": "1.10.0" } }, - "safe-buffer": { - "version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" - }, - "sha.js": { - "version": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", - "integrity": "sha512-G8zektVqbiPHrylgew9Zg1VRB1L/DtXNUVAM6q4QLy8NE3qtHlFXTf8VLL4k1Yl6c7NMjtZUTdXV+X44nFaT6A==", + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "foreach": "2.0.5", + "object-keys": "1.0.11" } }, - "stream-browserify": { - "version": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "readable-stream": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502" + "esutils": "2.0.2" } }, - "string_decoder": { - "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "es-abstract": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.10.0.tgz", + "integrity": "sha512-/uh/DhdqIOSkAWifU+8nG78vlQxdLckUdI/sPgy0VhuXi2qJ7T8czBmqIYtLQVpCIFYafChnsRsB5pyb1JdmCQ==", + "dev": true, "requires": { - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" + "es-to-primitive": "1.1.1", + "function-bind": "1.1.1", + "has": "1.0.1", + "is-callable": "1.1.3", + "is-regex": "1.0.4" } }, - "timers-browserify": { - "version": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", - "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", + "es-to-primitive": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", + "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", + "dev": true, "requires": { - "process": "https://registry.npmjs.org/process/-/process-0.11.10.tgz" + "is-callable": "1.1.3", + "is-date-object": "1.0.1", + "is-symbol": "1.0.1" } }, - "tty-browserify": { - "version": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" + "esutils": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", + "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", + "dev": true }, - "url": { - "version": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "has": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", + "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", + "dev": true, "requires": { - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "querystring": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" - }, - "dependencies": { - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" - } + "function-bind": "1.1.1" } }, - "util": { - "version": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "is-callable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", + "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", + "dev": true + }, + "is-date-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", + "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", + "dev": true + }, + "is-regex": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", + "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", + "dev": true, "requires": { - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz" + "has": "1.0.1" } }, - "vm-browserify": { - "version": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "is-symbol": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", + "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", + "dev": true + }, + "jsx-ast-utils": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", + "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", + "dev": true, "requires": { - "indexof": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz" + "array-includes": "3.0.3" } }, - "wrappy": { - "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", + "dev": true } } }, - "mime-db": { - "version": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", - "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + "eventemitter2": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-4.1.2.tgz", + "integrity": "sha1-DhqEd6+CGm7zmVsxG/dMI6UkfxU=" }, - "mime-types": { - "version": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "flat": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/flat/-/flat-4.0.0.tgz", + "integrity": "sha512-ji/WMv2jdsE+LaznpkIF9Haax0sdpTBozrz/Dtg4qSRMfbs8oVg4ypJunIRYPiMLvH/ed6OflXbnbTIKJhtgeg==", "requires": { - "mime-db": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz" + "is-buffer": "1.1.6" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + } } }, - "mimic-fn": { - "version": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", - "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", + "has-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", "dev": true }, - "mimic-response": { - "version": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz", - "integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4=" - }, - "minimatch": { - "version": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha1-UWbihkV/AzBgZL5Ul+jbsMPTIIM=", - "requires": { - "brace-expansion": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz" - } - }, - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "mkdirp": { - "version": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "hiredis": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/hiredis/-/hiredis-0.5.0.tgz", + "integrity": "sha1-2wOpi+zXAD0TwmAEOs7s+s31m4c=", "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz" + "bindings": "1.3.0", + "nan": "2.8.0" }, "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "bindings": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz", + "integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==" + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" } } }, - "ms": { - "version": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" - }, - "mute-stream": { - "version": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", - "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=" - }, - "natural-compare": { - "version": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true - }, - "next-tick": { - "version": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" - }, - "node-fetch": { - "version": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", - "integrity": "sha1-mA9vcthSEaU0fGsrwYxbhMPrR+8=", - "requires": { - "encoding": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", - "is-stream": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" - } - }, - "node-gyp": { - "version": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", - "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", + "history": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/history/-/history-3.3.0.tgz", + "integrity": "sha1-/O3M6PEpdTcVRdc1RhAzV5ptrpw=", "requires": { - "fstream": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "minimatch": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "nopt": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "npmlog": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "osenv": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", - "request": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", - "rimraf": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "tar": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "query-string": "4.3.4", + "warning": "3.0.0" }, "dependencies": { - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "requires": { + "object-assign": "4.1.1", + "strict-uri-encode": "1.1.0" + } + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "1.3.1" + } } } }, - "node-sass": { - "version": "https://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz", - "integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=", - "requires": { - "async-foreach": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cross-spawn": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "gaze": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "in-publish": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", - "lodash.assign": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", - "lodash.clonedeep": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "lodash.mergewith": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz", - "meow": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "nan": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", - "node-gyp": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", - "npmlog": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "request": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", - "sass-graph": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "stdout-stream": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz" - } - }, - "nopt": { - "version": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "requires": { - "abbrev": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz" - } - }, - "normalize-package-data": { - "version": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha1-EvlaMH1YNSB1oEkHuErIvpisAS8=", - "requires": { - "hosted-git-info": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", - "is-builtin-module": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "semver": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "validate-npm-package-license": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz" - } - }, - "normalize-path": { - "version": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz", - "integrity": "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=", - "dev": true - }, - "normalize-range": { - "version": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true - }, - "npm-install-package": { - "version": "https://registry.npmjs.org/npm-install-package/-/npm-install-package-2.1.0.tgz", - "integrity": "sha1-1+/jz816sAYUuJbqUxGdyaslkSU=", - "dev": true - }, - "npm-path": { - "version": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.3.tgz", - "integrity": "sha1-Fc/04ciaONp39W9gVbJPl137K74=", - "dev": true, - "requires": { - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" - } - }, - "npm-run-path": { - "version": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", - "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", - "dev": true, - "requires": { - "path-key": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" - } - }, - "npm-which": { - "version": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", - "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", - "dev": true, - "requires": { - "commander": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", - "npm-path": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.3.tgz", - "which": "https://registry.npmjs.org/which/-/which-1.3.0.tgz" - } - }, - "npmlog": { - "version": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha1-CKfyqL9zRgR3mp76StXMcXq7lUs=", - "requires": { - "are-we-there-yet": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "console-control-strings": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "gauge": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "set-blocking": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" - } - }, - "num2fraction": { - "version": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "number-is-nan": { - "version": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" - }, - "oauth-sign": { - "version": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" - }, - "object-assign": { - "version": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" - }, - "object-keys": { - "version": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", - "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", - "dev": true - }, - "object.assign": { - "version": "https://registry.npmjs.org/object.assign/-/object.assign-4.0.4.tgz", - "integrity": "sha1-scnMBE7xuf5jYG/BQau7MuFHMMw=", - "dev": true, - "requires": { - "define-properties": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "function-bind": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "object-keys": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz" - } - }, - "once": { - "version": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "requires": { - "wrappy": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" - } - }, - "onetime": { - "version": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, - "requires": { - "mimic-fn": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz" - } - }, - "optimist": { - "version": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "husky": { + "version": "0.14.3", + "resolved": "https://registry.npmjs.org/husky/-/husky-0.14.3.tgz", + "integrity": "sha512-e21wivqHpstpoiWA/Yi8eFti8E+sQDSS53cpJsPptPs295QTOQR0ZwnHo2TXy1XOpZFD9rPOd3NpmqTK6uMLJA==", "dev": true, "requires": { - "minimist": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "wordwrap": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz" + "is-ci": "1.1.0", + "normalize-path": "1.0.0", + "strip-indent": "2.0.0" }, "dependencies": { - "minimist": { - "version": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz", - "integrity": "sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=", + "ci-info": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.2.tgz", + "integrity": "sha512-uTGIPNx/nSpBdsF6xnseRXLLtfr9VLqkz8ZqHXr3Y7b6SftyRxBGjwMtJj1OhNbmlc1wZzLNAlAcvyIiE8a6ZA==", "dev": true }, - "wordwrap": { - "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "is-ci": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", + "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "dev": true, + "requires": { + "ci-info": "1.1.2" + } + }, + "normalize-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz", + "integrity": "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=", + "dev": true + }, + "strip-indent": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", "dev": true } } }, - "optionator": { - "version": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", - "dev": true, - "requires": { - "deep-is": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "fast-levenshtein": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "levn": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "type-check": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "wordwrap": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" - } - }, - "ora": { - "version": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz", - "integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=", - "dev": true, + "immutability-helper": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/immutability-helper/-/immutability-helper-2.4.0.tgz", + "integrity": "sha512-rW/L/56ZMo9NStMK85kFrUFFGy4NeJbCdhfrDHIZrFfxYtuwuxD+dT3mWMcdmrNO61hllc60AeGglCRhfZ1dZw==", "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cli-cursor": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "cli-spinners": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "invariant": "2.2.2" }, "dependencies": { - "cli-cursor": { - "version": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", - "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", - "dev": true, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", "requires": { - "restore-cursor": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz" + "loose-envify": "1.3.1" } }, - "onetime": { - "version": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", - "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", - "dev": true + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" }, - "restore-cursor": { - "version": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", - "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", - "dev": true, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", "requires": { - "exit-hook": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", - "onetime": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz" + "js-tokens": "3.0.2" } } } }, - "os-homedir": { - "version": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" - }, - "os-locale": { - "version": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "requires": { - "lcid": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz" - } - }, - "os-tmpdir": { - "version": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" - }, - "osenv": { - "version": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", - "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", - "requires": { - "os-homedir": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "os-tmpdir": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" - } - }, - "p-cancelable": { - "version": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", - "integrity": "sha1-ueEjgAvOu3rBOkeb4ZW1B7mNMPo=" - }, - "p-finally": { - "version": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" - }, - "p-limit": { - "version": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz", - "integrity": "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=", - "dev": true - }, - "p-locate": { - "version": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz" - } - }, - "p-map": { - "version": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha1-5OlPMR6rvIYzoeeZCBZfyiYkG2s=", - "dev": true - }, - "p-timeout": { - "version": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.0.tgz", - "integrity": "sha1-mCD5lDTFgXhotPNICe5SkWYNW2w=", - "requires": { - "p-finally": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" - } - }, - "parse-json": { - "version": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "requires": { - "error-ex": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz" - } - }, - "path-exists": { - "version": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "requires": { - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "path-is-absolute": { - "version": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" - }, - "path-is-inside": { - "version": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true - }, - "path-key": { - "version": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-parse": { - "version": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", - "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", - "dev": true - }, - "path-type": { - "version": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "requires": { - "graceful-fs": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "pify": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "pinkie-promise": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" - } - }, - "pathval": { - "version": "https://registry.npmjs.org/pathval/-/pathval-1.1.0.tgz", - "integrity": "sha1-uULm1L3mUwBe9rcTYd74cn0GReA=", - "dev": true - }, - "performance-now": { - "version": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" - }, - "pify": { - "version": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" - }, - "pinkie": { - "version": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" - }, - "pinkie-promise": { - "version": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", - "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "requires": { - "pinkie": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" - } - }, - "pkg-dir": { - "version": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, - "requires": { - "find-up": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" - } - }, - "pluralize": { - "version": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha1-KYuJ34uTsCIdv0Ia0rGx6iP8Z3c=", - "dev": true - }, - "popper.js": { - "version": "1.12.9", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz", - "integrity": "sha1-DfvC3/lsRRuzMu3Pz6r1ZtMx1bM=", - "dev": true + "inherits": { + "version": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, - "postcss": { - "version": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "integrity": "sha1-ueyrTuAMids+yTEUW9lZC78/El8=", + "lint-staged": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-4.3.0.tgz", + "integrity": "sha512-C/Zxslg0VRbsxwmCu977iIs+QyrmW2cyRCPUV5NDFYOH/jtRFHH8ch7ua2fH0voI/nVC3Tpg7DykfgMZySliKw==", "dev": true, "requires": { - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "app-root-path": "2.0.1", + "chalk": "2.3.0", + "commander": "2.12.2", + "cosmiconfig": "1.1.0", + "execa": "0.8.0", + "is-glob": "4.0.0", + "jest-validate": "21.2.1", + "listr": "0.12.0", + "lodash": "4.17.4", + "log-symbols": "2.1.0", + "minimatch": "3.0.4", + "npm-which": "3.0.1", + "p-map": "1.2.0", + "staged-git-files": "0.0.4", + "stringify-object": "3.2.1" }, "dependencies": { + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "app-root-path": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz", + "integrity": "sha1-zWLc+OT9WkF+/GZNLlsQZTxlG0Y=", + "dev": true + }, + "argparse": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", + "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", + "dev": true, + "requires": { + "sprintf-js": "1.0.3" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "balanced-match": "1.0.0", + "concat-map": "0.0.1" } }, "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" } }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha1-dHIq8y6WFOnCh6jQu95IteLxomM=", + "cli-cursor": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz", + "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=", + "dev": true, + "requires": { + "restore-cursor": "1.0.1" + } + }, + "cli-spinners": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz", + "integrity": "sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw=", "dev": true }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "cli-truncate": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", + "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "slice-ansi": "0.0.4", + "string-width": "1.0.2" } - } - } - }, - "postcss-modules-extract-imports": { - "version": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz", - "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", - "dev": true, - "requires": { - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz" - } - }, - "postcss-modules-local-by-default": { - "version": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "dev": true, - "requires": { - "css-selector-tokenizer": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz" - } - }, - "postcss-modules-scope": { - "version": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "dev": true, - "requires": { - "css-selector-tokenizer": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz" - } - }, - "postcss-modules-values": { - "version": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "dev": true, - "requires": { - "icss-replace-symbols": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz" - } - }, - "postcss-nested": { - "version": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-2.1.2.tgz", - "integrity": "sha1-BAVygfljH+9oSFf7ARm64E7eA8Y=", - "dev": true, - "requires": { - "postcss": "https://registry.npmjs.org/postcss/-/postcss-6.0.13.tgz", - "postcss-selector-parser": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz" - } - }, - "postcss-selector-parser": { - "version": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", - "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", - "dev": true, - "requires": { - "flatten": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "indexes-of": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", - "uniq": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz" - } - }, - "postcss-value-parser": { - "version": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", - "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", - "dev": true - }, - "prelude-ls": { - "version": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true - }, - "prepend-http": { - "version": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" - }, - "pretty-format": { - "version": "https://registry.npmjs.org/pretty-format/-/pretty-format-21.2.1.tgz", - "integrity": "sha1-rlQH888hBmzQEaobpfzntqLt2zY=", - "dev": true, - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz" - }, - "dependencies": { - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", "dev": true }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "color-name": "1.1.3" } - } - } - }, - "probe-image-size": { - "version": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-3.1.0.tgz", - "integrity": "sha1-50e+maDQqOUFiqcihUwkCSuS3WY=", - "requires": { - "any-promise": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", - "deepmerge": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz", - "got": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "next-tick": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "stream-parser": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz" - } - }, - "process-nextick-args": { - "version": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" - }, - "progress": { - "version": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", - "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=", - "dev": true - }, - "promise": { - "version": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", - "integrity": "sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=", - "requires": { - "asap": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz" + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "commander": { + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.12.2.tgz", + "integrity": "sha512-BFnaq5ZOGcDN7FlrtBT4xxkgIToalIIxwjxLWVJ8bGTpe1LroqMiqQXdA7ygc7CRvaYS+9zfPGFnJqFSayx+AA==", + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "cosmiconfig": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-1.1.0.tgz", + "integrity": "sha1-DeoPmATv37kp+7GxiOJVU+oFPTc=", + "dev": true, + "requires": { + "graceful-fs": "4.1.11", + "js-yaml": "3.10.0", + "minimist": "1.2.0", + "object-assign": "4.1.1", + "os-homedir": "1.0.2", + "parse-json": "2.2.0", + "pinkie-promise": "2.0.1", + "require-from-string": "1.2.1" + } + }, + "cross-spawn": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", + "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, + "requires": { + "lru-cache": "4.1.1", + "shebang-command": "1.2.0", + "which": "1.3.0" + } + }, + "date-fns": { + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.29.0.tgz", + "integrity": "sha512-lbTXWZ6M20cWH8N9S6afb0SBm6tMk+uUg6z3MqHPKE9atmsY3kJkTm8vKe93izJ2B2+q5MV990sM2CHgtAZaOw==", + "dev": true + }, + "elegant-spinner": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", + "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", + "dev": true + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "dev": true, + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "esprima": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", + "dev": true + }, + "execa": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz", + "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=", + "dev": true, + "requires": { + "cross-spawn": "5.1.0", + "get-stream": "3.0.0", + "is-stream": "1.1.0", + "npm-run-path": "2.0.2", + "p-finally": "1.0.0", + "signal-exit": "3.0.2", + "strip-eof": "1.0.0" + } + }, + "exit-hook": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz", + "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=", + "dev": true + }, + "figures": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "dev": true, + "requires": { + "escape-string-regexp": "1.0.5", + "object-assign": "4.1.1" + } + }, + "get-own-enumerable-property-symbols": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz", + "integrity": "sha512-TtY/sbOemiMKPRUDDanGCSgBYe7Mf0vbRsWnBZ+9yghpZ1MvcpSpuZFjHdEeY/LZjZy0vdLjS77L6HosisFiug==", + "dev": true + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "dev": true, + "requires": { + "repeating": "2.0.1" + } + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", + "dev": true + }, + "is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-glob": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", + "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", + "dev": true, + "requires": { + "is-extglob": "2.1.1" + } + }, + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true + }, + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", + "dev": true + }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", + "dev": true + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "jest-get-type": { + "version": "21.2.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-21.2.0.tgz", + "integrity": "sha512-y2fFw3C+D0yjNSDp7ab1kcd6NUYfy3waPTlD8yWkAtiocJdBRQqNoRqVfMNxgj+IjT0V5cBIHJO0z9vuSSZ43Q==", + "dev": true + }, + "jest-validate": { + "version": "21.2.1", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-21.2.1.tgz", + "integrity": "sha512-k4HLI1rZQjlU+EC682RlQ6oZvLrE5SCh3brseQc24vbZTxzT/k/3urar5QMCVgjadmSO7lECeGdc6YxnM3yEGg==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "jest-get-type": "21.2.0", + "leven": "2.1.0", + "pretty-format": "21.2.1" + } + }, + "js-yaml": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", + "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", + "dev": true, + "requires": { + "argparse": "1.0.9", + "esprima": "4.0.0" + } + }, + "leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", + "dev": true + }, + "listr": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/listr/-/listr-0.12.0.tgz", + "integrity": "sha1-a84sD1YD+klYDqF81qAMwOX6RRo=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "cli-truncate": "0.2.1", + "figures": "1.7.0", + "indent-string": "2.1.0", + "is-promise": "2.1.0", + "is-stream": "1.1.0", + "listr-silent-renderer": "1.1.1", + "listr-update-renderer": "0.2.0", + "listr-verbose-renderer": "0.4.1", + "log-symbols": "1.0.2", + "log-update": "1.0.2", + "ora": "0.2.3", + "p-map": "1.2.0", + "rxjs": "5.5.6", + "stream-to-observable": "0.1.0", + "strip-ansi": "3.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "dev": true, + "requires": { + "chalk": "1.1.3" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "listr-silent-renderer": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", + "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=", + "dev": true + }, + "listr-update-renderer": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz", + "integrity": "sha1-yoDhd5tOcCZoB+ju0a1qvjmFUPk=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "cli-truncate": "0.2.1", + "elegant-spinner": "1.0.1", + "figures": "1.7.0", + "indent-string": "3.2.0", + "log-symbols": "1.0.2", + "log-update": "1.0.2", + "strip-ansi": "3.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", + "dev": true + }, + "log-symbols": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "dev": true, + "requires": { + "chalk": "1.1.3" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "listr-verbose-renderer": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.1.tgz", + "integrity": "sha1-ggb0z21S3cWCfl/RSYng6WWTOjU=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "cli-cursor": "1.0.2", + "date-fns": "1.29.0", + "figures": "1.7.0" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "log-symbols": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.1.0.tgz", + "integrity": "sha512-zLeLrzMA1A2vRF1e/0Mo+LNINzi6jzBylHj5WqvQ/WK/5WCZt8si9SyN4p9llr/HRYvVR1AoXHRHl4WTHyQAzQ==", + "dev": true, + "requires": { + "chalk": "2.3.0" + } + }, + "log-update": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz", + "integrity": "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=", + "dev": true, + "requires": { + "ansi-escapes": "1.4.0", + "cli-cursor": "1.0.2" + } + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "dev": true, + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + }, + "npm-path": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/npm-path/-/npm-path-2.0.4.tgz", + "integrity": "sha512-IFsj0R9C7ZdR5cP+ET342q77uSRdtWOlWpih5eC+lu29tIDbNEgDbzgVJ5UFvYHWhxDZ5TFkJafFioO0pPQjCw==", + "dev": true, + "requires": { + "which": "1.3.0" + } + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, + "requires": { + "path-key": "2.0.1" + } + }, + "npm-which": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz", + "integrity": "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=", + "dev": true, + "requires": { + "commander": "2.12.2", + "npm-path": "2.0.4", + "which": "1.3.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true + }, + "onetime": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz", + "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=", + "dev": true + }, + "ora": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz", + "integrity": "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=", + "dev": true, + "requires": { + "chalk": "1.1.3", + "cli-cursor": "1.0.2", + "cli-spinners": "0.1.2", + "object-assign": "4.1.1" + }, + "dependencies": { + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "dev": true + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-map": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", + "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", + "dev": true + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "dev": true, + "requires": { + "error-ex": "1.3.1" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", + "dev": true + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "dev": true, + "requires": { + "pinkie": "2.0.4" + } + }, + "pretty-format": { + "version": "21.2.1", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-21.2.1.tgz", + "integrity": "sha512-ZdWPGYAnYfcVP8yKA3zFjCn8s4/17TeYH28MXuC8vTp0o21eXjbFGcOAXZEaDaOFJjc3h2qa7HQNHNshhvoh2A==", + "dev": true, + "requires": { + "ansi-regex": "3.0.0", + "ansi-styles": "3.2.0" + } + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "dev": true, + "requires": { + "is-finite": "1.0.2" + } + }, + "require-from-string": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", + "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", + "dev": true + }, + "restore-cursor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz", + "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=", + "dev": true, + "requires": { + "exit-hook": "1.1.1", + "onetime": "1.1.0" + } + }, + "rxjs": { + "version": "5.5.6", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.6.tgz", + "integrity": "sha512-v4Q5HDC0FHAQ7zcBX7T2IL6O5ltl1a2GX4ENjPXg6SjDY69Cmx9v4113C99a4wGF16ClPv5Z8mghuYorVkg/kg==", + "dev": true, + "requires": { + "symbol-observable": "1.0.1" + } + }, + "shebang-command": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", + "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, + "requires": { + "shebang-regex": "1.0.0" + } + }, + "shebang-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, + "slice-ansi": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "dev": true + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "staged-git-files": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/staged-git-files/-/staged-git-files-0.0.4.tgz", + "integrity": "sha1-15fhtVHKemOd7AI33G60u5vhfTU=", + "dev": true + }, + "stream-to-observable": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.1.0.tgz", + "integrity": "sha1-Rb8dny19wJvtgfHDB8Qw5ouEz/4=", + "dev": true + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "stringify-object": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.2.1.tgz", + "integrity": "sha512-jPcQYw/52HUPP8uOE4kkjxl5bB9LfHkKCTptIk3qw7ozP5XMIMlHMLjt00GGSwW6DJAf/njY5EU6Vpwl4LlBKQ==", + "dev": true, + "requires": { + "get-own-enumerable-property-symbols": "2.0.1", + "is-obj": "1.0.1", + "is-regexp": "1.0.0" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + } + } + }, + "strip-eof": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + }, + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, + "requires": { + "isexe": "2.0.0" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true + } } }, - "prop-types": { - "version": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", - "integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=", - "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "meteor-node-stubs": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/meteor-node-stubs/-/meteor-node-stubs-0.3.2.tgz", + "integrity": "sha512-l93SS/HutbqBRJODO2m7hup8cYI2acF5bB39+ZvP2BX8HMmCSCXeFH7v0sr4hD7zrVvHQA5UqS0pcDYKn0VM6g==", + "requires": { + "assert": "1.4.1", + "browserify-zlib": "0.1.4", + "buffer": "4.9.1", + "console-browserify": "1.1.0", + "constants-browserify": "1.0.0", + "crypto-browserify": "3.11.1", + "domain-browser": "1.1.7", + "events": "1.1.1", + "http-browserify": "1.7.0", + "https-browserify": "0.0.1", + "os-browserify": "0.2.1", + "path-browserify": "0.0.0", + "process": "0.11.10", + "punycode": "1.4.1", + "querystring-es3": "0.2.1", + "readable-stream": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502", + "stream-browserify": "2.0.1", + "string_decoder": "1.0.3", + "timers-browserify": "1.4.2", + "tty-browserify": "0.0.0", + "url": "0.11.0", + "util": "0.10.3", + "vm-browserify": "0.0.4" + }, + "dependencies": { + "Base64": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/Base64/-/Base64-0.2.1.tgz", + "integrity": "sha1-ujpCMHCOGGcFBl5mur3Uw1z2ACg=" + }, + "asn1.js": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.9.1.tgz", + "integrity": "sha1-SLokC0WpKA6UdImQull9IWYX/UA=", + "requires": { + "bn.js": "4.11.8", + "inherits": "2.0.1", + "minimalistic-assert": "1.0.0" + } + }, + "assert": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", + "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", + "requires": { + "util": "0.10.3" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "base64-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz", + "integrity": "sha512-dwVUVIXsBZXwTuwnXI9RK8sBmgq09NDHzyR9SAph9eqk76gKK2JSQmZARC2zRC81JC2QTtxD0ARU5qTS25gIGw==" + }, + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "brorand": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" + }, + "browserify-aes": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.1.0.tgz", + "integrity": "sha512-W2bIMLYoZ9oow7TyePpMJk9l9LY7O3R61a/68bVCDOtnJynnwe3ZeW2IzzSkrQnPKNdJrxVDn3ALZNisSBwb7g==", + "requires": { + "buffer-xor": "1.0.3", + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "inherits": "2.0.1", + "safe-buffer": "5.1.1" + } + }, + "browserify-cipher": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.0.tgz", + "integrity": "sha1-mYgkSHS/XtTijalWZtzWasj8Njo=", + "requires": { + "browserify-aes": "1.1.0", + "browserify-des": "1.0.0", + "evp_bytestokey": "1.0.3" + } + }, + "browserify-des": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.0.tgz", + "integrity": "sha1-2qJ3cXRwki7S/hhZQRihdUOXId0=", + "requires": { + "cipher-base": "1.0.4", + "des.js": "1.0.0", + "inherits": "2.0.1" + } + }, + "browserify-rsa": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "requires": { + "bn.js": "4.11.8", + "randombytes": "2.0.5" + } + }, + "browserify-sign": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", + "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "elliptic": "6.4.0", + "inherits": "2.0.1", + "parse-asn1": "5.1.0" + } + }, + "browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "requires": { + "pako": "0.2.9" + } + }, + "buffer": { + "version": "4.9.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", + "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "requires": { + "base64-js": "1.2.1", + "ieee754": "1.1.8", + "isarray": "1.0.0" + } + }, + "buffer-xor": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" + }, + "cipher-base": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", + "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", + "requires": { + "inherits": "2.0.1", + "safe-buffer": "5.1.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-browserify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", + "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", + "requires": { + "date-now": "0.1.4" + } + }, + "constants-browserify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" + }, + "create-ecdh": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.0.tgz", + "integrity": "sha1-iIxyNZbN92EvZJgjPuvXo1MBc30=", + "requires": { + "bn.js": "4.11.8", + "elliptic": "6.4.0" + } + }, + "create-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.1.3.tgz", + "integrity": "sha1-YGBCrIuSYnUPSDyt2rD1gZFy2P0=", + "requires": { + "cipher-base": "1.0.4", + "inherits": "2.0.1", + "ripemd160": "2.0.1", + "sha.js": "2.4.9" + } + }, + "create-hmac": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.6.tgz", + "integrity": "sha1-rLniIaThe9sHbpBlfEK5PjcmzwY=", + "requires": { + "cipher-base": "1.0.4", + "create-hash": "1.1.3", + "inherits": "2.0.1", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "crypto-browserify": { + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz", + "integrity": "sha512-Na7ZlwCOqoaW5RwUK1WpXws2kv8mNhWdTlzob0UXulk6G9BDbyiJaGTYBIX61Ozn9l1EPPJpICZb4DaOpT9NlQ==", + "requires": { + "browserify-cipher": "1.0.0", + "browserify-sign": "4.0.4", + "create-ecdh": "4.0.0", + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "diffie-hellman": "5.0.2", + "inherits": "2.0.1", + "pbkdf2": "3.0.14", + "public-encrypt": "4.0.0", + "randombytes": "2.0.5" + } + }, + "date-now": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", + "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=" + }, + "des.js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", + "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", + "requires": { + "inherits": "2.0.1", + "minimalistic-assert": "1.0.0" + } + }, + "diffie-hellman": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.2.tgz", + "integrity": "sha1-tYNXOScM/ias9jIJn97SoH8gnl4=", + "requires": { + "bn.js": "4.11.8", + "miller-rabin": "4.0.1", + "randombytes": "2.0.5" + } + }, + "domain-browser": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.1.7.tgz", + "integrity": "sha1-hnqksJP6oF8d4IwG9NeyH9+GmLw=" + }, + "elliptic": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", + "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0", + "hash.js": "1.1.3", + "hmac-drbg": "1.0.1", + "inherits": "2.0.1", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + }, + "evp_bytestokey": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", + "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", + "requires": { + "md5.js": "1.3.4", + "safe-buffer": "5.1.1" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.1", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "hash-base": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-2.0.2.tgz", + "integrity": "sha1-ZuodhW206KVHDK32/OI65SRO8uE=", + "requires": { + "inherits": "2.0.1" + } + }, + "hash.js": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz", + "integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==", + "requires": { + "inherits": "2.0.3", + "minimalistic-assert": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "hmac-drbg": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", + "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", + "requires": { + "hash.js": "1.1.3", + "minimalistic-assert": "1.0.0", + "minimalistic-crypto-utils": "1.0.1" + } + }, + "http-browserify": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/http-browserify/-/http-browserify-1.7.0.tgz", + "integrity": "sha1-M3la3nLfiKz7/TZ3PO/tp2RzWyA=", + "requires": { + "Base64": "0.2.1", + "inherits": "2.0.1" + } + }, + "https-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-0.0.1.tgz", + "integrity": "sha1-P5E2XKvmC3ftDruiS0VOPgnZWoI=" + }, + "ieee754": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.8.tgz", + "integrity": "sha1-vjPUCsEO8ZJnAfbwii2G+/0a0+Q=" + }, + "indexof": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", + "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=" + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "md5.js": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", + "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "requires": { + "hash-base": "3.0.4", + "inherits": "2.0.1" + }, + "dependencies": { + "hash-base": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", + "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", + "requires": { + "inherits": "2.0.1", + "safe-buffer": "5.1.1" + } + } + } + }, + "miller-rabin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", + "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", + "requires": { + "bn.js": "4.11.8", + "brorand": "1.1.0" + } + }, + "minimalistic-assert": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz", + "integrity": "sha1-cCvi3aazf0g2vLP121ZkG2Sh09M=" + }, + "minimalistic-crypto-utils": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-browserify": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.2.1.tgz", + "integrity": "sha1-Y/xMzuXS13Y9Jrv4YBB45sLgBE8=" + }, + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + }, + "parse-asn1": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.0.tgz", + "integrity": "sha1-N8T5t+06tlx0gXtfJICTf7+XxxI=", + "requires": { + "asn1.js": "4.9.1", + "browserify-aes": "1.1.0", + "create-hash": "1.1.3", + "evp_bytestokey": "1.0.3", + "pbkdf2": "3.0.14" + } + }, + "path-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", + "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=" + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "pbkdf2": { + "version": "3.0.14", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.14.tgz", + "integrity": "sha512-gjsZW9O34fm0R7PaLHRJmLLVfSoesxztjPjE9o6R+qtVJij90ltg1joIovN9GKrRW3t1PzhDDG3UMEMFfZ+1wA==", + "requires": { + "create-hash": "1.1.3", + "create-hmac": "1.1.6", + "ripemd160": "2.0.1", + "safe-buffer": "5.1.1", + "sha.js": "2.4.9" + } + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "public-encrypt": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.0.tgz", + "integrity": "sha1-OfaZ86RlYN1eusvKaTyvfGXBjMY=", + "requires": { + "bn.js": "4.11.8", + "browserify-rsa": "4.0.1", + "create-hash": "1.1.3", + "parse-asn1": "5.1.0", + "randombytes": "2.0.5" + } + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" + }, + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" + }, + "randombytes": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz", + "integrity": "sha512-8T7Zn1AhMsQ/HI1SjcCfT/t4ii3eAqco3yOcSzS4mozsOz69lHLsoMXmF9nZgnFanYscnSlUSgs8uZyKzpE6kg==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "readable-stream": { + "version": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502", + "requires": { + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } + } + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + } + }, + "ripemd160": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.1.tgz", + "integrity": "sha1-D0WEKVxTo2KK9+bXmsohzlfRxuc=", + "requires": { + "hash-base": "2.0.2", + "inherits": "2.0.1" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "sha.js": { + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.9.tgz", + "integrity": "sha512-G8zektVqbiPHrylgew9Zg1VRB1L/DtXNUVAM6q4QLy8NE3qtHlFXTf8VLL4k1Yl6c7NMjtZUTdXV+X44nFaT6A==", + "requires": { + "inherits": "2.0.1", + "safe-buffer": "5.1.1" + } + }, + "stream-browserify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", + "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "requires": { + "inherits": "2.0.1", + "readable-stream": "git+https://github.com/meteor/readable-stream.git#d64a64aa6061b9b6855feff4d09e58fb3b2e4502" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "timers-browserify": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz", + "integrity": "sha1-ycWLV1voQHN1y14kYtrO50NZ9B0=", + "requires": { + "process": "0.11.10" + } + }, + "tty-browserify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" + } + } + }, + "util": { + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", + "requires": { + "inherits": "2.0.1" + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "vm-browserify": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", + "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", + "requires": { + "indexof": "0.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + } } }, - "pseudomap": { - "version": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" - }, - "q": { - "version": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", - "dev": true - }, - "qs": { - "version": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha1-NJzfbu+J7EXBLX1es/wMhwNDptg=" - }, - "query-string": { - "version": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", - "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "node-sass": { + "version": "4.5.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.5.3.tgz", + "integrity": "sha1-0JydEXlkEjnRuX/8YjH9zsU+FWg=", "requires": { - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "strict-uri-encode": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz" + "async-foreach": "0.1.3", + "chalk": "1.1.3", + "cross-spawn": "3.0.1", + "gaze": "1.1.2", + "get-stdin": "4.0.1", + "glob": "7.1.2", + "in-publish": "2.0.0", + "lodash.assign": "4.2.0", + "lodash.clonedeep": "4.5.0", + "lodash.mergewith": "4.6.0", + "meow": "3.7.0", + "mkdirp": "0.5.1", + "nan": "2.8.0", + "node-gyp": "3.6.2", + "npmlog": "4.1.2", + "request": "2.83.0", + "sass-graph": "2.2.4", + "stdout-stream": "1.4.0" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "ajv": { + "version": "5.5.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", + "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "requires": { + "co": "4.6.0", + "fast-deep-equal": "1.0.0", + "fast-json-stable-stringify": "2.0.0", + "json-schema-traverse": "0.3.1" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "are-we-there-yet": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", + "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.3" + } + }, + "array-find-index": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=" + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=" + }, + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" + }, + "async-foreach": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", + "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=" + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=" + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "boom": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", + "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", + "requires": { + "hoek": "4.2.0" + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "builtin-modules": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", + "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" + }, + "camelcase": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", + "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=" + }, + "camelcase-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", + "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", + "requires": { + "camelcase": "2.1.1", + "map-obj": "1.0.1" + } + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + } + }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wrap-ansi": "2.1.0" + } + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" + }, + "combined-stream": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "requires": { + "delayed-stream": "1.0.0" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "cross-spawn": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", + "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", + "requires": { + "lru-cache": "4.1.1", + "which": "1.3.0" + } + }, + "cryptiles": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", + "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", + "requires": { + "boom": "5.2.0" + }, + "dependencies": { + "boom": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", + "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", + "requires": { + "hoek": "4.2.0" + } + } + } + }, + "currently-unhandled": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", + "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", + "requires": { + "array-find-index": "1.0.2" + } + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "requires": { + "assert-plus": "1.0.0" + } + }, + "decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" + }, + "delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "error-ex": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", + "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "requires": { + "is-arrayish": "0.2.1" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" + }, + "fast-deep-equal": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", + "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=" + }, + "fast-json-stable-stringify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", + "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "2.1.0", + "pinkie-promise": "2.0.1" + } + }, + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "form-data": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", + "integrity": "sha1-b7lPvXGIUwbXPRXMSX/kzE7NRL8=", + "requires": { + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" + } + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + }, + "fstream": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", + "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", + "requires": { + "graceful-fs": "4.1.11", + "inherits": "2.0.3", + "mkdirp": "0.5.1", + "rimraf": "2.6.2" + } + }, + "gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.2" + } + }, + "gaze": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", + "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", + "requires": { + "globule": "1.2.0" + } + }, + "get-caller-file": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", + "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" + }, + "get-stdin": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + }, + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "requires": { + "assert-plus": "1.0.0" + } + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "globule": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", + "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", + "requires": { + "glob": "7.1.2", + "lodash": "4.17.4", + "minimatch": "3.0.4" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + }, + "har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" + }, + "har-validator": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", + "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", + "requires": { + "ajv": "5.5.2", + "har-schema": "2.0.0" + } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "hawk": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", + "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", + "requires": { + "boom": "4.3.1", + "cryptiles": "3.1.2", + "hoek": "4.2.0", + "sntp": "2.1.0" + } + }, + "hoek": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz", + "integrity": "sha512-v0XCLxICi9nPfYrS9RL8HbYnXi9obYAeLbSP00BmnZwCK9+Ih9WOjoZ8YoHCoav2csqn4FOz4Orldsy2dmDwmQ==" + }, + "hosted-git-info": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz", + "integrity": "sha512-pNgbURSuab90KbTqvRPsseaTxOJCZBD0a7t+haSN33piP9cCM4l0CqdzAif2hUqm716UovKB2ROmiabGAKVXyg==" + }, + "http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "requires": { + "assert-plus": "1.0.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" + } + }, + "in-publish": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", + "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=" + }, + "indent-string": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", + "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", + "requires": { + "repeating": "2.0.1" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "invert-kv": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", + "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" + }, + "is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + }, + "is-builtin-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", + "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", + "requires": { + "builtin-modules": "1.1.1" + } + }, + "is-finite": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", + "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "1.0.1" + } + }, + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "is-utf8": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "js-base64": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.0.tgz", + "integrity": "sha512-Wehd+7Pf9tFvGb+ydPm9TjYjV8X1YHOVyG8QyELZxEMqOhemVwGRmoG8iQ/soqI3n8v4xn59zaLxiCJiaaRzKA==" + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" + }, + "json-schema-traverse": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", + "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" + }, + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "requires": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + } + }, + "lcid": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", + "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", + "requires": { + "invert-kv": "1.0.0" + } + }, + "load-json-file": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", + "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", + "requires": { + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "pinkie-promise": "2.0.1", + "strip-bom": "2.0.0" + } + }, + "lodash.assign": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", + "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" + }, + "lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + }, + "lodash.mergewith": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz", + "integrity": "sha1-FQzwoWeR9ZA7iJHqsVRgknS96lU=" + }, + "loud-rejection": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", + "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", + "requires": { + "currently-unhandled": "0.4.1", + "signal-exit": "3.0.2" + } + }, + "lru-cache": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", + "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", + "requires": { + "pseudomap": "1.0.2", + "yallist": "2.1.2" + } + }, + "map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=" + }, + "meow": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", + "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", + "requires": { + "camelcase-keys": "2.1.0", + "decamelize": "1.2.0", + "loud-rejection": "1.6.0", + "map-obj": "1.0.1", + "minimist": "1.2.0", + "normalize-package-data": "2.4.0", + "object-assign": "4.1.1", + "read-pkg-up": "1.0.1", + "redent": "1.0.0", + "trim-newlines": "1.0.0" + } + }, + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=" + }, + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", + "requires": { + "mime-db": "1.30.0" + } + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "requires": { + "brace-expansion": "1.1.8" + } + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "requires": { + "minimist": "0.0.8" + }, + "dependencies": { + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + } + } + }, + "nan": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.8.0.tgz", + "integrity": "sha1-7XFfP+neArV6XmJS2QqWZ14fCFo=" + }, + "node-gyp": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", + "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", + "requires": { + "fstream": "1.0.11", + "glob": "7.1.2", + "graceful-fs": "4.1.11", + "minimatch": "3.0.4", + "mkdirp": "0.5.1", + "nopt": "3.0.6", + "npmlog": "4.1.2", + "osenv": "0.1.4", + "request": "2.83.0", + "rimraf": "2.6.2", + "semver": "5.3.0", + "tar": "2.2.1", + "which": "1.3.0" + }, + "dependencies": { + "semver": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", + "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" + } + } + }, + "nopt": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", + "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", + "requires": { + "abbrev": "1.1.1" + } + }, + "normalize-package-data": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", + "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", + "requires": { + "hosted-git-info": "2.5.0", + "is-builtin-module": "1.0.0", + "semver": "5.4.1", + "validate-npm-package-license": "3.0.1" + } + }, + "npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "requires": { + "are-we-there-yet": "1.1.4", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "os-locale": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", + "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", + "requires": { + "lcid": "1.0.0" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" + }, + "osenv": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.4.tgz", + "integrity": "sha1-Qv5tWVPfBsgGS+bxdsPQWqqjRkQ=", + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "parse-json": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", + "requires": { + "error-ex": "1.3.1" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "2.0.1" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + }, + "path-type": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", + "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", + "requires": { + "graceful-fs": "4.1.11", + "pify": "2.3.0", + "pinkie-promise": "2.0.1" + } + }, + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, + "pinkie": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" + }, + "pinkie-promise": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", + "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", + "requires": { + "pinkie": "2.0.4" + } + }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" + }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" + }, + "qs": { + "version": "6.5.1", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", + "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==" + }, + "read-pkg": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", + "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "requires": { + "load-json-file": "1.1.0", + "normalize-package-data": "2.4.0", + "path-type": "1.1.0" + } + }, + "read-pkg-up": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", + "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "requires": { + "find-up": "1.1.2", + "read-pkg": "1.1.0" + } + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + } + }, + "redent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", + "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "requires": { + "indent-string": "2.1.0", + "strip-indent": "1.0.1" + } + }, + "repeating": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", + "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "requires": { + "is-finite": "1.0.2" + } + }, + "request": { + "version": "2.83.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", + "integrity": "sha512-lR3gD69osqm6EYLk9wB/G1W/laGWjzH90t1vEa2xuxHD5KUrSzp9pUSfTm+YC5Nxt2T8nMPEvKlhbQayU7bgFw==", + "requires": { + "aws-sign2": "0.7.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.3.1", + "har-validator": "5.0.3", + "hawk": "6.0.2", + "http-signature": "1.2.0", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "2.1.0", + "qs": "6.5.1", + "safe-buffer": "5.1.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + } + }, + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "rimraf": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", + "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "requires": { + "glob": "7.1.2" + } + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "sass-graph": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", + "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", + "requires": { + "glob": "7.1.2", + "lodash": "4.17.4", + "scss-tokenizer": "0.2.3", + "yargs": "7.1.0" + } + }, + "scss-tokenizer": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", + "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", + "requires": { + "js-base64": "2.4.0", + "source-map": "0.4.4" + } + }, + "semver": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", + "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==" + }, + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" + }, + "sntp": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", + "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", + "requires": { + "hoek": "4.2.0" + } + }, + "source-map": { + "version": "0.4.4", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", + "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", + "requires": { + "amdefine": "1.0.1" + } + }, + "spdx-correct": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", + "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", + "requires": { + "spdx-license-ids": "1.2.2" + } + }, + "spdx-expression-parse": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", + "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" + }, + "spdx-license-ids": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", + "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" + }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + } + }, + "stdout-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz", + "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=", + "requires": { + "readable-stream": "2.3.3" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-bom": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", + "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "requires": { + "is-utf8": "0.2.1" + } + }, + "strip-indent": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", + "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "requires": { + "get-stdin": "4.0.1" + } + }, + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + }, + "tar": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", + "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", + "requires": { + "block-stream": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", + "fstream": "1.0.11", + "inherits": "2.0.3" + } + }, + "tough-cookie": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", + "requires": { + "punycode": "1.4.1" + } + }, + "trim-newlines": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", + "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "requires": { + "safe-buffer": "5.1.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "optional": true + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "uuid": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==" + }, + "validate-npm-package-license": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", + "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", + "requires": { + "spdx-correct": "1.0.2", + "spdx-expression-parse": "1.0.4" + } + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + } + }, + "which": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", + "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "requires": { + "isexe": "2.0.0" + } + }, + "which-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", + "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" + }, + "wide-align": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", + "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "requires": { + "string-width": "1.0.2" + } + }, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", + "requires": { + "string-width": "1.0.2", + "strip-ansi": "3.0.1" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "yargs": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", + "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", + "requires": { + "camelcase": "3.0.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.2", + "os-locale": "1.4.0", + "read-pkg-up": "1.0.1", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "1.0.2", + "which-module": "1.0.0", + "y18n": "3.2.1", + "yargs-parser": "5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + } + } + }, + "yargs-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", + "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "requires": { + "camelcase": "3.0.0" + }, + "dependencies": { + "camelcase": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", + "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + } + } + } } }, - "querystring": { - "version": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, - "react": { - "version": "https://registry.npmjs.org/react/-/react-16.0.0.tgz", - "integrity": "sha1-zn348ZQbA28Cssyp29DLHw6FXi0=", - "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz" - } - }, - "react-autosize-textarea": { - "version": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-0.4.9.tgz", - "integrity": "sha1-jVXIX0xmWm1jWehK8oYQnFBKsps=", - "requires": { - "autosize": "https://registry.npmjs.org/autosize/-/autosize-3.0.21.tgz", - "line-height": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz" - } - }, - "react-color": { - "version": "https://registry.npmjs.org/react-color/-/react-color-2.13.8.tgz", - "integrity": "sha1-vMWPeaciub/DfEAuaM0Y8mlwruQ=", - "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "material-colors": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.5.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", - "reactcss": "https://registry.npmjs.org/reactcss/-/reactcss-1.2.3.tgz", - "tinycolor2": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.1.tgz" - } + "popper.js": { + "version": "1.12.9", + "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.12.9.tgz", + "integrity": "sha1-DfvC3/lsRRuzMu3Pz6r1ZtMx1bM=" }, - "react-dom": { - "version": "https://registry.npmjs.org/react-dom/-/react-dom-16.0.0.tgz", - "integrity": "sha1-nMMHnD3NcNTG4BuEqrKn40wwP1g=", + "postcss-modules-extract-imports": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.1.0.tgz", + "integrity": "sha1-thTJcgvmgW6u41+zpfqh26agXds=", + "dev": true, "requires": { - "fbjs": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "object-assign": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz" + "postcss": "6.0.16" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, - "react-intl": { - "version": "https://registry.npmjs.org/react-intl/-/react-intl-2.4.0.tgz", - "integrity": "sha1-ZsFNyd+ac7L7v71gIXJugKYT6xU=", + "postcss-modules-local-by-default": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", + "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", + "dev": true, "requires": { - "intl-format-cache": "https://registry.npmjs.org/intl-format-cache/-/intl-format-cache-2.0.5.tgz", - "intl-messageformat": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-2.2.0.tgz", - "intl-relativeformat": "https://registry.npmjs.org/intl-relativeformat/-/intl-relativeformat-2.1.0.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz" + "css-selector-tokenizer": "0.7.0", + "postcss": "6.0.16" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "css-selector-tokenizer": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", + "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", + "dev": true, + "requires": { + "cssesc": "0.1.0", + "fastparse": "1.1.1", + "regexpu-core": "1.0.0" + } + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "fastparse": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", + "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "dev": true + }, + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "0.5.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, - "react-modal": { - "version": "https://registry.npmjs.org/react-modal/-/react-modal-3.0.4.tgz", - "integrity": "sha1-YfPJpwGyfSAV/lrAxBnjyXfkCSo=", + "postcss-modules-scope": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", + "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", + "dev": true, "requires": { - "exenv": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz" + "css-selector-tokenizer": "0.7.0", + "postcss": "6.0.16" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "css-selector-tokenizer": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", + "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", + "dev": true, + "requires": { + "cssesc": "0.1.0", + "fastparse": "1.1.1", + "regexpu-core": "1.0.0" + } + }, + "cssesc": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", + "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "fastparse": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", + "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "regenerate": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", + "integrity": "sha512-jVpo1GadrDAK59t/0jRx5VxYWQEDkkEKi6+HjE3joFVLfDOh9Xrdh0dF1eSq+BI/SwvTQ44gSscJ8N5zYL61sg==", + "dev": true + }, + "regexpu-core": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", + "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", + "dev": true, + "requires": { + "regenerate": "1.3.3", + "regjsgen": "0.2.0", + "regjsparser": "0.1.5" + } + }, + "regjsgen": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", + "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "dev": true + }, + "regjsparser": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", + "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "dev": true, + "requires": { + "jsesc": "0.5.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, - "react-router": { - "version": "https://registry.npmjs.org/react-router/-/react-router-3.0.5.tgz", - "integrity": "sha1-w7eHN1gEWou8lWKu9P9LyMznwTY=", + "postcss-modules-values": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", + "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", + "dev": true, "requires": { - "create-react-class": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", - "history": "https://registry.npmjs.org/history/-/history-3.3.0.tgz", - "hoist-non-react-statics": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", - "invariant": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", - "warning": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz" + "icss-replace-symbols": "1.1.0", + "postcss": "6.0.16" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "icss-replace-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", + "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, - "react-tippy": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/react-tippy/-/react-tippy-1.2.2.tgz", - "integrity": "sha512-xqmymAhKub1JGtLJ+HncUauBpwJjHAp6EkKBLeGtuhneaGQ3GnRp5aEd/YRNc4NmIb6o1lbf/Z6R9G3/VjnjYA==", + "postcss-nested": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-2.1.2.tgz", + "integrity": "sha512-CU7KjbFOZSNrbFwrl8+KJHTj29GjCEhL86kCKyvf+k633fc+FQA6IuhGyPze5e+a4O5d2fP7hDlMOlVDXia1Xg==", "dev": true, "requires": { - "popper.js": "1.12.9" + "postcss": "6.0.16", + "postcss-selector-parser": "2.2.3" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + }, + "dependencies": { + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "flatten": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", + "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", + "dev": true + }, + "postcss": { + "version": "6.0.16", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.16.tgz", + "integrity": "sha512-m758RWPmSjFH/2MyyG3UOW1fgYbR9rtdzz5UNJnlm7OLtu4B2h9C6gi+bE4qFKghsBRFfZT8NzoQBs6JhLotoA==", + "dev": true, + "requires": { + "chalk": "2.3.0", + "source-map": "0.6.1", + "supports-color": "5.1.0" + } + }, + "postcss-selector-parser": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", + "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", + "dev": true, + "requires": { + "flatten": "1.0.2", + "indexes-of": "1.0.1", + "uniq": "1.0.1" + } + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, + "supports-color": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.1.0.tgz", + "integrity": "sha512-Ry0AwkoKjDpVKK4sV4h6o3UJmNRbjYm2uXhwfj3J56lMVdvnUNqzQVRztOOMGQ++w1K/TjNDFvpJk0F/LoeBCQ==", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", + "dev": true + } } }, - "react-toggle": { - "version": "https://registry.npmjs.org/react-toggle/-/react-toggle-4.0.2.tgz", - "integrity": "sha1-d/SHhg77h/r9GXZyotuMiFvhRA8=", + "probe-image-size": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/probe-image-size/-/probe-image-size-3.1.0.tgz", + "integrity": "sha1-50e+maDQqOUFiqcihUwkCSuS3WY=", "requires": { - "classnames": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz" + "any-promise": "1.3.0", + "deepmerge": "1.5.2", + "got": "7.1.0", + "inherits": "2.0.3", + "next-tick": "1.0.0", + "stream-parser": "0.3.1" + }, + "dependencies": { + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "1.0.0" + } + }, + "deepmerge": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz", + "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==" + }, + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "get-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" + }, + "got": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/got/-/got-7.1.0.tgz", + "integrity": "sha512-Y5WMo7xKKq1muPsxD+KmrR8DH5auG7fBdDVueZwETwV6VytKyU9OX/ddpq2/1hp1vIPvVb4T81dKQz3BivkNLw==", + "requires": { + "decompress-response": "3.3.0", + "duplexer3": "0.1.4", + "get-stream": "3.0.0", + "is-plain-obj": "1.1.0", + "is-retry-allowed": "1.1.0", + "is-stream": "1.1.0", + "isurl": "1.0.0", + "lowercase-keys": "1.0.0", + "p-cancelable": "0.3.0", + "p-timeout": "1.2.1", + "safe-buffer": "5.1.1", + "timed-out": "4.0.1", + "url-parse-lax": "1.0.0", + "url-to-options": "1.0.1" + } + }, + "has-symbol-support-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.1.tgz", + "integrity": "sha512-JkaetveU7hFbqnAC1EV1sF4rlojU2D4Usc5CmS69l6NfmPDnpnFUegzFg33eDkkpNCxZ0mQp65HwUDrNFS/8MA==" + }, + "has-to-string-tag-x": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.1.tgz", + "integrity": "sha512-vdbKfmw+3LoOYVr+mtxHaX5a96+0f3DljYd8JOqvOLsf5mw2Otda2qCDT9qRqLAhrjyQ0h7ual5nOiASpsGNFw==", + "requires": { + "has-symbol-support-x": "1.4.1" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "is-object": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-object/-/is-object-1.0.1.tgz", + "integrity": "sha1-iVJojF7C/9awPsyF52ngKQMINHA=" + }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" + }, + "is-retry-allowed": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isurl": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz", + "integrity": "sha512-1P/yWsxPlDtn7QeRD+ULKQPaIaN6yF368GZ2vDfv0AL0NwpStafjWCDDdn0k8wgFMWpVAqG7oJhxHnlud42i9w==", + "requires": { + "has-to-string-tag-x": "1.4.1", + "is-object": "1.0.1" + } + }, + "lowercase-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.0.tgz", + "integrity": "sha1-TjNms55/VFfjXxMkvfb4jQv8cwY=" + }, + "mimic-response": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz", + "integrity": "sha1-3z02Uqc/3ta5sLJBRub9BSNTRY4=" + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "p-cancelable": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", + "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==" + }, + "p-finally": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + }, + "p-timeout": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-1.2.1.tgz", + "integrity": "sha1-XrOzU7f86Z8QGhA4iAuwVOu+o4Y=", + "requires": { + "p-finally": "1.0.0" + } + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "stream-parser": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", + "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", + "requires": { + "debug": "2.6.9" + } + }, + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + }, + "url-parse-lax": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", + "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "requires": { + "prepend-http": "1.0.4" + } + }, + "url-to-options": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", + "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" + } } }, - "react-transition-group": { - "version": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.2.1.tgz", - "integrity": "sha1-6ftne3nmRV/TkbA4I6/oSEnfShA=", + "prop-types": { + "version": "15.6.0", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", + "integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=", "requires": { - "chain-function": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz", - "classnames": "https://registry.npmjs.org/classnames/-/classnames-2.2.5.tgz", - "dom-helpers": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.2.1.tgz", - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "prop-types": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", - "warning": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz" + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "reactcss": { - "version": "https://registry.npmjs.org/reactcss/-/reactcss-1.2.3.tgz", - "integrity": "sha1-wAATh15Vexzw39mjaKHD2rO1SN0=", + "react": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.0.0.tgz", + "integrity": "sha1-zn348ZQbA28Cssyp29DLHw6FXi0=", "requires": { - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz" + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "read-pkg": { - "version": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", + "react-autosize-textarea": { + "version": "0.4.9", + "resolved": "https://registry.npmjs.org/react-autosize-textarea/-/react-autosize-textarea-0.4.9.tgz", + "integrity": "sha1-jVXIX0xmWm1jWehK8oYQnFBKsps=", "requires": { - "load-json-file": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "normalize-package-data": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "path-type": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" + "autosize": "3.0.21", + "line-height": "0.3.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "autosize": { + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/autosize/-/autosize-3.0.21.tgz", + "integrity": "sha1-8YL0DRd1fZeKE5pMnKQMTA5EhgM=" + }, + "computed-style": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/computed-style/-/computed-style-0.1.4.tgz", + "integrity": "sha1-fzRP2FhLLkJb7cpKGvwOMAuwXXQ=" + }, + "line-height": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/line-height/-/line-height-0.3.1.tgz", + "integrity": "sha1-SxIF7d4YKHKl76PI9iCzGHqcVMk=", + "requires": { + "computed-style": "0.1.4" + } + } } }, - "read-pkg-up": { - "version": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", + "react-color": { + "version": "2.13.8", + "resolved": "https://registry.npmjs.org/react-color/-/react-color-2.13.8.tgz", + "integrity": "sha1-vMWPeaciub/DfEAuaM0Y8mlwruQ=", "requires": { - "find-up": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "read-pkg": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" + "lodash": "4.17.4", + "material-colors": "1.2.5", + "prop-types": "15.6.0", + "reactcss": "1.2.3", + "tinycolor2": "1.4.1" + }, + "dependencies": { + "material-colors": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/material-colors/-/material-colors-1.2.5.tgz", + "integrity": "sha1-UpJZPmdUyxvMK5gDDk4Najr8nqE=" + }, + "reactcss": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/reactcss/-/reactcss-1.2.3.tgz", + "integrity": "sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A==", + "requires": { + "lodash": "4.17.4" + } + }, + "tinycolor2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.1.tgz", + "integrity": "sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=" + } } }, - "readable-stream": { - "version": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "integrity": "sha1-No8lEtefnUb9/HE0mueHi7weuVw=", + "react-dom": { + "version": "16.0.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.0.0.tgz", + "integrity": "sha1-nMMHnD3NcNTG4BuEqrKn40wwP1g=", "requires": { - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "isarray": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "process-nextick-args": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "string_decoder": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "util-deprecate": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "prop-types": "15.6.0" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "redent": { - "version": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", + "react-dropzone": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-4.2.3.tgz", + "integrity": "sha512-QAXuGDqBUPC0p560pskC3yyS8I1jJUnzvZC0PHrd5NayYBQRD4poQfM1D/bxg4jhUaFU4avNhOB3ehMQd4JMvA==", "requires": { - "indent-string": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "strip-indent": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz" + "attr-accept": "1.1.0", + "prop-types": "15.6.0" } }, - "redis": { - "version": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz", - "integrity": "sha1-ICKI4/WMSfYHnZevehDhMDrhSwI=", + "react-intl": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/react-intl/-/react-intl-2.4.0.tgz", + "integrity": "sha1-ZsFNyd+ac7L7v71gIXJugKYT6xU=", "requires": { - "double-ended-queue": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "redis-commands": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.1.tgz", - "redis-parser": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz" + "intl-format-cache": "2.1.0", + "intl-messageformat": "2.2.0", + "intl-relativeformat": "2.1.0", + "invariant": "2.2.2" + }, + "dependencies": { + "intl-format-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/intl-format-cache/-/intl-format-cache-2.1.0.tgz", + "integrity": "sha1-BKNp/sv61tpgBbrh8UMzMy3PkxY=" + }, + "intl-messageformat": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-2.2.0.tgz", + "integrity": "sha1-NFvNRt5jC3aDMwwuUhd/9eq0hPw=", + "requires": { + "intl-messageformat-parser": "1.4.0" + } + }, + "intl-messageformat-parser": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/intl-messageformat-parser/-/intl-messageformat-parser-1.4.0.tgz", + "integrity": "sha1-tD1FqXRoytvkQzHXS7Ho3qRPwHU=" + }, + "intl-relativeformat": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/intl-relativeformat/-/intl-relativeformat-2.1.0.tgz", + "integrity": "sha1-AQ8RBYAiUfQKxH0OPhogE0iiVd8=", + "requires": { + "intl-messageformat": "2.2.0" + } + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + } } }, - "redis-commands": { - "version": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.1.tgz", - "integrity": "sha1-gdgm9F+pyLIBH0zXoP5ZfSQdRCs=" - }, - "redis-parser": { - "version": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz", - "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=" - }, - "regenerate": { - "version": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "integrity": "sha1-DDNtOYBVPXVcObWGrjsgqknIK38=", - "dev": true - }, - "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", - "integrity": "sha1-flT+W1zNXWYk6mJVw0c74JC4AuE=" - }, - "regexpu-core": { - "version": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, + "react-modal": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/react-modal/-/react-modal-3.0.4.tgz", + "integrity": "sha512-IvRZxJkXiDqEIl4cxCccCzP37z+YOSN+yNOkYH99Ime+n9nPSowgxkX0KfHzR2ezP72LSS3Uln54JDZXUJmLdA==", "requires": { - "regenerate": "https://registry.npmjs.org/regenerate/-/regenerate-1.3.3.tgz", - "regjsgen": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "regjsparser": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz" + "exenv": "1.2.2", + "prop-types": "15.6.0" + }, + "dependencies": { + "exenv": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/exenv/-/exenv-1.2.2.tgz", + "integrity": "sha1-KueOhdmJQVhnCwPUe+wfA72Ru50=" + } } }, - "regjsgen": { - "version": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, + "react-router": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-3.0.5.tgz", + "integrity": "sha1-w7eHN1gEWou8lWKu9P9LyMznwTY=", "requires": { - "jsesc": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz" + "create-react-class": "15.6.2", + "history": "3.3.0", + "hoist-non-react-statics": "1.2.0", + "invariant": "2.2.2", + "loose-envify": "1.3.1", + "prop-types": "15.6.0", + "warning": "3.0.0" + }, + "dependencies": { + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "core-js": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", + "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" + }, + "create-react-class": { + "version": "15.6.2", + "resolved": "https://registry.npmjs.org/create-react-class/-/create-react-class-15.6.2.tgz", + "integrity": "sha1-zx7RXxKq1/FO9fLf4F5sQvke8Co=", + "requires": { + "fbjs": "0.8.16", + "loose-envify": "1.3.1", + "object-assign": "4.1.1" + } + }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "requires": { + "iconv-lite": "0.4.19" + } + }, + "fbjs": { + "version": "0.8.16", + "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", + "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", + "requires": { + "core-js": "1.2.7", + "isomorphic-fetch": "2.2.1", + "loose-envify": "1.3.1", + "object-assign": "4.1.1", + "promise": "7.3.1", + "setimmediate": "1.0.5", + "ua-parser-js": "0.7.17" + } + }, + "hoist-non-react-statics": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-1.2.0.tgz", + "integrity": "sha1-qkSM8JhtVcxAdzsXF0t90GbLfPs=" + }, + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==" + }, + "invariant": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", + "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "isomorphic-fetch": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", + "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", + "requires": { + "node-fetch": "1.7.3", + "whatwg-fetch": "2.0.3" + } + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "node-fetch": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", + "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", + "requires": { + "encoding": "0.1.12", + "is-stream": "1.1.0" + } + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "2.0.6" + } + }, + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" + }, + "ua-parser-js": { + "version": "0.7.17", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", + "integrity": "sha512-uRdSdu1oA1rncCQL7sCj8vSyZkgtL7faaw9Tc9rZ3mGgraQ7+Pdx7w5mnOSF3gw9ZNG6oc+KXfkon3bKuROm0g==" + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "1.3.1" + } + }, + "whatwg-fetch": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", + "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" + } } }, - "remove-trailing-separator": { - "version": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", - "dev": true - }, - "repeating": { - "version": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", - "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", + "react-tabs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/react-tabs/-/react-tabs-2.1.1.tgz", + "integrity": "sha512-55jl6lsYmPTQarnjgrBU68WZlNtVSngpRxOc4iXm+Te27F9ixUr/IBTbhlhDCMiFJreP+cqu1OaMdNGY2Hg10A==", "requires": { - "is-finite": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz" + "classnames": "2.2.5", + "prop-types": "15.6.0" } }, - "request": { - "version": "https://registry.npmjs.org/request/-/request-2.83.0.tgz", - "integrity": "sha1-ygtl2gLtYpNYh4COb1EDgQNOM1Y=", + "react-toastify": { + "version": "2.1.7", + "resolved": "https://registry.npmjs.org/react-toastify/-/react-toastify-2.1.7.tgz", + "integrity": "sha512-iMS5wXiTDKXcWTIF055BmsSwJINcxs9+CUGeEPMSllU0I00IKfV2inb3xhRxrB7d+4QvPqWZAtDPTk6nz6o1nA==", "requires": { - "aws-sign2": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "aws4": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", - "caseless": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "forever-agent": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "form-data": "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz", - "har-validator": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", - "hawk": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "http-signature": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "is-typedarray": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "isstream": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "json-stringify-safe": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "oauth-sign": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "performance-now": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "qs": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "stringstream": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "tough-cookie": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", - "tunnel-agent": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "uuid": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz" + "prop-types": "15.6.0", + "react-transition-group": "2.2.1" } }, - "require-directory": { - "version": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" - }, - "require-from-string": { - "version": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", - "dev": true - }, - "require-main-filename": { - "version": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" - }, - "require-uncached": { - "version": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", - "dev": true, + "react-toggle": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/react-toggle/-/react-toggle-4.0.2.tgz", + "integrity": "sha512-EPTWnN7gQHgEAUEmjheanZXNzY5TPnQeyyHfEs3YshaiWZf5WNjfYDrglO5F1Hl/dNveX18i4l0grTEsYH2Ccw==", "requires": { - "caller-path": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "resolve-from": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz" + "classnames": "2.2.5" } }, - "resolve": { - "version": "https://registry.npmjs.org/resolve/-/resolve-1.5.0.tgz", - "integrity": "sha1-HwmsznlsmnYlefMbLBzEw83fnzY=", - "dev": true, - "requires": { - "path-parse": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz" + "react-transition-group": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.2.1.tgz", + "integrity": "sha512-q54UBM22bs/CekG8r3+vi9TugSqh0t7qcEVycaRc9M0p0aCEu+h6rp/RFiW7fHfgd1IKpd9oILFTl5QK+FpiPA==", + "requires": { + "chain-function": "1.0.0", + "classnames": "2.2.5", + "dom-helpers": "3.3.1", + "loose-envify": "1.3.1", + "prop-types": "15.6.0", + "warning": "3.0.0" + }, + "dependencies": { + "chain-function": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chain-function/-/chain-function-1.0.0.tgz", + "integrity": "sha1-DUqzfn4Y6tC9xHuSB2QRjOWHM9w=" + }, + "dom-helpers": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.3.1.tgz", + "integrity": "sha512-2Sm+JaYn74OiTM2wHvxJOo3roiq/h25Yi69Fqk269cNUwIXsCvATB6CRSFC9Am/20G2b28hGv/+7NiWydIrPvg==" + }, + "js-tokens": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", + "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + }, + "loose-envify": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", + "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "requires": { + "js-tokens": "3.0.2" + } + }, + "warning": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", + "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", + "requires": { + "loose-envify": "1.3.1" + } + } } }, - "resolve-from": { - "version": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", - "dev": true - }, - "resolve-url": { - "version": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", - "dev": true - }, - "restore-cursor": { - "version": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, + "redis": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz", + "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==", "requires": { - "onetime": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "signal-exit": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz" + "double-ended-queue": "2.1.0-0", + "redis-commands": "1.3.1", + "redis-parser": "2.6.0" + }, + "dependencies": { + "double-ended-queue": { + "version": "2.1.0-0", + "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", + "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" + }, + "redis-commands": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.1.tgz", + "integrity": "sha1-gdgm9F+pyLIBH0zXoP5ZfSQdRCs=" + }, + "redis-parser": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz", + "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=" + } } }, - "rgb2hex": { - "version": "https://registry.npmjs.org/rgb2hex/-/rgb2hex-0.1.0.tgz", - "integrity": "sha1-zNVfhgrgxcTqN1BLlY5ELY0SMls=", - "dev": true - }, - "rimraf": { - "version": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha1-LtgVDSShbqhlHm1u8PR8QVjOejY=", - "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz" - } + "string-hash": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", + "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=" }, - "run-async": { - "version": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, + "tippy.js": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-2.0.8.tgz", + "integrity": "sha512-GbEV0iQHE9NS/J3W2OBTM3evYjJV4P88axZeB9E6iyJz8+h/m75fL8wg2OW/U0c98K7qnrgLZ0plPucBpULpDw==", "requires": { - "is-promise": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz" + "popper.js": "1.12.9" } }, - "rx": { - "version": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", - "dev": true - }, - "rx-lite": { - "version": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true - }, - "rx-lite-aggregates": { - "version": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "wdio-jasmine-framework": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/wdio-jasmine-framework/-/wdio-jasmine-framework-0.3.2.tgz", + "integrity": "sha1-l4QSFCEqm1f3DZB3Tw2bR759+YE=", "dev": true, "requires": { - "rx-lite": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz" + "babel-runtime": "6.25.0", + "jasmine": "2.8.0", + "wdio-sync": "0.7.0" + }, + "dependencies": { + "babel-runtime": { + "version": "6.25.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", + "integrity": "sha1-M7mOql1IK7AajRqmtDetKwGuxBw=", + "dev": true, + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.10.5" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=", + "dev": true + }, + "define-properties": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", + "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "dev": true, + "requires": { + "foreach": "2.0.5", + "object-keys": "1.0.11" + } + }, + "exit": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", + "dev": true + }, + "fibers": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/fibers/-/fibers-2.0.0.tgz", + "integrity": "sha512-sLxo4rZVk7xLgAjb/6zEzHJfSALx6u6coN1z61XCOF7i6CyTdJawF4+RdpjCSeS8AP66eR2InScbYAz9RAVOgA==", + "dev": true + }, + "foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "jasmine": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", + "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", + "dev": true, + "requires": { + "exit": "0.1.2", + "glob": "7.1.2", + "jasmine-core": "2.8.0" + } + }, + "jasmine-core": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-2.8.0.tgz", + "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", + "dev": true + }, + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, + "requires": { + "brace-expansion": "1.1.8" + } + }, + "object-keys": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", + "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", + "dev": true + }, + "object.assign": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", + "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, + "requires": { + "define-properties": "1.1.2", + "function-bind": "1.1.1", + "has-symbols": "1.0.0", + "object-keys": "1.0.11" + } + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true + }, + "regenerator-runtime": { + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "dev": true + }, + "wdio-sync": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/wdio-sync/-/wdio-sync-0.7.0.tgz", + "integrity": "sha1-L7B9JQEh3IH1Y1MWVCw8SaEiAWg=", + "dev": true, + "requires": { + "babel-runtime": "6.25.0", + "fibers": "2.0.0", + "object.assign": "4.1.0" + } + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + } } }, - "rxjs": { - "version": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.2.tgz", - "integrity": "sha1-KNQD8AcRIZZ/GK1mVWMlXVQjasM=", + "wdio-junit-reporter": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/wdio-junit-reporter/-/wdio-junit-reporter-0.3.1.tgz", + "integrity": "sha1-d7G/RFDTGw+VuswW3Bunv8vY/gk=", "dev": true, "requires": { - "symbol-observable": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz" - } - }, - "safe-buffer": { - "version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha1-iTMSr2myEj3vcfV4iQAWce6yyFM=" - }, - "sass-graph": { - "version": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", - "requires": { - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "scss-tokenizer": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "yargs": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz" - } - }, - "sax": { - "version": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha1-KBYjTiN4vdxOU1T6tcqold9xANk=" - }, - "scss-tokenizer": { - "version": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", - "requires": { - "js-base64": "https://registry.npmjs.org/js-base64/-/js-base64-2.3.2.tgz", - "source-map": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz" + "junit-report-builder": "1.2.0", + "mkdirp": "0.5.1" + }, + "dependencies": { + "date-format": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-0.0.2.tgz", + "integrity": "sha1-+v1Ej3IRXvHitzkVWukvK+bCjdE=", + "dev": true + }, + "junit-report-builder": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/junit-report-builder/-/junit-report-builder-1.2.0.tgz", + "integrity": "sha1-aJfM1e49gFGRpL5vEse+hQ5QwNY=", + "dev": true, + "requires": { + "date-format": "0.0.2", + "lodash": "3.10.1", + "mkdirp": "0.5.1", + "xmlbuilder": "2.6.5" + } + }, + "lodash": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", + "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", + "dev": true + }, + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true + }, + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "xmlbuilder": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-2.6.5.tgz", + "integrity": "sha1-b/etYPty0idk8AehZLd/K/FABSY=", + "dev": true, + "requires": { + "lodash": "3.10.1" + } + } } }, - "select": { - "version": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" - }, - "semver": { - "version": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", - "integrity": "sha1-4FnAnYVx8FQII3M0M1BdOi8AsY4=" - }, - "set-blocking": { - "version": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" - }, - "setimmediate": { - "version": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" - }, - "shebang-command": { - "version": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "wdio-spec-reporter": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/wdio-spec-reporter/-/wdio-spec-reporter-0.1.3.tgz", + "integrity": "sha512-zPLAmaq255UVcN3Z9AKuuY4prwwpkiQ3j0Ne0zJWl9/lZamfKN0k3DQslO0M/YCN8jPfHfaFJvP/VHas7iPdkQ==", "dev": true, "requires": { - "shebang-regex": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" + "babel-runtime": "6.26.0", + "chalk": "2.3.0", + "humanize-duration": "3.12.1" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", + "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", + "dev": true, + "requires": { + "color-convert": "1.9.1" + } + }, + "chalk": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", + "integrity": "sha512-Az5zJR2CBujap2rqXGaJKaPHyJ0IrUimvYNX+ncCy8PJP4ltOGTrHUIo097ZaL2zMeKYpiCdqDvS6zdrTFok3Q==", + "dev": true, + "requires": { + "ansi-styles": "3.2.0", + "escape-string-regexp": "1.0.5", + "supports-color": "4.5.0" + } + }, + "color-convert": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", + "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "has-flag": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true + }, + "humanize-duration": { + "version": "3.12.1", + "resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.12.1.tgz", + "integrity": "sha512-Eu68Xnq5C38391em1zfVy8tiapQrOvTNTlWpax9smHMlEEUcudXrdMfXMoMRyZx4uODowYgi1AYiMzUXEbG+sA==", + "dev": true + }, + "supports-color": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", + "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, + "requires": { + "has-flag": "2.0.0" + } + } } }, - "shebang-regex": { - "version": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true - }, - "signal-exit": { - "version": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "slice-ansi": { - "version": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha1-BE8aSdiEL/MHqta1Be0Xi9lQE00=", + "webdriverio": { + "version": "4.8.0", + "resolved": "https://registry.npmjs.org/webdriverio/-/webdriverio-4.8.0.tgz", + "integrity": "sha1-1Skpt0kID4mWf24WFAUcvIFy0TI=", "dev": true, "requires": { - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" + "archiver": "1.3.0", + "babel-runtime": "6.23.0", + "css-parse": "2.0.0", + "css-value": "0.0.1", + "deepmerge": "1.3.2", + "ejs": "2.5.7", + "gaze": "1.1.2", + "glob": "7.1.2", + "inquirer": "3.0.6", + "json-stringify-safe": "5.0.1", + "mkdirp": "0.5.1", + "npm-install-package": "2.1.0", + "optimist": "0.6.1", + "q": "1.5.1", + "request": "2.81.0", + "rgb2hex": "0.1.0", + "safe-buffer": "5.0.1", + "supports-color": "3.2.3", + "url": "0.11.0", + "validator": "7.0.0", + "wdio-dot-reporter": "0.0.9", + "wgxpath": "1.0.0" }, "dependencies": { - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "ajv": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", + "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + "dev": true, + "requires": { + "co": "4.6.0", + "json-stable-stringify": "1.0.1" + } + }, + "amdefine": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true + }, + "ansi-escapes": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "dev": true + }, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true + }, + "archiver": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", + "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=", + "dev": true, + "requires": { + "archiver-utils": "1.3.0", + "async": "2.6.0", + "buffer-crc32": "0.2.13", + "glob": "7.1.2", + "lodash": "4.17.4", + "readable-stream": "2.3.3", + "tar-stream": "1.5.5", + "walkdir": "0.0.11", + "zip-stream": "1.2.0" + } + }, + "archiver-utils": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", + "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=", + "dev": true, + "requires": { + "glob": "7.1.2", + "graceful-fs": "4.1.11", + "lazystream": "1.0.0", + "lodash": "4.17.4", + "normalize-path": "2.1.1", + "readable-stream": "2.3.3" + } + }, + "asn1": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", + "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=", + "dev": true + }, + "assert-plus": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", + "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", + "dev": true + }, + "async": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz", + "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==", + "dev": true, + "requires": { + "lodash": "4.17.4" + } + }, + "asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", + "dev": true + }, + "atob": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", + "integrity": "sha1-lfE2KbEsOlGl0hWr3OKqnzL4B3M=", + "dev": true + }, + "aws-sign2": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", + "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", + "dev": true + }, + "aws4": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", + "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=", + "dev": true + }, + "babel-runtime": { + "version": "6.23.0", + "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.23.0.tgz", + "integrity": "sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs=", + "dev": true, + "requires": { + "core-js": "2.5.3", + "regenerator-runtime": "0.10.5" + } + }, + "balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "bcrypt-pbkdf": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", + "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=", + "dev": true, + "optional": true, + "requires": { + "tweetnacl": "0.14.5" + } + }, + "bl": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", + "integrity": "sha1-ysMo977kVzDUBLaSID/LWQ4XLV4=", + "dev": true, + "requires": { + "readable-stream": "2.3.3" + } + }, + "boom": { + "version": "2.10.1", + "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", + "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "dev": true, + "requires": { + "hoek": "2.16.3" + } + }, + "brace-expansion": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", + "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, + "caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "dev": true + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, + "requires": { + "ansi-styles": "2.2.1", + "escape-string-regexp": "1.0.5", + "has-ansi": "2.0.0", + "strip-ansi": "3.0.1", + "supports-color": "2.0.0" + }, + "dependencies": { + "supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true + } + } + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true + }, + "co": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", + "dev": true + }, + "combined-stream": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", + "integrity": "sha1-k4NwpXtKUd6ix3wV1cX9+JUWQAk=", + "dev": true, + "requires": { + "delayed-stream": "1.0.0" + } + }, + "compress-commons": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", + "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=", + "dev": true, + "requires": { + "buffer-crc32": "0.2.13", + "crc32-stream": "2.0.0", + "normalize-path": "2.1.1", + "readable-stream": "2.3.3" + } + }, + "concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true + }, + "core-js": { + "version": "2.5.3", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.3.tgz", + "integrity": "sha1-isw4NFgk8W2DZbfJtCWRaOjtYD4=", + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "crc": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz", + "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=", + "dev": true + }, + "crc32-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz", + "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=", + "dev": true, + "requires": { + "crc": "3.5.0", + "readable-stream": "2.3.3" + } + }, + "cryptiles": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", + "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "dev": true, + "requires": { + "boom": "2.10.1" + } + }, + "css": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/css/-/css-2.2.1.tgz", + "integrity": "sha1-c6TIHehdtmTU7mdPfUcIXjstVdw=", + "dev": true, + "requires": { + "inherits": "2.0.3", + "source-map": "0.1.43", + "source-map-resolve": "0.3.1", + "urix": "0.1.0" + } + }, + "css-parse": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", + "integrity": "sha1-pGjuZnwW2BzPBcWMONKpfHgNv9Q=", + "dev": true, + "requires": { + "css": "2.2.1" + } + }, + "css-value": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/css-value/-/css-value-0.0.1.tgz", + "integrity": "sha1-Xv1sLupeof1rasV+wEJ7GEUkJOo=", + "dev": true + }, + "dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "deepmerge": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.3.2.tgz", + "integrity": "sha1-FmNpFinU2/42T6EqKk8KqGqjoFA=", + "dev": true + }, + "delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "dev": true + }, + "ecc-jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", + "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=", + "dev": true, + "optional": true, + "requires": { + "jsbn": "0.1.1" + } + }, + "ejs": { + "version": "2.5.7", + "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", + "integrity": "sha1-zIcsFoiArjxxiXYv1f/ACJbJUYo=", + "dev": true + }, + "end-of-stream": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", + "integrity": "sha1-epDYM+/abPpurA9JSduw+tOmMgY=", + "dev": true, + "requires": { + "once": "1.4.0" + } + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", "dev": true - } - } - }, - "sntp": { - "version": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha1-LGzsFP7cIiJznK+bXD2F0cxaLMg=", - "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-4.2.0.tgz" - } - }, - "source-map": { - "version": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "requires": { - "amdefine": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" - } - }, - "source-map-resolve": { - "version": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", - "integrity": "sha1-YQ9hIqRFuN1RU1oqcbeD38Ekh2E=", - "dev": true, - "requires": { - "atob": "https://registry.npmjs.org/atob/-/atob-1.1.3.tgz", - "resolve-url": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", - "source-map-url": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "urix": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz" - } - }, - "source-map-url": { - "version": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", - "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=", - "dev": true - }, - "spdx-correct": { - "version": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", - "integrity": "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=", - "requires": { - "spdx-license-ids": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz" - } - }, - "spdx-expression-parse": { - "version": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz", - "integrity": "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" - }, - "spdx-license-ids": { - "version": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz", - "integrity": "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" - }, - "sprintf-js": { - "version": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true - }, - "sshpk": { - "version": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", - "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", - "requires": { - "asn1": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz", - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "bcrypt-pbkdf": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz", - "dashdash": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "ecc-jsbn": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz", - "getpass": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "jsbn": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "tweetnacl": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" - } - }, - "stack-trace": { - "version": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", - "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" - }, - "staged-git-files": { - "version": "https://registry.npmjs.org/staged-git-files/-/staged-git-files-0.0.4.tgz", - "integrity": "sha1-15fhtVHKemOd7AI33G60u5vhfTU=", - "dev": true - }, - "stdout-stream": { - "version": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz", - "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=", - "requires": { - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - } - }, - "stream-parser": { - "version": "https://registry.npmjs.org/stream-parser/-/stream-parser-0.3.1.tgz", - "integrity": "sha1-FhhUhpRCACGhGC/wrxkRwSl2F3M=", - "requires": { - "debug": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - } - }, - "stream-to-observable": { - "version": "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.1.0.tgz", - "integrity": "sha1-Rb8dny19wJvtgfHDB8Qw5ouEz/4=", - "dev": true - }, - "strict-uri-encode": { - "version": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" - }, - "string_decoder": { - "version": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", - "integrity": "sha1-D8Z9fBQYJd6UKC3VNr7GubzoYKs=", - "requires": { - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" - } - }, - "string-hash": { - "version": "https://registry.npmjs.org/string-hash/-/string-hash-1.1.3.tgz", - "integrity": "sha1-6Kr8CsGFW0Zmkp7X3RJ1311sgRs=" - }, - "string-width": { - "version": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" - } - }, - "stringify-object": { - "version": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.2.1.tgz", - "integrity": "sha1-JyDC7/lAhUyBn27iUqrrWB8wYk0=", - "dev": true, - "requires": { - "get-own-enumerable-property-symbols": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-2.0.1.tgz", - "is-obj": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "is-regexp": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz" - } - }, - "stringstream": { - "version": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" - }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" - } - }, - "strip-bom": { - "version": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "requires": { - "is-utf8": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" - } - }, - "strip-eof": { - "version": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-indent": { - "version": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "requires": { - "get-stdin": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz" - } - }, - "strip-json-comments": { - "version": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" - }, - "symbol-observable": { - "version": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz", - "integrity": "sha1-Kb9hXUqnEhvdiYsi1LP5vE4qoD0=", - "dev": true - }, - "table": { - "version": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "integrity": "sha1-ozRHN1OR52atNNNIbm4q7chNLjY=", - "dev": true, - "requires": { - "ajv": "https://registry.npmjs.org/ajv/-/ajv-5.3.0.tgz", - "ajv-keywords": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "slice-ansi": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz" - }, - "dependencies": { - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + }, + "external-editor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.1.0.tgz", + "integrity": "sha512-E44iT5QVOUJBKij4IIV3uvxuNlbKS38Tw1HiupxEIHPv9qtC2PrDYohbXV5U+1jnfIXttny8gUhj+oZvflFlzA==", + "dev": true, + "requires": { + "chardet": "0.4.2", + "iconv-lite": "0.4.19", + "tmp": "0.0.33" + } + }, + "extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", "dev": true }, - "ansi-styles": { - "version": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "integrity": "sha1-wVm41b4PnlpvNG2rlPFs4CIWG4g=", + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "color-convert": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" + "escape-string-regexp": "1.0.5" } }, - "chalk": { - "version": "https://registry.npmjs.org/chalk/-/chalk-2.3.0.tgz", - "integrity": "sha1-tepI78nBeT3MybR2fJORTT8tUro=", + "forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "dev": true + }, + "form-data": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", + "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", "dev": true, "requires": { - "ansi-styles": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", - "escape-string-regexp": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz" + "asynckit": "0.4.0", + "combined-stream": "1.0.5", + "mime-types": "2.1.17" } }, - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "dev": true }, - "string-width": { - "version": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "gaze": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", + "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", "dev": true, "requires": { - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" + "globule": "1.2.0" } }, - "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "dev": true, "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + "assert-plus": "1.0.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } } }, - "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "glob": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", + "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz" + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" } - } - } - }, - "tar": { - "version": "https://registry.npmjs.org/tar/-/tar-2.2.1.tgz", - "integrity": "sha1-jk0qJWwOIYXGsYrWlK7JaLg8sdE=", - "requires": { - "block-stream": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "fstream": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", - "inherits": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" - } - }, - "tar-stream": { - "version": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.4.tgz", - "integrity": "sha1-NlSc8E7RrumyowwBQyUiONr5QBY=", - "dev": true, - "requires": { - "bl": "https://registry.npmjs.org/bl/-/bl-1.2.1.tgz", - "end-of-stream": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.0.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", - "xtend": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" - } - }, - "text-table": { - "version": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, - "through": { - "version": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, - "timed-out": { - "version": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" - }, - "tiny-emitter": { - "version": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.2.tgz", - "integrity": "sha512-2NM0auVBGft5tee/OxP4PI3d8WItkDM+fPnaRAVo6xTDI2knbz9eC5ArWGqtGlYqiH3RU5yMpdyTTO7MguC4ow==" - }, - "tinycolor2": { - "version": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.1.tgz", - "integrity": "sha1-9PrTM0R7wLB9TcjpIJ2POaisd+g=" - }, - "tmp": { - "version": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=", - "dev": true, - "requires": { - "os-tmpdir": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" - } - }, - "tough-cookie": { - "version": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", - "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", - "requires": { - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz" - } - }, - "trim-newlines": { - "version": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=" - }, - "tryit": { - "version": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz", - "integrity": "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=", - "dev": true - }, - "tunnel-agent": { - "version": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "requires": { - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" - } - }, - "tweetnacl": { - "version": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "optional": true - }, - "type-check": { - "version": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", - "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, - "requires": { - "prelude-ls": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" - } - }, - "type-detect": { - "version": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.3.tgz", - "integrity": "sha1-Dj8mcLRAmbC0bChNE2p+9Jx0wuo=", - "dev": true - }, - "typedarray": { - "version": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "ua-parser-js": { - "version": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.17.tgz", - "integrity": "sha1-6exflJi57JEOeuOsYmqAXE0J7Kw=" - }, - "uniq": { - "version": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", - "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", - "dev": true - }, - "urix": { - "version": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", - "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", - "dev": true - }, - "url": { - "version": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "querystring": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz" - }, - "dependencies": { - "punycode": { - "version": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + }, + "globule": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", + "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", + "dev": true, + "requires": { + "glob": "7.1.2", + "lodash": "4.17.4", + "minimatch": "3.0.4" + } + }, + "graceful-fs": { + "version": "4.1.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", "dev": true - } - } - }, - "url-parse-lax": { - "version": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", - "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", - "requires": { - "prepend-http": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz" - } - }, - "url-to-options": { - "version": "https://registry.npmjs.org/url-to-options/-/url-to-options-1.0.1.tgz", - "integrity": "sha1-FQWgOiiaSMvXpDTvuu7FBV9WM6k=" - }, - "util-deprecate": { - "version": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" - }, - "uuid": { - "version": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", - "integrity": "sha1-PdPT55Crwk17DToDT/q6vijrvAQ=" - }, - "validate-npm-package-license": { - "version": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz", - "integrity": "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=", - "requires": { - "spdx-correct": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz", - "spdx-expression-parse": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz" - } - }, - "validator": { - "version": "https://registry.npmjs.org/validator/-/validator-7.0.0.tgz", - "integrity": "sha1-x03rgGNRL6w1VHk45vCxUEooL9I=", - "dev": true - }, - "verror": { - "version": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "core-util-is": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", - "extsprintf": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" - } - }, - "walkdir": { - "version": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", - "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", - "dev": true - }, - "warning": { - "version": "https://registry.npmjs.org/warning/-/warning-3.0.0.tgz", - "integrity": "sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=", - "requires": { - "loose-envify": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz" - } - }, - "wdio-dot-reporter": { - "version": "https://registry.npmjs.org/wdio-dot-reporter/-/wdio-dot-reporter-0.0.9.tgz", - "integrity": "sha1-kpsq2v1J1rBTT9oGjocxm0fjj+U=", - "dev": true - }, - "wdio-jasmine-framework": { - "version": "https://registry.npmjs.org/wdio-jasmine-framework/-/wdio-jasmine-framework-0.3.2.tgz", - "integrity": "sha1-l4QSFCEqm1f3DZB3Tw2bR759+YE=", - "dev": true, - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "jasmine": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", - "wdio-sync": "https://registry.npmjs.org/wdio-sync/-/wdio-sync-0.7.0.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "integrity": "sha1-M7mOql1IK7AajRqmtDetKwGuxBw=", + }, + "har-schema": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", + "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", + "dev": true + }, + "har-validator": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", + "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", "dev": true, "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz" + "ajv": "4.11.8", + "har-schema": "1.0.5" } }, - "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", "dev": true - } - } - }, - "wdio-junit-reporter": { - "version": "https://registry.npmjs.org/wdio-junit-reporter/-/wdio-junit-reporter-0.3.1.tgz", - "integrity": "sha1-d7G/RFDTGw+VuswW3Bunv8vY/gk=", - "dev": true, - "requires": { - "junit-report-builder": "https://registry.npmjs.org/junit-report-builder/-/junit-report-builder-1.2.0.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" - } - }, - "wdio-spec-reporter": { - "version": "https://registry.npmjs.org/wdio-spec-reporter/-/wdio-spec-reporter-0.1.2.tgz", - "integrity": "sha1-kcb2CX+SrSUc0rZuOIUFxMDiR2A=", - "dev": true, - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "humanize-duration": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.10.1.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "integrity": "sha1-M7mOql1IK7AajRqmtDetKwGuxBw=", + }, + "hawk": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", + "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", "dev": true, "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz" + "boom": "2.10.1", + "cryptiles": "2.0.5", + "hoek": "2.16.3", + "sntp": "1.0.9" } }, - "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "hoek": { + "version": "2.16.3", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", + "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", "dev": true - } - } - }, - "wdio-sync": { - "version": "https://registry.npmjs.org/wdio-sync/-/wdio-sync-0.7.0.tgz", - "integrity": "sha1-L7B9JQEh3IH1Y1MWVCw8SaEiAWg=", - "dev": true, - "requires": { - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "fibers": "https://registry.npmjs.org/fibers/-/fibers-2.0.0.tgz", - "object.assign": "https://registry.npmjs.org/object.assign/-/object.assign-4.0.4.tgz" - }, - "dependencies": { - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.25.0.tgz", - "integrity": "sha1-M7mOql1IK7AajRqmtDetKwGuxBw=", + }, + "http-signature": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", + "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", "dev": true, "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz" + "assert-plus": "0.2.0", + "jsprim": "1.4.1", + "sshpk": "1.13.1" } }, - "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", - "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", + "iconv-lite": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", + "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", "dev": true - } - } - }, - "webdriverio": { - "version": "https://registry.npmjs.org/webdriverio/-/webdriverio-4.8.0.tgz", - "integrity": "sha1-1Skpt0kID4mWf24WFAUcvIFy0TI=", - "dev": true, - "requires": { - "archiver": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz", - "babel-runtime": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.23.0.tgz", - "css-parse": "https://registry.npmjs.org/css-parse/-/css-parse-2.0.0.tgz", - "css-value": "https://registry.npmjs.org/css-value/-/css-value-0.0.1.tgz", - "deepmerge": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.3.2.tgz", - "ejs": "https://registry.npmjs.org/ejs/-/ejs-2.5.7.tgz", - "gaze": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "glob": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", - "inquirer": "https://registry.npmjs.org/inquirer/-/inquirer-3.0.6.tgz", - "json-stringify-safe": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "npm-install-package": "https://registry.npmjs.org/npm-install-package/-/npm-install-package-2.1.0.tgz", - "optimist": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", - "q": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", - "request": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "rgb2hex": "https://registry.npmjs.org/rgb2hex/-/rgb2hex-0.1.0.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", - "supports-color": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "url": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "validator": "https://registry.npmjs.org/validator/-/validator-7.0.0.tgz", - "wdio-dot-reporter": "https://registry.npmjs.org/wdio-dot-reporter/-/wdio-dot-reporter-0.0.9.tgz", - "wgxpath": "https://registry.npmjs.org/wgxpath/-/wgxpath-1.0.0.tgz" - }, - "dependencies": { - "ajv": { - "version": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", + }, + "inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", + "dev": true + }, + "inquirer": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.0.6.tgz", + "integrity": "sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c=", "dev": true, "requires": { - "co": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "json-stable-stringify": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" + "ansi-escapes": "1.4.0", + "chalk": "1.1.3", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "2.1.0", + "figures": "2.0.0", + "lodash": "4.17.4", + "mute-stream": "0.0.7", + "run-async": "2.3.0", + "rx": "4.1.0", + "string-width": "2.1.1", + "strip-ansi": "3.0.1", + "through": "2.3.8" } }, - "ansi-escapes": { - "version": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", "dev": true }, - "ansi-regex": { - "version": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "assert-plus": { - "version": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", + "is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", "dev": true }, - "aws-sign2": { - "version": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "babel-runtime": { - "version": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.23.0.tgz", - "integrity": "sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs=", + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", + "dev": true + }, + "jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", + "dev": true, + "optional": true + }, + "json-schema": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", + "dev": true + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", "dev": true, "requires": { - "core-js": "https://registry.npmjs.org/core-js/-/core-js-2.5.1.tgz", - "regenerator-runtime": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz" + "jsonify": "0.0.0" } }, - "boom": { - "version": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", + "json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", + "dev": true + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", + "dev": true + }, + "jsprim": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", + "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", "dev": true, "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.2.3", + "verror": "1.10.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } } }, - "cryptiles": { - "version": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", + "lazystream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", + "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", "dev": true, "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz" + "readable-stream": "2.3.3" } }, - "deepmerge": { - "version": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.3.2.tgz", - "integrity": "sha1-FmNpFinU2/42T6EqKk8KqGqjoFA=", + "mime-db": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.30.0.tgz", + "integrity": "sha1-dMZD2i3Z1qRTmZY0ZbJtXKfXHwE=", "dev": true }, - "form-data": { - "version": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", + "mime-types": { + "version": "2.1.17", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", + "integrity": "sha1-Cdejk/A+mVp5+K+Fe3Cp4KsWVXo=", "dev": true, "requires": { - "asynckit": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz" + "mime-db": "1.30.0" } }, - "har-schema": { - "version": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", + "mimic-fn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", + "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", "dev": true }, - "har-validator": { - "version": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", + "minimatch": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", + "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, "requires": { - "ajv": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "har-schema": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz" + "brace-expansion": "1.1.8" } }, - "has-flag": { - "version": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "minimist": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, - "hawk": { - "version": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "mkdirp": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", + "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", "dev": true, "requires": { - "boom": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "cryptiles": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "sntp": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz" + "minimist": "0.0.8" } }, - "hoek": { - "version": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", "dev": true }, - "http-signature": { - "version": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", + "normalize-path": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", + "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "assert-plus": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "jsprim": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "sshpk": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz" + "remove-trailing-separator": "1.1.0" } }, - "inquirer": { - "version": "https://registry.npmjs.org/inquirer/-/inquirer-3.0.6.tgz", - "integrity": "sha1-4EqqnQW3o8ubD0B9BDdfBEcZA0c=", + "npm-install-package": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/npm-install-package/-/npm-install-package-2.1.0.tgz", + "integrity": "sha1-1+/jz816sAYUuJbqUxGdyaslkSU=", + "dev": true + }, + "oauth-sign": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", + "integrity": "sha1-Rqarfwrq2N6unsBWV4C31O/rnUM=", + "dev": true + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "ansi-escapes": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", - "chalk": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "cli-cursor": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "cli-width": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "external-editor": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", - "figures": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "mute-stream": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "run-async": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "rx": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "through": "https://registry.npmjs.org/through/-/through-2.3.8.tgz" + "wrappy": "1.0.2" } }, - "is-fullwidth-code-point": { - "version": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "1.1.0" + } + }, + "optimist": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", + "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, + "requires": { + "minimist": "0.0.8", + "wordwrap": "0.0.3" + } + }, + "os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "dev": true + }, + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", "dev": true }, "performance-now": { - "version": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", "dev": true }, + "process-nextick-args": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", + "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=", + "dev": true + }, "qs": { - "version": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", "dev": true }, + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", + "dev": true + }, + "readable-stream": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", + "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", + "dev": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "1.0.7", + "safe-buffer": "5.1.1", + "string_decoder": "1.0.3", + "util-deprecate": "1.0.2" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + } + } + }, "regenerator-runtime": { - "version": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", "dev": true }, + "remove-trailing-separator": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true + }, "request": { - "version": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", + "version": "2.81.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", "dev": true, "requires": { - "aws-sign2": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "aws4": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz", - "caseless": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "combined-stream": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.5.tgz", - "extend": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "forever-agent": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "form-data": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "har-validator": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "hawk": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "http-signature": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "is-typedarray": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "isstream": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "json-stringify-safe": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "mime-types": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.17.tgz", - "oauth-sign": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.8.2.tgz", - "performance-now": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "qs": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "safe-buffer": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", - "stringstream": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "tough-cookie": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", - "tunnel-agent": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "uuid": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz" + "aws-sign2": "0.6.0", + "aws4": "1.6.0", + "caseless": "0.12.0", + "combined-stream": "1.0.5", + "extend": "3.0.1", + "forever-agent": "0.6.1", + "form-data": "2.1.4", + "har-validator": "4.2.1", + "hawk": "3.1.3", + "http-signature": "1.1.1", + "is-typedarray": "1.0.0", + "isstream": "0.1.2", + "json-stringify-safe": "5.0.1", + "mime-types": "2.1.17", + "oauth-sign": "0.8.2", + "performance-now": "0.2.0", + "qs": "6.4.0", + "safe-buffer": "5.0.1", + "stringstream": "0.0.5", + "tough-cookie": "2.3.3", + "tunnel-agent": "0.6.0", + "uuid": "3.1.0" + } + }, + "resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", + "dev": true + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "2.0.1", + "signal-exit": "3.0.2" + } + }, + "rgb2hex": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/rgb2hex/-/rgb2hex-0.1.0.tgz", + "integrity": "sha1-zNVfhgrgxcTqN1BLlY5ELY0SMls=", + "dev": true + }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "2.1.0" } }, + "rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha1-pfE/957zt0D+MKqAP7CfmIBdR4I=", + "dev": true + }, "safe-buffer": { - "version": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", "integrity": "sha1-0mPKVGls2KMGtcplUekt5XkY++c=", "dev": true }, + "signal-exit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true + }, "sntp": { - "version": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", "dev": true, "requires": { - "hoek": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz" + "hoek": "2.16.3" + } + }, + "source-map": { + "version": "0.1.43", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz", + "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", + "dev": true, + "requires": { + "amdefine": "1.0.1" + } + }, + "source-map-resolve": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.3.1.tgz", + "integrity": "sha1-YQ9hIqRFuN1RU1oqcbeD38Ekh2E=", + "dev": true, + "requires": { + "atob": "1.1.3", + "resolve-url": "0.2.1", + "source-map-url": "0.3.0", + "urix": "0.1.0" + } + }, + "source-map-url": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.3.0.tgz", + "integrity": "sha1-fsrxO1e80J2opAxdJp2zN5nUqvk=", + "dev": true + }, + "sshpk": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.13.1.tgz", + "integrity": "sha1-US322mKHFEMW3EwY/hzx2UBzm+M=", + "dev": true, + "requires": { + "asn1": "0.2.3", + "assert-plus": "1.0.0", + "bcrypt-pbkdf": "1.0.1", + "dashdash": "1.14.1", + "ecc-jsbn": "0.1.1", + "getpass": "0.1.7", + "jsbn": "0.1.1", + "tweetnacl": "0.14.5" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } } }, "string-width": { - "version": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "is-fullwidth-code-point": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz" + "is-fullwidth-code-point": "2.0.0", + "strip-ansi": "4.0.0" }, "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, "strip-ansi": { - "version": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz" + "ansi-regex": "3.0.0" } } } }, + "string_decoder": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", + "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", + "dev": true, + "requires": { + "safe-buffer": "5.1.1" + }, + "dependencies": { + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", + "dev": true + } + } + }, + "stringstream": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", + "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", + "dev": true + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, "supports-color": { - "version": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", "dev": true, "requires": { - "has-flag": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz" + "has-flag": "1.0.0" + } + }, + "tar-stream": { + "version": "1.5.5", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-1.5.5.tgz", + "integrity": "sha512-mQdgLPc/Vjfr3VWqWbfxW8yQNiJCbAZ+Gf6GDu1Cy0bdb33ofyiNGBtAY96jHFhDuivCwgW1H9DgTON+INiXgg==", + "dev": true, + "requires": { + "bl": "1.2.1", + "end-of-stream": "1.4.0", + "readable-stream": "2.3.3", + "xtend": "4.0.1" + } + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "dev": true + }, + "tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dev": true, + "requires": { + "os-tmpdir": "1.0.2" + } + }, + "tough-cookie": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz", + "integrity": "sha1-C2GKVWW23qkL80JdBNVe3EdadWE=", + "dev": true, + "requires": { + "punycode": "1.4.1" + } + }, + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dev": true, + "requires": { + "safe-buffer": "5.0.1" + } + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "dev": true, + "optional": true + }, + "urix": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", + "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", + "dev": true + }, + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", + "dev": true, + "requires": { + "punycode": "1.3.2", + "querystring": "0.2.0" + }, + "dependencies": { + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", + "dev": true + } + } + }, + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", + "dev": true + }, + "uuid": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==", + "dev": true + }, + "validator": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-7.0.0.tgz", + "integrity": "sha1-x03rgGNRL6w1VHk45vCxUEooL9I=", + "dev": true + }, + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "dev": true, + "requires": { + "assert-plus": "1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "1.3.0" + }, + "dependencies": { + "assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "dev": true + } + } + }, + "walkdir": { + "version": "0.0.11", + "resolved": "https://registry.npmjs.org/walkdir/-/walkdir-0.0.11.tgz", + "integrity": "sha1-oW0CXrkxvQO1LzCMrtD0D86+lTI=", + "dev": true + }, + "wdio-dot-reporter": { + "version": "0.0.9", + "resolved": "https://registry.npmjs.org/wdio-dot-reporter/-/wdio-dot-reporter-0.0.9.tgz", + "integrity": "sha1-kpsq2v1J1rBTT9oGjocxm0fjj+U=", + "dev": true + }, + "wgxpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wgxpath/-/wgxpath-1.0.0.tgz", + "integrity": "sha1-7vikudVYzEla06mit1FZfs2a9pA=", + "dev": true + }, + "wordwrap": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true + }, + "wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true + }, + "xtend": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true + }, + "zip-stream": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", + "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", + "dev": true, + "requires": { + "archiver-utils": "1.3.0", + "compress-commons": "1.2.2", + "lodash": "4.17.4", + "readable-stream": "2.3.3" } } } }, - "wgxpath": { - "version": "https://registry.npmjs.org/wgxpath/-/wgxpath-1.0.0.tgz", - "integrity": "sha1-7vikudVYzEla06mit1FZfs2a9pA=", - "dev": true - }, - "whatwg-fetch": { - "version": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", - "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=" - }, - "which": { - "version": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", - "integrity": "sha1-/wS9/AEO5UfXgL7DjhrBwnd9JTo=", - "requires": { - "isexe": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" - } - }, - "which-module": { - "version": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" - }, - "wide-align": { - "version": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha1-Vx4PGwYEY268DfwhsDObvjE0FxA=", - "requires": { - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" - } - }, "winston": { - "version": "https://registry.npmjs.org/winston/-/winston-2.4.0.tgz", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/winston/-/winston-2.4.0.tgz", "integrity": "sha1-gIBQuT1SZh7Z+2wms/DIJnCLCu4=", "requires": { - "async": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", - "colors": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "cycle": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", - "eyes": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", - "isstream": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "stack-trace": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz" - } - }, - "wordwrap": { - "version": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", - "dev": true - }, - "wrap-ansi": { - "version": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "requires": { - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "strip-ansi": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" - } - }, - "wrappy": { - "version": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" - }, - "write": { - "version": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", - "dev": true, - "requires": { - "mkdirp": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz" - } - }, - "xml2js": { - "version": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha1-aGwg8hMgnpSr8NG88e+qKRx4J6c=", - "requires": { - "sax": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "xmlbuilder": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.4.tgz" - } - }, - "xmlbuilder": { - "version": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.4.tgz", - "integrity": "sha1-UZy0ymhtAFqEINNJbz8MruzKWA8=" - }, - "xtend": { - "version": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true - }, - "y18n": { - "version": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=" - }, - "yallist": { - "version": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - }, - "yargs": { - "version": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "requires": { - "camelcase": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "cliui": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "decamelize": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "get-caller-file": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "os-locale": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "read-pkg-up": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "require-directory": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "require-main-filename": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "set-blocking": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "string-width": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "which-module": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "y18n": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "yargs-parser": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz" + "async": "1.0.0", + "colors": "1.0.3", + "cycle": "1.0.3", + "eyes": "0.1.8", + "isstream": "0.1.2", + "stack-trace": "0.0.10" }, "dependencies": { - "camelcase": { - "version": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + "async": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async/-/async-1.0.0.tgz", + "integrity": "sha1-+PwEyjoTeErenhZBr5hXjPvWR6k=" + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=" + }, + "cycle": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/cycle/-/cycle-1.0.3.tgz", + "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=" + }, + "eyes": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/eyes/-/eyes-0.1.8.tgz", + "integrity": "sha1-Ys8SAjTGg3hdkCNIqADvPgzCC8A=" + }, + "isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "stack-trace": { + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz", + "integrity": "sha1-VHxws0fo0ytOEI6hoqFZ5f3eGcA=" } } }, - "yargs-parser": { - "version": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", "requires": { - "camelcase": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz" + "sax": "1.2.4", + "xmlbuilder": "9.0.4" }, "dependencies": { - "camelcase": { - "version": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "xmlbuilder": { + "version": "9.0.4", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.4.tgz", + "integrity": "sha1-UZy0ymhtAFqEINNJbz8MruzKWA8=" } } - }, - "zip-stream": { - "version": "https://registry.npmjs.org/zip-stream/-/zip-stream-1.2.0.tgz", - "integrity": "sha1-qLxF9MG0lpnGuQGYuqyqzbzUugQ=", - "dev": true, - "requires": { - "archiver-utils": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz", - "compress-commons": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz", - "lodash": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", - "readable-stream": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz" - } } } } diff --git a/bigbluebutton-html5/package.json b/bigbluebutton-html5/package.json old mode 100755 new mode 100644 index 705ed0c82e46cf72afd3687229b0ae23351a8b9d..5b77efb216b1cec2b28f7237010e2020adf99eb2 --- a/bigbluebutton-html5/package.json +++ b/bigbluebutton-html5/package.json @@ -3,8 +3,8 @@ "description": "BigBlueButton HTML5 Client", "scripts": { "start": "if test \"$NODE_ENV\" = \"production\" ; then npm run start:prod; else npm run start:dev; fi", - "start:prod": "meteor reset && ROOT_URL=http://127.0.0.1/html5client NODE_ENV=production meteor --production", - "start:dev": "ROOT_URL=http://127.0.0.1/html5client NODE_ENV=development meteor", + "start:prod": "meteor reset && ROOT_URL=http://127.0.0.1/html5client NODE_ENV=production meteor --production --settings private/config/settings-production.json", + "start:dev": "ROOT_URL=http://127.0.0.1/html5client NODE_ENV=development meteor --settings private/config/settings-development.json", "test": "wdio ./tests/webdriverio/wdio.conf.js", "lint": "eslint . --ext .jsx,.js", "precommit": "lint-staged" @@ -20,6 +20,12 @@ }, "dependencies": { "babel-runtime": "~6.26.0", + "//": [ + "core-js is included with babel-runtime", + "but Meteor 1.6.0.1 doesn't see it there for some reason", + "need to investigate" + ], + "core-js": "~2.5.3", "classnames": "~2.2.5", "clipboard": "~1.7.1", "eventemitter2": "~4.1.2", @@ -27,6 +33,7 @@ "hiredis": "~0.5.0", "history": "~3.3.0", "immutability-helper": "~2.4.0", + "langmap": "0.0.16", "lodash": "~4.17.4", "meteor-node-stubs": "~0.3.2", "node-sass": "~4.5.3", @@ -46,7 +53,7 @@ "react-transition-group": "~2.2.1", "redis": "~2.8.0", "string-hash": "~1.1.3", - "tippy.js": "^2.0.2", + "tippy.js": "~2.0.2", "winston": "~2.4.0", "xml2js": "~0.4.19" }, diff --git a/bigbluebutton-html5/private/config/development/public/app.yaml b/bigbluebutton-html5/private/config/development/public/app.yaml deleted file mode 100644 index 72c0a871cc8d56227b0d854ad75741db43c589e1..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/development/public/app.yaml +++ /dev/null @@ -1,5 +0,0 @@ -# Application configurations -app: - # Flag for HTTPS. - httpsConnection: false - connectionTimeout: 60000 diff --git a/bigbluebutton-html5/private/config/development/server/log.yaml b/bigbluebutton-html5/private/config/development/server/log.yaml deleted file mode 100644 index 3f1918e3b2927c9b636088cadf3228112c9de22e..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/development/server/log.yaml +++ /dev/null @@ -1,3 +0,0 @@ -log: - filename: '/log/development.log' - level: 'verbose' diff --git a/bigbluebutton-html5/private/config/production/public/app.yaml b/bigbluebutton-html5/private/config/production/public/app.yaml deleted file mode 100644 index c2007ba81858574cd68e7e32b4bdec315d9e9355..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/production/public/app.yaml +++ /dev/null @@ -1,5 +0,0 @@ -# Application configurations -app: - # Flag for HTTPS. - httpsConnection: true - connectionTimeout: 10000 diff --git a/bigbluebutton-html5/private/config/production/server/log.yaml b/bigbluebutton-html5/private/config/production/server/log.yaml deleted file mode 100644 index ea241a6194da5c26585494f49ff1cc745e898b14..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/production/server/log.yaml +++ /dev/null @@ -1,3 +0,0 @@ -log: - filename: '/var/log/bigbluebutton/html5/html5client.log' - level: 'warn' diff --git a/bigbluebutton-html5/private/config/public/acl.yaml b/bigbluebutton-html5/private/config/public/acl.yaml deleted file mode 100644 index 2bd75779a3509a0feb5341ddafa64a8d15311015..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/acl.yaml +++ /dev/null @@ -1,45 +0,0 @@ -acl: - viewer: - subscriptions: - - 'users' - - 'cursor' - - 'screenshare' - - 'meetings' - - 'polls' - - 'chat' - - 'presentations' - - 'annotations' - - 'slides' - - 'captions' - - 'breakouts' - - 'voiceUsers' - - 'whiteboard-multi-user' - methods: - - 'listenOnlyToggle' - - 'userLogout' - - 'setEmojiStatus' - - 'toggleSelfVoice' - - 'publishVote' - - 'sendChat' - moderator: - methods: - - 'assignPresenter' - - 'kickUser' - - 'muteUser' - - 'unmuteUser' - - 'endMeeting' - - 'toggleVoice' - - 'clearPublicChatHistory' - - 'changeRole' - - 'ejectUserFromVoice' - presenter: - methods: - - 'assignPresenter' - - 'switchSlide' - - 'modifyWhiteboardAccess' - - 'undoAnnotation' - - 'clearWhiteboard' - - 'moveCursor' - - 'sendAnnotation' - - 'removePresentation' - - 'setPresentation' diff --git a/bigbluebutton-html5/private/config/public/app.yaml b/bigbluebutton-html5/private/config/public/app.yaml deleted file mode 100644 index 7dffde82262185e1195ca62804eba5c573807ac7..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/app.yaml +++ /dev/null @@ -1,57 +0,0 @@ -# Application configurations -app: - # Default font sizes for mobile / desktop - mobileFont: 16 - desktopFont: 14 - - # Audio notification for unread chat message - audioChatNotification: false - - # Will offer the user to join the audio when entering the meeting - autoJoinAudio: true - listenOnly: false - skipCheck: false - - # Default global variables - appName: 'BigBlueButton HTML5 Client' - bbbServerVersion: '2.0-beta' - copyright: '©2017 BigBlueButton Inc.' - html5ClientBuild: 'HTML5_CLIENT_VERSION' - lockOnJoin: true - - # Name displayed in the brower URL - basename: '/html5client' - - #default settings for session storage - defaultSettings: - application: - chatAudioNotifications: false - chatPushNotifications: false - fontSize: '16px' - locale: 'en' - audio: - inputDeviceId: undefined - outputDeviceId: undefined - video: - viewParticipantsWebcams: true - cc: - backgroundColor: '#FFFFFF' - fontColor: '#000000' - enabled: false - fontFamily: 'Calibri' - fontSize: '16px' - # locale: undefined - takeOwnership: false - participants: - muteAll: false - lockAll: false - lockAll: false - microphone: false - publicChat: false - privateChat: false - layout: false - - # The initial client version has limited moderator capabilities - # The following flag disables moderator-only features - allowHTML5Moderator: true - allowModeratorToUnmuteAudio: true diff --git a/bigbluebutton-html5/private/config/public/chat.yaml b/bigbluebutton-html5/private/config/public/chat.yaml deleted file mode 100644 index 81bc370d11c44b28707c34f2b75b30e6438a1437..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/chat.yaml +++ /dev/null @@ -1,21 +0,0 @@ -# Chat service configurations -chat: - min_message_length: 1 - max_message_length: 5000 - grouping_messages_window: 60000 - # Chat types - type_system: 'SYSTEM_MESSAGE' - type_public: 'PUBLIC_CHAT' - type_private: 'PRIVATE_CHAT' - # Chat ids and names - system_userid: 'SYSTEM_MESSAGE' - system_username: 'SYSTEM_MESSAGE' - public_id: 'public' - public_userid: 'public_chat_userid' - public_username: 'public_chat_username' - # Keys - storage_key: 'UNREAD_CHATS' - # Chat paths - path_route: 'users/chat/' - system_messages_keys: - chat_clear: 'PUBLIC_CHAT_CLEAR' diff --git a/bigbluebutton-html5/private/config/public/media.yaml b/bigbluebutton-html5/private/config/public/media.yaml deleted file mode 100644 index 23329f1e456b1db739173b5a88a89193635af40d..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/media.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Media configurations -media: - WebRTCHangupRetryInterval: 2000 - # IP address of FreeSWITCH server for use of mod_verto and WebRTC deshsharing - vertoServerAddress: "HOST" - # Allows a caller to access a FreeSWITCH dialplan - freeswitchProfilePassword: "1234" # TODO: Remove once Danny's submitted PULL - vertoPort: "8082" - # specifies whether to use SIP.js for audio over mod_verto - useSIPAudio: true - stunTurnServersFetchAddress: '/bigbluebutton/api/stuns' - mediaTag: '#remote-media' - callTransferTimeout: 5000 - callHangupTimeout: 2000 - callHangupMaximumRetries: 10 - echoTestNumber: '9196' diff --git a/bigbluebutton-html5/private/config/public/presentation.yaml b/bigbluebutton-html5/private/config/public/presentation.yaml deleted file mode 100644 index c3af8a12cd622b25aa6f2db3117ed03509ce82bc..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/presentation.yaml +++ /dev/null @@ -1,24 +0,0 @@ -presentation: - defaultPresentationFile: 'default.pdf' - uploadEndpoint: '/bigbluebutton/presentation/upload' - uploadSizeMin: 0 - uploadSizeMax: 50000000 - uploadValidMimeTypes: - - 'application/vnd.ms-excel' - - 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' - - 'application/msword' - - 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' - - 'application/vnd.ms-powerpoint' - - 'application/vnd.openxmlformats-officedocument.presentationml.presentation' - - 'application/vnd.oasis.opendocument.text' - - 'application/rtf' - - 'text/plain' - - 'application/vnd.oasis.opendocument.spreadsheet' - - 'application/vnd.oasis.opendocument.presentation' - - 'application/vnd.oasis.opendocument.text' - - 'application/vnd.oasis.opendocument.graphics' - - 'application/vnd.oasis.opendocument.chart' - - 'application/vnd.oasis.opendocument.image' - - 'application/pdf' - - 'image/jpeg' - - 'image/png' diff --git a/bigbluebutton-html5/private/config/public/user.yaml b/bigbluebutton-html5/private/config/public/user.yaml deleted file mode 100644 index f3c874018c5cbd5a3bdae8886951be00a9617d9b..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/user.yaml +++ /dev/null @@ -1,4 +0,0 @@ -user: - role_moderator: 'MODERATOR' - role_viewer: 'VIEWER' - role_presenter: 'PRESENTER' diff --git a/bigbluebutton-html5/private/config/public/whiteboard.yaml b/bigbluebutton-html5/private/config/public/whiteboard.yaml deleted file mode 100644 index 40d6d0eb1ac4fdc589b17a437f3fbea0f78ac4f8..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/public/whiteboard.yaml +++ /dev/null @@ -1,59 +0,0 @@ -whiteboard: - #annotation statuses specific to the each type of annotation - annotations: - message_frequency: 50 - status: - start: 'DRAW_START' - update: 'DRAW_UPDATE' - end: 'DRAW_END' - toolbar: - colors: - - value: '#000000' - - value: '#ffffff' - - value: '#ff0000' - - value: '#ff8800' - - value: '#ccff00' - - value: '#00ff00' - - value: '#00ffff' - - value: '#0088ff' - - value: '#0000ff' - - value: '#8800ff' - - value: '#ff00ff' - - value: '#c0c0c0' - thickness: - - value: 14 - - value: 12 - - value: 10 - - value: 8 - - value: 6 - - value: 4 - - value: 2 - font_sizes: - - value: 36 - - value: 32 - - value: 28 - - value: 24 - - value: 20 - - value: 16 - tools: - #text - - icon: 'text_tool' - value: 'text' - #line - - icon: 'linte_tool' - value: 'line' - #ellipse - - icon: 'circle_tool' - value: 'ellipse' - #triangle - - icon: 'triangle_tool' - value: 'triangle' - #rectangle - - icon: 'rectangle_tool' - value: 'rectangle' - #pencil - - icon: 'pen_tool' - value: 'pencil' - #pan and zoom hand - - icon: 'hand' - value: 'hand' diff --git a/bigbluebutton-html5/private/config/server/app.yaml b/bigbluebutton-html5/private/config/server/app.yaml deleted file mode 100644 index a7517aa7f3198a3194a705705c47ace4d14bf553..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/server/app.yaml +++ /dev/null @@ -1,3 +0,0 @@ -app: - captionsChunkLength: 1000 - pencilChunkLength: 100 \ No newline at end of file diff --git a/bigbluebutton-html5/private/config/server/redis.yaml b/bigbluebutton-html5/private/config/server/redis.yaml deleted file mode 100644 index 9085b05efe3705b3d6aba68772c991f022b0b1c2..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/config/server/redis.yaml +++ /dev/null @@ -1,15 +0,0 @@ -redis: - host: '127.0.0.1' - post: '6379' - timeout: 5000 - debug: false - channels: - toAkkaApps: 'to-akka-apps-redis-channel' - subscribeTo: - - 'to-html5-redis-channel' - - 'from-akka-apps-*' - async: - - 'from-akka-apps-wb-redis-channel' - ignored: - - 'CheckAlivePongSysMsg' - - 'DoLatencyTracerMsg' diff --git a/bigbluebutton-html5/private/config/settings-development.json b/bigbluebutton-html5/private/config/settings-development.json new file mode 100644 index 0000000000000000000000000000000000000000..aa28943454ccf1663252a415c7d985ca6b681f0c --- /dev/null +++ b/bigbluebutton-html5/private/config/settings-development.json @@ -0,0 +1,353 @@ +{ + "public": { + + "app": { + "mobileFont": 16, + "desktopFont": 14, + "audioChatNotification": false, + "autoJoinAudio": true, + "listenOnly": false, + "skipCheck": false, + "appName": "BigBlueButton HTML5 Client", + "bbbServerVersion": "2.0-rc", + "copyright": "©2018 BigBlueButton Inc.", + "html5ClientBuild": "HTML5_CLIENT_VERSION", + "lockOnJoin": true, + "basename": "/html5client", + "defaultSettings": { + "application": { + "chatAudioNotifications": false, + "chatPushNotifications": false, + "fontSize": "16px", + "locale": "en" + }, + "audio": { + "inputDeviceId": "undefined", + "outputDeviceId": "undefined" + }, + "video": { + "viewParticipantsWebcams": true + }, + "cc": { + "backgroundColor": "#FFFFFF", + "fontColor": "#000000", + "enabled": false, + "fontFamily": "Calibri", + "fontSize": "16px", + "takeOwnership": false + }, + "participants": { + "muteAll": false, + "lockAll": false, + "microphone": false, + "publicChat": false, + "privateChat": false, + "layout": false + } + }, + "allowHTML5Moderator": true, + "allowModeratorToUnmuteAudio": true, + "httpsConnection": false, + "connectionTimeout": 60000 + }, + + "kurento": { + "wsUrl": "HOST", + "chromeExtensionKey": "KEY", + "chromeExtensionLink": "LINK", + "enableScreensharing": false, + "enableVideo": false + }, + + "acl": { + "viewer": { + "subscriptions": [ + "users", + "cursor", + "screenshare", + "meetings", + "polls", + "chat", + "presentations", + "annotations", + "slides", + "captions", + "breakouts", + "voiceUsers", + "whiteboard-multi-user" + ], + "methods": [ + "listenOnlyToggle", + "userLogout", + "setEmojiStatus", + "toggleSelfVoice", + "publishVote", + "sendChat" + ] + }, + "moderator": { + "methods": [ + "assignPresenter", + "removeUser", + "muteUser", + "unmuteUser", + "endMeeting", + "toggleVoice", + "clearPublicChatHistory", + "changeRole", + "ejectUserFromVoice" + ] + }, + "presenter": { + "methods": [ + "assignPresenter", + "switchSlide", + "modifyWhiteboardAccess", + "undoAnnotation", + "clearWhiteboard", + "moveCursor", + "sendAnnotation", + "removePresentation", + "setPresentation" + ] + } + }, + + "chat": { + "min_message_length": 1, + "max_message_length": 5000, + "grouping_messages_window": 60000, + "type_system": "SYSTEM_MESSAGE", + "type_public": "PUBLIC_CHAT", + "type_private": "PRIVATE_CHAT", + "system_userid": "SYSTEM_MESSAGE", + "system_username": "SYSTEM_MESSAGE", + "public_id": "public", + "public_userid": "public_chat_userid", + "public_username": "public_chat_username", + "storage_key": "UNREAD_CHATS", + "path_route": "users/chat/", + "system_messages_keys": { + "chat_clear": "PUBLIC_CHAT_CLEAR" + } + }, + + "media": { + "WebRTCHangupRetryInterval": 2000, + "vertoServerAddress": "HOST", + "freeswitchProfilePassword": "1234", + "vertoPort": "8082", + "useSIPAudio": true, + "stunTurnServersFetchAddress": "/bigbluebutton/api/stuns", + "mediaTag": "#remote-media", + "callTransferTimeout": 5000, + "callHangupTimeout": 2000, + "callHangupMaximumRetries": 10, + "echoTestNumber": "9196" + }, + + "presentation": { + "defaultPresentationFile": "default.pdf", + "uploadEndpoint": "/bigbluebutton/presentation/upload", + "uploadSizeMin": 0, + "uploadSizeMax": 50000000, + "uploadValidMimeTypes": [ + "application/vnd.ms-excel", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "application/msword", + "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "application/vnd.ms-powerpoint", + "application/vnd.openxmlformats-officedocument.presentationml.presentation", + "application/vnd.oasis.opendocument.text", + "application/rtf", + "text/plain", + "application/vnd.oasis.opendocument.spreadsheet", + "application/vnd.oasis.opendocument.presentation", + "application/vnd.oasis.opendocument.text", + "application/vnd.oasis.opendocument.graphics", + "application/vnd.oasis.opendocument.chart", + "application/vnd.oasis.opendocument.image", + "application/pdf", + "image/jpeg", + "image/png" + ] + }, + + "user": { + "role_moderator": "MODERATOR", + "role_viewer": "VIEWER", + "role_presenter": "PRESENTER" + }, + + "whiteboard": { + "annotations": { + "message_frequency": 50, + "status": { + "start": "DRAW_START", + "update": "DRAW_UPDATE", + "end": "DRAW_END" + } + }, + "toolbar": { + "colors": [ + { + "label": "black", + "value": "#000000" + }, + { + "label": "white", + "value": "#ffffff" + }, + { + "label": "red", + "value": "#ff0000" + }, + { + "label": "orange", + "value": "#ff8800" + }, + { + "label": "eletricLime", + "value": "#ccff00" + }, + { + "label": "Lime", + "value": "#00ff00" + }, + { + "label": "Cyan", + "value": "#00ffff" + }, + { + "label": "dodgerBlue", + "value": "#0088ff" + }, + { + "label": "blue", + "value": "#0000ff" + }, + { + "label": "violet", + "value": "#8800ff" + }, + { + "label": "magenta", + "value": "#ff00ff" + }, + { + "label": "silver", + "value": "#c0c0c0" + } + ], + "thickness": [ + { + "value": 14 + }, + { + "value": 12 + }, + { + "value": 10 + }, + { + "value": 8 + }, + { + "value": 6 + }, + { + "value": 4 + }, + { + "value": 2 + } + ], + "font_sizes": [ + { + "value": 36 + }, + { + "value": 32 + }, + { + "value": 28 + }, + { + "value": 24 + }, + { + "value": 20 + }, + { + "value": 16 + } + ], + "tools": [ + { + "icon": "text_tool", + "value": "text" + }, + { + "icon": "line_tool", + "value": "line" + }, + { + "icon": "circle_tool", + "value": "ellipse" + }, + { + "icon": "triangle_tool", + "value": "triangle" + }, + { + "icon": "rectangle_tool", + "value": "rectangle" + }, + { + "icon": "pen_tool", + "value": "pencil" + }, + { + "icon": "hand", + "value": "hand" + } + ] + } + } + }, + + "private": { + + "app": { + "captionsChunkLength": 1000, + "pencilChunkLength": 100 + }, + + "redis": { + "host": "127.0.0.1", + "post": "6379", + "timeout": 5000, + "debug": false, + "channels": { + "toAkkaApps": "to-akka-apps-redis-channel" + }, + "subscribeTo": [ + "to-html5-redis-channel", + "from-akka-apps-*" + ], + "async": [ + "from-akka-apps-wb-redis-channel" + ], + "ignored": [ + "CheckAlivePongSysMsg", + "DoLatencyTracerMsg" + ] + }, + + + "log": { + "filename": "/log/development.log", + "level": "info" + } + } +} diff --git a/bigbluebutton-html5/private/config/settings-production.json b/bigbluebutton-html5/private/config/settings-production.json new file mode 100644 index 0000000000000000000000000000000000000000..3f826e6cc0a725f19237ee05f7b5a0524ff22c56 --- /dev/null +++ b/bigbluebutton-html5/private/config/settings-production.json @@ -0,0 +1,340 @@ +{ + "public": { + + "app": { + "mobileFont": 16, + "desktopFont": 14, + "audioChatNotification": false, + "autoJoinAudio": true, + "listenOnly": false, + "skipCheck": false, + "appName": "BigBlueButton HTML5 Client", + "bbbServerVersion": "2.0-rc", + "copyright": "©2018 BigBlueButton Inc.", + "html5ClientBuild": "HTML5_CLIENT_VERSION", + "lockOnJoin": true, + "basename": "/html5client", + "defaultSettings": { + "application": { + "chatAudioNotifications": false, + "chatPushNotifications": false, + "fontSize": "16px", + "locale": "en" + }, + "audio": { + "inputDeviceId": "undefined", + "outputDeviceId": "undefined" + }, + "video": { + "viewParticipantsWebcams": true + }, + "cc": { + "backgroundColor": "#FFFFFF", + "fontColor": "#000000", + "enabled": false, + "fontFamily": "Calibri", + "fontSize": "16px", + "takeOwnership": false + }, + "participants": { + "muteAll": false, + "lockAll": false, + "microphone": false, + "publicChat": false, + "privateChat": false, + "layout": false + } + }, + "allowHTML5Moderator": true, + "allowModeratorToUnmuteAudio": true, + "httpsConnection": true, + "connectionTimeout": 10000 + }, + + "kurento": { + "wsUrl": "HOST", + "chromeExtensionKey": "KEY", + "chromeExtensionLink": "LINK", + "enableScreensharing": false, + "enableVideo": false + }, + + "acl": { + "viewer": { + "subscriptions": [ + "users", + "cursor", + "screenshare", + "meetings", + "polls", + "chat", + "presentations", + "annotations", + "slides", + "captions", + "breakouts", + "voiceUsers", + "whiteboard-multi-user" + ], + "methods": [ + "listenOnlyToggle", + "userLogout", + "setEmojiStatus", + "toggleSelfVoice", + "publishVote", + "sendChat" + ] + }, + "moderator": { + "methods": [ + "assignPresenter", + "removeUser", + "muteUser", + "unmuteUser", + "endMeeting", + "toggleVoice", + "clearPublicChatHistory", + "changeRole", + "ejectUserFromVoice" + ] + }, + "presenter": { + "methods": [ + "assignPresenter", + "switchSlide", + "modifyWhiteboardAccess", + "undoAnnotation", + "clearWhiteboard", + "moveCursor", + "sendAnnotation", + "removePresentation", + "setPresentation" + ] + } + }, + + "chat": { + "min_message_length": 1, + "max_message_length": 5000, + "grouping_messages_window": 60000, + "type_system": "SYSTEM_MESSAGE", + "type_public": "PUBLIC_CHAT", + "type_private": "PRIVATE_CHAT", + "system_userid": "SYSTEM_MESSAGE", + "system_username": "SYSTEM_MESSAGE", + "public_id": "public", + "public_userid": "public_chat_userid", + "public_username": "public_chat_username", + "storage_key": "UNREAD_CHATS", + "path_route": "users/chat/", + "system_messages_keys": { + "chat_clear": "PUBLIC_CHAT_CLEAR" + } + }, + + "media": { + "WebRTCHangupRetryInterval": 2000, + "vertoServerAddress": "HOST", + "freeswitchProfilePassword": "1234", + "vertoPort": "8082", + "useSIPAudio": true, + "stunTurnServersFetchAddress": "/bigbluebutton/api/stuns", + "mediaTag": "#remote-media", + "callTransferTimeout": 5000, + "callHangupTimeout": 2000, + "callHangupMaximumRetries": 10, + "echoTestNumber": "9196" + }, + + "presentation": { + "defaultPresentationFile": "default.pdf", + "uploadEndpoint": "/bigbluebutton/presentation/upload", + "uploadSizeMin": 0, + "uploadSizeMax": 50000000, + "uploadValidMimeTypes": [ + "application/vnd.ms-excel", + "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", + "application/msword", + "application/vnd.openxmlformats-officedocument.wordprocessingml.document", + "application/vnd.ms-powerpoint", + "application/vnd.openxmlformats-officedocument.presentationml.presentation", + "application/vnd.oasis.opendocument.text", + "application/rtf", + "text/plain", + "application/vnd.oasis.opendocument.spreadsheet", + "application/vnd.oasis.opendocument.presentation", + "application/vnd.oasis.opendocument.text", + "application/vnd.oasis.opendocument.graphics", + "application/vnd.oasis.opendocument.chart", + "application/vnd.oasis.opendocument.image", + "application/pdf", + "image/jpeg", + "image/png" + ] + }, + + "user": { + "role_moderator": "MODERATOR", + "role_viewer": "VIEWER", + "role_presenter": "PRESENTER" + }, + + "whiteboard": { + "annotations": { + "message_frequency": 50, + "status": { + "start": "DRAW_START", + "update": "DRAW_UPDATE", + "end": "DRAW_END" + } + }, + "toolbar": { + "colors": [ + { + "value": "#000000" + }, + { + "value": "#ffffff" + }, + { + "value": "#ff0000" + }, + { + "value": "#ff8800" + }, + { + "value": "#ccff00" + }, + { + "value": "#00ff00" + }, + { + "value": "#00ffff" + }, + { + "value": "#0088ff" + }, + { + "value": "#0000ff" + }, + { + "value": "#8800ff" + }, + { + "value": "#ff00ff" + }, + { + "value": "#c0c0c0" + } + ], + "thickness": [ + { + "value": 14 + }, + { + "value": 12 + }, + { + "value": 10 + }, + { + "value": 8 + }, + { + "value": 6 + }, + { + "value": 4 + }, + { + "value": 2 + } + ], + "font_sizes": [ + { + "value": 36 + }, + { + "value": 32 + }, + { + "value": 28 + }, + { + "value": 24 + }, + { + "value": 20 + }, + { + "value": 16 + } + ], + "tools": [ + { + "icon": "text_tool", + "value": "text" + }, + { + "icon": "line_tool", + "value": "line" + }, + { + "icon": "circle_tool", + "value": "ellipse" + }, + { + "icon": "triangle_tool", + "value": "triangle" + }, + { + "icon": "rectangle_tool", + "value": "rectangle" + }, + { + "icon": "pen_tool", + "value": "pencil" + }, + { + "icon": "hand", + "value": "hand" + } + ] + } + } + }, + + "private": { + + "app": { + "captionsChunkLength": 1000, + "pencilChunkLength": 100 + }, + + "redis": { + "host": "127.0.0.1", + "post": "6379", + "timeout": 5000, + "debug": false, + "channels": { + "toAkkaApps": "to-akka-apps-redis-channel" + }, + "subscribeTo": [ + "to-html5-redis-channel", + "from-akka-apps-*" + ], + "async": [ + "from-akka-apps-wb-redis-channel" + ], + "ignored": [ + "CheckAlivePongSysMsg", + "DoLatencyTracerMsg" + ] + }, + + "log": { + "filename": "/var/log/bigbluebutton/html5/html5client.log", + "level": "warn" + } + } +} \ No newline at end of file diff --git a/bigbluebutton-html5/private/locales/en.json b/bigbluebutton-html5/private/locales/en.json index 073bc37727d99671911557d1a7b06431c26d0242..baf7415486c23908e125a02519348132d499db34 100644 --- a/bigbluebutton-html5/private/locales/en.json +++ b/bigbluebutton-html5/private/locales/en.json @@ -33,13 +33,15 @@ "app.userList.menu.chat.label": "Chat", "app.userList.menu.clearStatus.label": "Clear Status", "app.userList.menu.makePresenter.label": "Make Presenter", - "app.userList.menu.kickUser.label": "Kick user", + "app.userList.menu.removeUser.label": "Remove user", "app.userList.menu.muteUserAudio.label": "Mute user", "app.userList.menu.unmuteUserAudio.label": "Unmute user", "app.userList.userAriaLabel": "User : {0} Role: {1} Person: {2} Status: {3}", "app.userList.menu.promoteUser.label": "Promote {0} to moderator", "app.userList.menu.demoteUser.label": "Demote {0} to viewer", "app.media.label": "Media", + "app.meeting.ended":"This session has ended", + "app.meeting.endedMessage":"You will be forwarded back to the home screen", "app.presentation.presentationToolbar.prevSlideLabel": "Previous slide", "app.presentation.presentationToolbar.prevSlideDesc": "Change the presentation to the previous slide", "app.presentation.presentationToolbar.nextSlideLabel": "Next slide", @@ -173,9 +175,11 @@ "app.actionsBar.actionsDropdown.presentationLabel": "Upload a presentation", "app.actionsBar.actionsDropdown.initPollLabel": "Initiate a poll", "app.actionsBar.actionsDropdown.desktopShareLabel": "Share your screen", + "app.actionsBar.actionsDropdown.stopDesktopShareLabel": "Stop sharing your screen", "app.actionsBar.actionsDropdown.presentationDesc": "Upload your presentation", "app.actionsBar.actionsDropdown.initPollDesc": "Initiate a poll", "app.actionsBar.actionsDropdown.desktopShareDesc": "Share your screen with others", + "app.actionsBar.actionsDropdown.stopDesktopShareDesc": "Stop sharing your screen with", "app.actionsBar.emojiMenu.statusTriggerLabel": "Status", "app.actionsBar.emojiMenu.awayLabel": "Away", "app.actionsBar.emojiMenu.awayDesc": "Change your status to away", @@ -257,7 +261,7 @@ "app.audio.listenOnly.closeLabel": "Close", "app.audio.permissionsOverlay.title": "Allow BigBlueButton to use your Media Devices", "app.audio.permissionsOverlay.hint": "We need you to allow us to use your Media Devices in order to join you to the voice conference :)", - "app.error.kicked": "You have been kicked out of the meeting", + "app.error.removed": "You have been removed from the conference", "app.error.meeting.ended": "You have logged out of the conference", "app.dropdown.close": "Close", "app.error.500": "Ops, something went wrong", @@ -266,8 +270,46 @@ "app.error.403": "Forbidden", "app.error.leaveLabel": "Log in again", "app.guest.waiting": "Waiting for approval to join", + "app.toast.breakoutRoomEnded": "The breakout room ended. Please rejoin in the audio.", "app.toast.chat.singular":"you have {0} new message in {1}", "app.toast.chat.plural":"you have {0} new messages in {1}", "app.notification.recordingStart": "This session is now being recorded", - "app.notification.recordingStop": "This session is not being recorded anymore" + "app.notification.recordingStop": "This session is not being recorded anymore", + "app.video.joinVideo": "Share Webcam", + "app.video.leaveVideo": "Unshare Webcam", + "app.video.iceCandidateError": "Error on adding ice candidate", + "app.video.permissionError": "Error on sharing webcam. Please check permissions", + "app.video.sharingError": "Error on sharing webcam", + "app.video.chromeExtensionError": "You must install", + "app.video.chromeExtensionErrorLink": "this Chrome Extension", + "app.meeting.endNotification.ok.label": "OK", + "app.video.joinVideo": "Share webcam", + "app.video.leaveVideo": "Unshare webcam", + "app.whiteboard.toolbar.tools": "Tools", + "app.whiteboard.toolbar.tools.hand": "Hand", + "app.whiteboard.toolbar.tools.pencil": "Pencil", + "app.whiteboard.toolbar.tools.rectangle": "Rectangle", + "app.whiteboard.toolbar.tools.triangle": "Triangle", + "app.whiteboard.toolbar.tools.ellipse": "Ellipse", + "app.whiteboard.toolbar.tools.line": "Line", + "app.whiteboard.toolbar.tools.text": "Text", + "app.whiteboard.toolbar.thickness": "Thickness List", + "app.whiteboard.toolbar.color": "Color List", + "app.whiteboard.toolbar.color.black": "Black", + "app.whiteboard.toolbar.color.white": "White", + "app.whiteboard.toolbar.color.red": "Red", + "app.whiteboard.toolbar.color.orange": "Orange", + "app.whiteboard.toolbar.color.eletricLime": "Eletric Lime", + "app.whiteboard.toolbar.color.lime": "Lime", + "app.whiteboard.toolbar.color.cyan": "Cyan", + "app.whiteboard.toolbar.color.dodgerBlue": "Dodger Blue", + "app.whiteboard.toolbar.color.blue": "Blue", + "app.whiteboard.toolbar.color.violet": "Violet", + "app.whiteboard.toolbar.color.magenta": "Magenta", + "app.whiteboard.toolbar.color.silver": "Silver", + "app.whiteboard.toolbar.undo": "Undo Annotation", + "app.whiteboard.toolbar.clear": "Clear All Annotations", + "app.whiteboard.toolbar.multiUserOn": "Turn multi-user mode on", + "app.whiteboard.toolbar.multiUserOff": "Turn multi-user mode off", + "app.whiteboard.toolbar.fontSize": "Font Size List" } diff --git a/bigbluebutton-html5/private/locales/lv.json b/bigbluebutton-html5/private/locales/lv.json deleted file mode 100644 index bfd870e452fce47e245d59f1536a24117bec2c48..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/locales/lv.json +++ /dev/null @@ -1,3 +0,0 @@ -{ -} - diff --git a/bigbluebutton-html5/private/locales/pt_BR.json b/bigbluebutton-html5/private/locales/pt_BR.json index 0cb562cf2bfb75eacb809fea852dedb35f4a4d0a..00caa32a14f37e6fdedab57ad5ee5e5c0e5e5618 100644 --- a/bigbluebutton-html5/private/locales/pt_BR.json +++ b/bigbluebutton-html5/private/locales/pt_BR.json @@ -204,6 +204,8 @@ "app.audioModal.closeLabel": "Fechar", "app.audio.joinAudio": "Ativar áudio", "app.audio.leaveAudio": "Desativar áudio", + "app.video.joinVideo": "Compartilhar câmera", + "app.video.leaveVideo": "Des-compartilhar câmera", "app.audio.enterSessionLabel": "Entrar na reunião", "app.audio.playSoundLabel": "Tocar som de teste", "app.audio.backLabel": "Voltar", diff --git a/bigbluebutton-html5/private/locales/tr_TR.json b/bigbluebutton-html5/private/locales/tr_TR.json deleted file mode 100644 index bfd870e452fce47e245d59f1536a24117bec2c48..0000000000000000000000000000000000000000 --- a/bigbluebutton-html5/private/locales/tr_TR.json +++ /dev/null @@ -1,3 +0,0 @@ -{ -} - diff --git a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.eot b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.eot old mode 100755 new mode 100644 index c65dad077e11cf00b11d7904742902c8e1c8e2ca..b85bb2766efa3e159eefe8f1ec8d78fc778591c2 Binary files a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.eot and b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.eot differ diff --git a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.svg b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.svg old mode 100755 new mode 100644 index a7e696d0c8f47c39c14253ba056faf0283b94b03..641c7805e51d6c273470f6a7fa16a1dc5f6d0d94 --- a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.svg +++ b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.svg @@ -5,8 +5,8 @@ --> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1"> <metadata> -Created by FontForge 20161004 at Tue Jul 18 12:52:45 2017 - By ghazi +Created by FontForge 20170731 at Tue Dec 12 20:29:15 2017 + By BigBlueButton Inc. Copyright (c) 2016-2017, BigBlueButton Inc. </metadata> <defs> @@ -22,7 +22,7 @@ Copyright (c) 2016-2017, BigBlueButton Inc. bbox="-3 -208 1191 826" underline-thickness="51" underline-position="-102" - unicode-range="U+0020-E94C" + unicode-range="U+0020-E94F" /> <missing-glyph horiz-adv-x="1048" /> @@ -33,6 +33,9 @@ Copyright (c) 2016-2017, BigBlueButton Inc. <glyph glyph-name="logout" unicode="" d="M160 -117h84c19 0 30 -14 30 -32c0 -16 -7 -34 -30 -34h-84c-83 0 -150 66 -150 150v670c0 83 67 150 150 150h84c16 0 30 -17 30 -32c0 -16 -9 -32 -30 -32h-84c-47 0 -87 -40 -87 -86v-667c0 -47 40 -87 87 -87zM676 -9c-6 -5 -14 -8 -22 -8c-7 0 -15 3 -21 8 s-8 12 -8 19c0 9 5 20 12 27l233 233h-625c-22 0 -35 12 -35 30s13 30 35 30h625l-233 233c-7 7 -11 16 -11 25s4 17 11 23c6 5 14 8 21 8c8 0 16 -3 22 -9l310 -310c-30 -30 -314 -309 -314 -309z" /> + <glyph glyph-name="application" unicode="" +d="M952 679c31 0 55 -24 55 -55v-634c0 -31 -24 -55 -55 -55h-876c-34 0 -58 24 -58 55v634c3 31 27 55 58 55h876zM946 618h-863v-82h863v82zM83 0h863v471h-863v-471zM246 577c0 13 11 24 24 24s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24zM148 577c0 13 11 24 24 24 +s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24zM342 577c0 13 11 24 24 24s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24z" /> <glyph glyph-name="more" unicode="" d="M17 307c0 60 49 109 109 109c61 0 110 -49 110 -109s-49 -109 -110 -109c-60 0 -109 49 -109 109zM403 307c0 60 49 109 109 109s109 -49 109 -109s-49 -109 -109 -109s-109 49 -109 109zM788 307c0 60 49 109 110 109c60 0 109 -49 109 -109s-49 -109 -109 -109 c-61 0 -110 49 -110 109z" /> @@ -113,13 +116,14 @@ s-222 -492 -492 -492zM512 737c-236 0 -430 -194 -430 -430s194 -430 430 -430s430 1 d="M512 737c-246 0 -444 -154 -444 -345c0 -102 62 -197 164 -262c22 -15 42 -41 42 -70c0 -3 -1 -6 -1 -9c-1 -7 -3 -17 -3 -17l-24 -75l116 89c14 10 34 17 51 17c31 0 61 -11 92 -11h7c246 0 444 154 444 342s-198 341 -444 341zM512 805c283 0 512 -191 512 -416 s-229 -410 -512 -410h-7c-31 0 -61 4 -92 11c-77 -59 -158 -117 -236 -175c-3 -3 -10 -6 -17 -6c-14 0 -23 10 -23 24l68 218c3 9 -6 21 -10 24c-118 77 -195 191 -195 321c0 225 229 409 512 409z" /> <glyph glyph-name="audio_on" unicode="" -d="M539 -140l-290 290h-140c-51 0 -92 41 -92 92v130c0 51 41 92 92 92h140l290 290c5 5 12 8 19 8c15 0 29 -12 29 -28v-857c0 -13 -14 -25 -29 -25c-6 0 -13 2 -19 8zM72 375v-129c0 -21 13 -41 34 -41h153c8 0 16 -2 21 -7l252 -253v727l-252 -252c-6 -6 -14 -7 -21 -7 -h-150c-20 0 -37 -18 -37 -38z" /> +d="M742 -94c-25 0 -62 11 -83 26c-173 115 -407 349 -522 522c-14 21 -25 59 -25 84c0 35 20 83 44 108l18 18c25 24 73 44 108 44s83 -20 108 -44l28 -28c25 -25 44 -73 44 -108c0 -25 -11 -63 -25 -84c54 -64 148 -158 212 -212c21 14 58 24 84 24c34 0 82 -20 107 -44 +l28 -28c24 -25 44 -73 44 -108s-20 -83 -44 -108l-18 -18c-25 -24 -73 -44 -108 -44zM281 640c-19 0 -46 -13 -59 -26l-17 -17c-14 -14 -25 -40 -25 -59c0 -14 6 -34 14 -46c110 -167 336 -393 503 -504c12 -8 32 -14 46 -14c19 0 46 11 60 25l18 18c13 13 24 40 24 59 +s-12 47 -26 60l-28 28c-14 13 -40 24 -59 24s-46 -11 -60 -24c-5 -5 -16 -10 -24 -10c-7 0 -16 4 -22 8c-79 65 -196 182 -261 261c-4 6 -8 15 -8 22c0 8 5 19 10 24c14 12 25 40 25 60c0 19 -11 45 -25 59l-26 26c-13 14 -40 26 -60 26z" /> <glyph glyph-name="audio_off" unicode="" -d="M898 307l102 -102c4 -4 7 -11 7 -18s-3 -14 -7 -18c-6 -6 -13 -9 -20 -9c-6 0 -12 2 -17 7l-103 102l-106 -105c-4 -4 -10 -6 -16 -6c-8 0 -15 3 -21 9c-4 4 -6 10 -6 16c0 8 3 16 9 22l103 102l-103 102c-5 5 -8 12 -8 19s3 14 8 19s12 7 19 7s14 -2 19 -7l102 -102 -l103 102c4 4 11 7 17 7s14 -3 18 -7c5 -5 8 -14 8 -22c0 -6 -2 -12 -6 -16zM539 -140l-290 290h-140c-51 0 -92 41 -92 92v130c0 51 41 92 92 92h140l290 290c6 6 13 9 20 9c13 0 24 -11 24 -29v-857c0 -16 -12 -25 -25 -25c-7 0 -14 3 -19 8zM109 413 -c-20 0 -37 -14 -37 -34v-130c0 -26 13 -41 34 -41h153c7 0 16 -2 21 -7l252 -252v723l-252 -252c-6 -6 -14 -7 -21 -7h-150z" /> - <glyph glyph-name="linte_tool" unicode="" +d="M851 125h-39c-69 0 -135 54 -149 121c-42 3 -109 6 -151 6s-109 -3 -151 -6c-14 -67 -80 -121 -149 -121h-39c-84 0 -153 68 -153 152v26c0 68 55 135 122 149c101 21 267 37 370 37s269 -16 370 -37c67 -14 122 -81 122 -149v-26c0 -84 -69 -152 -153 -152zM512 320 +c62 0 124 -3 185 -9c17 -1 30 -16 30 -34c1 -46 38 -84 85 -84h39c47 0 84 38 85 84v26c-1 38 -31 75 -69 83c-97 19 -256 35 -356 35c-99 0 -258 -16 -356 -35c-37 -8 -68 -45 -68 -83v-26c0 -46 38 -84 84 -84h41c47 0 84 38 85 84c0 18 13 33 30 34c61 6 123 9 185 9z +" /> + <glyph glyph-name="line_tool" unicode="" d="M403 14l-58 29l269 538l58 -29zM703 802c60 0 109 -48 109 -109s-48 -110 -109 -110s-109 49 -109 110s49 109 109 109zM703 648c26 0 48 21 48 45s-21 44 -48 44c-24 0 -44 -20 -44 -44s20 -45 44 -45zM321 31c58 0 109 -49 109 -110s-48 -109 -109 -109 s-109 48 -109 109s48 110 109 110zM321 -123c24 0 44 20 44 44c0 25 -20 45 -44 45c-27 0 -48 -21 -48 -45s21 -44 48 -44z" /> <glyph glyph-name="circle_tool" unicode="" @@ -215,9 +219,6 @@ d="M364 120l-4 3l-67 -67c56 -56 131 -88 212 -88h14c166 0 297 135 297 297v17c3 16 c-88 0 -233 106 -233 106l-137 -135c-8 -8 -18 -12 -26 -12c-17 0 -31 14 -31 33c0 11 5 24 18 37l130 130c-39 60 -60 131 -60 202c0 8 14 20 25 24c3 1 5 1 8 1c16 0 34 -10 34 -25c0 -53 15 -106 43 -152l70 67c-14 28 -21 56 -21 88v339c0 56 22 109 64 148 c39 42 92 64 148 64s108 -23 145 -64c46 -51 63 -92 63 -148v-25l180 181c10 10 21 14 31 14c19 0 34 -15 34 -33c0 -10 -4 -20 -15 -31l-226 -226v-219c0 -117 -95 -212 -212 -212c-56 0 -109 25 -148 64zM614 169c28 28 39 75 39 103v148l-247 -247l4 -4 c28 -28 63 -42 102 -42s77 14 102 42zM371 272c0 -18 7 -43 7 -43l282 283v92c0 39 -14 77 -42 102c-28 28 -63 42 -102 42s-78 -14 -103 -42c-28 -25 -42 -60 -42 -99v-335z" /> - <glyph glyph-name="application" unicode="" -d="M952 679c31 0 55 -24 55 -55v-634c0 -31 -24 -55 -55 -55h-876c-34 0 -58 24 -58 55v634c3 31 27 55 58 55h876zM946 618h-863v-82h863v82zM83 0h863v471h-863v-471zM246 577c0 13 11 24 24 24s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24zM148 577c0 13 11 24 24 24 -s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24zM342 577c0 13 11 24 24 24s24 -11 24 -24s-11 -24 -24 -24s-24 11 -24 24z" /> <glyph glyph-name="about" unicode="" d="M470 480c0 28 23 51 51 51s51 -23 51 -51s-23 -51 -51 -51s-51 23 -51 51zM512 -205c-283 0 -512 229 -512 512s229 512 512 512s512 -229 512 -512s-229 -512 -512 -512zM512 755c-247 0 -448 -201 -448 -448c0 -248 201 -449 448 -449s448 201 448 449 c0 247 -201 448 -448 448zM567 68h-89v307h88z" /> @@ -311,5 +312,14 @@ c49 0 89 -40 89 -90v-418c0 -50 -40 -90 -89 -90zM89 557c-22 0 -40 -18 -40 -41v-41 <glyph glyph-name="warning" unicode="" d="M453 113c0 31 27 58 58 58c32 0 59 -27 59 -58s-27 -58 -59 -58c-31 0 -58 27 -58 58zM512 -208c-283 0 -512 230 -512 512c0 283 229 512 512 512s512 -229 512 -512c0 -282 -229 -512 -512 -512zM512 751c-247 0 -447 -201 -447 -448s200 -448 447 -448 c248 0 448 201 448 448s-202 448 -448 448zM508 227c-20 0 -37 16 -38 36l-13 249v2c0 21 17 38 38 38h34c22 0 39 -17 39 -38v-2l-13 -250c-1 -19 -18 -35 -38 -35h-9z" /> + <glyph glyph-name="transfer_audio" unicode="" +d="M558 -149c-6 0 -15 4 -19 9l-292 291h-138c-51 0 -92 41 -92 92v128c0 51 41 92 92 92h138l292 291c4 5 13 8 19 8c16 0 28 -12 28 -27v-856c0 -15 -12 -28 -28 -28zM109 409c-20 0 -37 -16 -37 -36v-132c0 -20 17 -36 37 -36h150c6 0 15 -4 19 -9l253 -252v724 +l-253 -252c-4 -5 -13 -8 -19 -8zM1007 307l-142 -142c-4 -4 -12 -7 -17 -7c-14 0 -25 10 -25 24c0 5 4 13 7 17l86 85h-249c-13 0 -24 11 -24 24s11 23 24 23h250l-86 86c-3 3 -7 11 -7 17c0 5 4 13 7 17c4 4 12 7 18 7c5 0 13 -3 17 -7z" /> + <glyph glyph-name="room" unicode="" +d="M58 693h908c32 0 58 -26 58 -58v-656c0 -32 -26 -58 -58 -58h-908c-32 0 -58 26 -58 58v656c0 32 26 58 58 58zM958 476h-892v-489h892v489zM66 542l892 -1v86h-892v-85zM134 584c0 14 11 25 25 25s25 -11 25 -25s-11 -25 -25 -25s-25 11 -25 25zM234 584 +c0 14 12 25 26 25s25 -11 25 -25s-11 -25 -25 -25s-26 11 -26 25zM336 584c0 14 11 25 25 25s25 -11 25 -25s-11 -25 -25 -25s-25 11 -25 25z" /> + <glyph glyph-name="new_file" unicode="" +d="M537 74c-16 0 -29 13 -29 29v102h-102c-15 1 -26 14 -26 28c0 15 11 28 26 29h102v103c1 14 14 26 29 26c14 0 27 -12 29 -26v-103h102c14 -1 26 -14 26 -29c0 -14 -12 -27 -26 -28h-102v-103c-1 -15 -14 -28 -29 -28zM905 585c14 -13 25 -40 25 -60v-645 +c0 -47 -38 -85 -85 -85h-614c-48 0 -85 38 -85 86v853c0 47 38 85 85 85h440zM689 713v-110c0 -13 10 -23 23 -23h112zM845 -143c13 0 23 10 23 23v636h-156c-47 0 -85 38 -85 85v155h-396c-13 0 -23 -11 -23 -23v-853c0 -13 10 -23 23 -23h614z" /> </font> </defs></svg> diff --git a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.ttf b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.ttf old mode 100755 new mode 100644 index 44be832dcb5f447e8910a2d6843c7b73d6992421..9a7fe550dc73a495c9266db0cf4f691c3b6c808e Binary files a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.ttf and b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.ttf differ diff --git a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.woff b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.woff old mode 100755 new mode 100644 index 002ddabc20e0d5f17caae5fe1bad1a598622819e..90768faaee918e7ad79bdb5cc87640d1749ea471 Binary files a/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.woff and b/bigbluebutton-html5/public/fonts/BbbIcons/bbb-icons.woff differ diff --git a/bigbluebutton-html5/server/main.js b/bigbluebutton-html5/server/main.js index 1dab09e2879dc5ec2278e623e6703d710a03efe3..ac582ccc4631a68deb3ddab454687fd7155d3a1e 100644 --- a/bigbluebutton-html5/server/main.js +++ b/bigbluebutton-html5/server/main.js @@ -14,6 +14,7 @@ import '/imports/api/chat/server'; import '/imports/api/screenshare/server'; import '/imports/api/voice-users/server'; import '/imports/api/whiteboard-multi-user/server'; +import '/imports/api/video/server'; // Commons import '/imports/api/log-client/server'; diff --git a/bigbluebutton-html5/transifex.sh b/bigbluebutton-html5/transifex.sh index 0c36afff36e29ec15bd1bcb3ca2da6e67f0a3221..e948ff24cdce77814493ff40b79d748163faf7a5 100755 --- a/bigbluebutton-html5/transifex.sh +++ b/bigbluebutton-html5/transifex.sh @@ -7,55 +7,63 @@ NC='\033[0m' if [ "$#" = 0 ] then - echo -e "${RED}ERR${NC}: Usage = ${GREEN}./transifex pt_BR de ${NC}or ${GREEN}./transifex all${NC}" + echo -e "${RED}ERR${NC}: Usage = ${GREEN}./transifex.sh pt_BR de ${NC}or ${GREEN}./transifex all${NC}" else - read -p "Enter Transifex Username: " USER - read -p "password: " -s PW - echo -e "\n----------------------------------\nchecking project info\n----------------------------------" - PROJECT_INFO=$( curl -L --user "$USER":"$PW" -X GET https://www.transifex.com/api/2/project/bigbluebutton-html5/languages/ ) + read -p "Enter Transifex Username: " USER + read -p "password: " -s PW + echo -e "\n----------------------------------\nchecking project info\n----------------------------------" + PROJECT_INFO=$( curl -L --user "$USER":"$PW" -X GET https://www.transifex.com/api/2/project/bigbluebutton-html5/languages/ ) - if [ "$PROJECT_INFO" == "Authorization Required" ] + if [ "$PROJECT_INFO" == "Authorization Required" ] + then + echo -e "${RED}Err${NC} : $PROJECT_INFO" + else + echo -e "Project Information Found :${GREEN} ✓${NC}" + if [ "$PROJECT_INFO" == "Forbidden" ] + then + echo -e "${RED}Err${NC}: Invalid User Permissions" + else + for ARG in "$@" + do + if [ "$ARG" == "all" ] then - echo -e "${RED}Err${NC} : $PROJECT_INFO" - else - echo -e "Project Information Found :${GREEN} ✓${NC}" - if [ "$PROJECT_INFO" == "Forbidden" ] - then - echo -e "${RED}Err${NC}: Invalid User Permissions" - else - for ARG in "$@" - do - if [ "$ARG" == "all" ] - then - AVAILABLE_TRANSLATIONS=$( echo "$PROJECT_INFO" | grep 'language_code' | cut -d':' -f2 | tr -d '[",]' ) - - echo "$AVAILABLE_TRANSLATIONS" | while read l - do - LOCALE=$( echo "$l" | tr -d '[:space:]' ) - TRANSLATION=$(curl -L --user "$USER":"$PW" -X GET "https://www.transifex.com/api/2/project/bigbluebutton-html5/resource/enjson/translation/$LOCALE/?mode=onlytranslated&file") - NO_EMPTY_STRINGS=$(echo "$TRANSLATION" | sed '/: \"\"/D' | sed '/}$/D') - NO_TRAILING_COMMA=$(echo "$NO_EMPTY_STRINGS" | sed '$ s/,$//') - echo "$NO_TRAILING_COMMA" > ./private/locales/"$LOCALE".json - echo -e "\n}\n" >> ./private/locales/"$LOCALE".json - echo -e "Added translation file $LOCALE.json : ${GREEN}✓${NC}" - done - else - TRANSLATION=$(curl -L --user "$USER":"$PW" -X GET "https://www.transifex.com/api/2/project/bigbluebutton-html5/resource/enjson/translation/$ARG/?mode=onlytranslated&file") - if [ "$TRANSLATION" == "Not Found" ] - then - echo -e "${RED}Err${NC}: Translations not found for locale ->${RED}$ARG${NC}<-" - else - NO_EMPTY_STRINGS=$(echo "$TRANSLATION" | sed '/: \"\"/D' | sed '/}$/D') - NO_TRAILING_COMMA=$(echo "$NO_EMPTY_STRINGS" | sed '$ s/,//') - echo "$NO_TRAILING_COMMA" > ./private/locales/"$ARG".json - echo -e "\n}\n" >> ./private/locales/"$ARG".json - echo -e "Added translation file $ARG.json :${GREEN} ✓${NC}" - fi - fi - done - - fi + AVAILABLE_TRANSLATIONS=$( echo "$PROJECT_INFO" | grep 'language_code' | cut -d':' -f2 | tr -d '[",]' ) + echo "$AVAILABLE_TRANSLATIONS" | while read l + do + LOCALE=$( echo "$l" | tr -d '[:space:]' ) + TRANSLATION=$(curl -L --user "$USER":"$PW" -X GET "https://www.transifex.com/api/2/project/bigbluebutton-html5/resource/enjson/translation/$LOCALE/?mode=onlytranslated&file") + NO_EMPTY_STRINGS=$(echo "$TRANSLATION" | sed '/: *\"\"/D' | sed '/}$/D') + if [ $(echo "$NO_EMPTY_STRINGS" | wc -l) == 1 ] + then + echo -e "${RED}WARN:${NC} translation file $LOCALE.json is empty\n${RED}WARN:${NC} $LOCALE.json not created" + continue + else + NO_TRAILING_COMMA=$(echo "$NO_EMPTY_STRINGS" | sed '$ s/,$//') + echo "$NO_TRAILING_COMMA" > ./private/locales/"$LOCALE".json + echo -e "\n}\n" >> ./private/locales/"$LOCALE".json + echo -e "Added translation file $LOCALE.json : ${GREEN}✓${NC}" + fi + done + else + TRANSLATION=$(curl -L --user "$USER":"$PW" -X GET "https://www.transifex.com/api/2/project/bigbluebutton-html5/resource/enjson/translation/$ARG/?mode=onlytranslated&file") + if [ "$TRANSLATION" == "Not Found" ] + then + echo -e "${RED}Err${NC}: Translations not found for locale ->${RED}$ARG${NC}<-" + else + NO_EMPTY_STRINGS=$(echo "$TRANSLATION" | sed '/: *\"\"/D' | sed '/}$/D') + if [ $(echo "$NO_EMPTY_STRINGS" | wc -l) == 1 ] + then + echo -e "${RED}WARN:${NC} translation file $ARG.json is empty\n${RED}WARN:${NC} $ARG.json not created" + else + NO_TRAILING_COMMA=$(echo "$NO_EMPTY_STRINGS" | sed '$ s/,//') + echo "$NO_TRAILING_COMMA" > ./private/locales/"$ARG".json + echo -e "\n}\n" >> ./private/locales/"$ARG".json + echo -e "Added translation file $ARG.json :${GREEN} ✓${NC}" + fi + fi fi - + done + fi + fi fi diff --git a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy index 92581cf1270b3c86e6770833c3e7d584d82d7481..342fa9a9620504b87a7815b05fc31a7a8025019a 100755 --- a/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy +++ b/bigbluebutton-web/grails-app/controllers/org/bigbluebutton/web/controllers/ApiController.groovy @@ -1528,7 +1528,6 @@ class ApiController { isBreakout = meeting.isBreakout() logoutTimer = meeting.getLogoutTimer() allowStartStopRecording = meeting.getAllowStartStopRecording() - webcamsOnlyForModerator = meeting.getWebcamsOnlyForModerator() welcome = us.welcome if (! StringUtils.isEmpty(meeting.moderatorOnlyMessage)) { modOnlyMessage = meeting.moderatorOnlyMessage diff --git a/labs/kurento-screenshare/README.md b/labs/bbb-webrtc-sfu/README.md similarity index 100% rename from labs/kurento-screenshare/README.md rename to labs/bbb-webrtc-sfu/README.md diff --git a/labs/bbb-webrtc-sfu/config/default.example.yml b/labs/bbb-webrtc-sfu/config/default.example.yml new file mode 100644 index 0000000000000000000000000000000000000000..3b9bbe8a29fa7cbbb171da6fcd190eeb7d7e5760 --- /dev/null +++ b/labs/bbb-webrtc-sfu/config/default.example.yml @@ -0,0 +1,15 @@ +kurentoUrl: "ws://HOST/kurento" +kurentoIp: "" +localIpAddress: "" +acceptSelfSignedCertificate: false +redisHost : "127.0.0.1" +redisPort : "6379" +clientPort : "3008" +minVideoPort: 30000 +maxVideoPort: 33000 +from-screenshare: "from-screenshare-sfu" +to-screenshare: "to-screenshare-sfu" +from-video: "from-video-sfu" +to-video: "to-video-sfu" +from-audio: "from-audio-sfu" +to-audio: "to-audio-sfu" diff --git a/labs/kurento-screenshare/debug-start.sh b/labs/bbb-webrtc-sfu/debug-start.sh similarity index 100% rename from labs/kurento-screenshare/debug-start.sh rename to labs/bbb-webrtc-sfu/debug-start.sh diff --git a/labs/kurento-screenshare/lib/bbb/messages/Constants.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/Constants.js similarity index 88% rename from labs/kurento-screenshare/lib/bbb/messages/Constants.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/Constants.js index 6cccf19f93cadf15684b9a09c2f2ddde37909dbd..3b2a77052aefe4154435efb76a485935e4ee9e43 100644 --- a/labs/kurento-screenshare/lib/bbb/messages/Constants.js +++ b/labs/bbb-webrtc-sfu/lib/bbb/messages/Constants.js @@ -1,4 +1,6 @@ "use strict"; + +const config = require('config'); /** * @classdesc * Message constants for the communication with BigBlueButton @@ -17,9 +19,17 @@ FROM_BBB_TRANSCODE_SYSTEM_CHAN : "bigbluebutton:from-bbb-transcode:system", FROM_VOICE_CONF_SYSTEM_CHAN: "from-voice-conf-redis-channel", TO_BBB_TRANSCODE_SYSTEM_CHAN: "bigbluebutton:to-bbb-transcode:system", + FROM_SCREENSHARE: config.get('from-screenshare'), + TO_SCREENSHARE: config.get('to-screenshare'), + FROM_VIDEO: config.get('from-video'), + TO_VIDEO: config.get('to-video'), + FROM_AUDIO: config.get('from-audio'), + TO_AUDIO: config.get('to-audio'), // RedisWrapper events REDIS_MESSAGE : "redis_message", + WEBSOCKET_MESAGE: "ws_message", + GATEWAY_MESSAGE: "gateway_message", // Message identifiers 1x START_TRANSCODER_REQUEST: "start_transcoder_request_message", diff --git a/labs/kurento-screenshare/lib/bbb/messages/Messaging.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/Messaging.js similarity index 69% rename from labs/kurento-screenshare/lib/bbb/messages/Messaging.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/Messaging.js index 92bab79944122fb88e16bb7c30152da68a0f80b7..a352acf1e5f8cfd736e48011316209995bf2a87d 100644 --- a/labs/kurento-screenshare/lib/bbb/messages/Messaging.js +++ b/labs/bbb-webrtc-sfu/lib/bbb/messages/Messaging.js @@ -1,24 +1,24 @@ -var Constants = require('./Constants.js'); +const Constants = require('./Constants.js'); // Messages -var OutMessage = require('./OutMessage.js'); +let OutMessage = require('./OutMessage.js'); -var StartTranscoderRequestMessage = +let StartTranscoderRequestMessage = require('./transcode/StartTranscoderRequestMessage.js')(Constants); -var StopTranscoderRequestMessage = +let StopTranscoderRequestMessage = require('./transcode/StopTranscoderRequestMessage.js')(Constants); -var StartTranscoderSysReqMsg = +let StartTranscoderSysReqMsg = require('./transcode/StartTranscoderSysReqMsg.js')(); -var StopTranscoderSysReqMsg = +let StopTranscoderSysReqMsg = require('./transcode/StopTranscoderSysReqMsg.js')(); -var DeskShareRTMPBroadcastStartedEventMessage = +let DeskShareRTMPBroadcastStartedEventMessage = require('./screenshare/DeskShareRTMPBroadcastStartedEventMessage.js')(Constants); -var DeskShareRTMPBroadcastStoppedEventMessage = +let DeskShareRTMPBroadcastStoppedEventMessage = require('./screenshare/DeskShareRTMPBroadcastStoppedEventMessage.js')(Constants); -var ScreenshareRTMPBroadcastStartedEventMessage2x = +let ScreenshareRTMPBroadcastStartedEventMessage2x = require('./screenshare/ScreenshareRTMPBroadcastStartedEventMessage2x.js')(Constants); -var ScreenshareRTMPBroadcastStoppedEventMessage2x = +let ScreenshareRTMPBroadcastStoppedEventMessage2x = require('./screenshare/ScreenshareRTMPBroadcastStoppedEventMessage2x.js')(Constants); @@ -31,39 +31,38 @@ function Messaging() {} Messaging.prototype.generateStartTranscoderRequestMessage = function(meetingId, transcoderId, params) { - var statrm = new StartTranscoderSysReqMsg(meetingId, transcoderId, params); + let statrm = new StartTranscoderSysReqMsg(meetingId, transcoderId, params); return statrm.toJson(); } Messaging.prototype.generateStopTranscoderRequestMessage = function(meetingId, transcoderId) { - var stotrm = new StopTranscoderSysReqMsg(meetingId, transcoderId); + let stotrm = new StopTranscoderSysReqMsg(meetingId, transcoderId); return stotrm.toJson(); } Messaging.prototype.generateDeskShareRTMPBroadcastStartedEvent = function(conferenceName, streamUrl, vw, vh, timestamp) { - var stadrbem = new DeskShareRTMPBroadcastStartedEventMessage(conferenceName, streamUrl, vw, vh, timestamp); + let stadrbem = new DeskShareRTMPBroadcastStartedEventMessage(conferenceName, streamUrl, vw, vh, timestamp); return stadrbem.toJson(); } Messaging.prototype.generateDeskShareRTMPBroadcastStoppedEvent = function(conferenceName, streamUrl, vw, vh, timestamp) { - var stodrbem = new DeskShareRTMPBroadcastStoppedEventMessage(conferenceName, streamUrl, vw, vh, timestamp); + let stodrbem = new DeskShareRTMPBroadcastStoppedEventMessage(conferenceName, streamUrl, vw, vh, timestamp); return stodrbem.toJson(); } Messaging.prototype.generateScreenshareRTMPBroadcastStartedEvent2x = function(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp) { - var stadrbem = new ScreenshareRTMPBroadcastStartedEventMessage2x(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp); + let stadrbem = new ScreenshareRTMPBroadcastStartedEventMessage2x(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp); return stadrbem.toJson(); } Messaging.prototype.generateScreenshareRTMPBroadcastStoppedEvent2x = function(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp) { - var stodrbem = new ScreenshareRTMPBroadcastStoppedEventMessage2x(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp); + let stodrbem = new ScreenshareRTMPBroadcastStoppedEventMessage2x(conferenceName, screenshareConf, streamUrl, vw, vh, timestamp); return stodrbem.toJson(); } module.exports = new Messaging(); -module.exports.Constants = Constants; diff --git a/labs/kurento-screenshare/lib/bbb/messages/OutMessage.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/OutMessage.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/OutMessage.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/OutMessage.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/OutMessage2x.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/OutMessage2x.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/OutMessage2x.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/OutMessage2x.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStartedEventMessage.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStartedEventMessage.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStartedEventMessage.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStartedEventMessage.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStoppedEventMessage.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStoppedEventMessage.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStoppedEventMessage.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/DeskShareRTMPBroadcastStoppedEventMessage.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStartedEventMessage2x.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStartedEventMessage2x.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStartedEventMessage2x.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStartedEventMessage2x.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStoppedEventMessage2x.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStoppedEventMessage2x.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStoppedEventMessage2x.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/screenshare/ScreenshareRTMPBroadcastStoppedEventMessage2x.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/transcode/StartTranscoderRequestMessage.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StartTranscoderRequestMessage.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/transcode/StartTranscoderRequestMessage.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StartTranscoderRequestMessage.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/transcode/StartTranscoderSysReqMsg.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StartTranscoderSysReqMsg.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/transcode/StartTranscoderSysReqMsg.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StartTranscoderSysReqMsg.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/transcode/StopTranscoderRequestMessage.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StopTranscoderRequestMessage.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/transcode/StopTranscoderRequestMessage.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StopTranscoderRequestMessage.js diff --git a/labs/kurento-screenshare/lib/bbb/messages/transcode/StopTranscoderSysReqMsg.js b/labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StopTranscoderSysReqMsg.js similarity index 100% rename from labs/kurento-screenshare/lib/bbb/messages/transcode/StopTranscoderSysReqMsg.js rename to labs/bbb-webrtc-sfu/lib/bbb/messages/transcode/StopTranscoderSysReqMsg.js diff --git a/labs/bbb-webrtc-sfu/lib/bbb/pubsub/RedisWrapper.js b/labs/bbb-webrtc-sfu/lib/bbb/pubsub/RedisWrapper.js new file mode 100644 index 0000000000000000000000000000000000000000..94acc7db4eeea467c5133a3aaabbb92603f5373a --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/bbb/pubsub/RedisWrapper.js @@ -0,0 +1,129 @@ +/** + * @classdesc + * Redis wrapper class for connecting to Redis channels + */ + +'use strict'; + +/* Modules */ + +const redis = require('redis'); +const config = require('config'); +const Constants = require('../messages/Constants.js'); +const EventEmitter = require('events').EventEmitter; + +/* Public members */ + +module.exports = class RedisWrapper extends EventEmitter { + constructor(subpattern) { + super(); + // Redis PubSub client holders + this.redisCli = null; + this.redisPub = null; + // Pub and Sub channels/patterns + this.subpattern = subpattern; + } + + static get _retryThreshold() { + return 1000 * 60 * 60; + } + + static get _maxRetries() { + return 10; + } + + startPublisher () { + var options = { + host : config.get('redisHost'), + port : config.get('redisPort'), + //password: config.get('redis.password') + retry_strategy: this._redisRetry + }; + + this.redisPub = redis.createClient(options); + } + + startSubscriber () { + let self = this; + if (this.redisCli) { + console.log(" [RedisWrapper] Redis Client already exists"); + return; + } + + var options = { + host : config.get('redisHost'), + port : config.get('redisPort'), + //password: config.get('redis.password') + retry_strategy: this._redisRetry + }; + + this.redisCli = redis.createClient(options); + + console.log(" [RedisWrapper] Trying to subscribe to redis channel"); + + this.redisCli.on("connect", () => { + // console.log(" [RedisWrapper] Connected to Redis Server."); + // DO SOMETHING + }); + + this.redisCli.on("error", (e) => { + console.error(" [RedisWrapper] " + e); + }); + + this.redisCli.on("reconnecting", (e) => { + // DO SOMETHING + }); + + this.redisCli.on("psubscribe", (channel, count) => { + console.log(" [RedisWrapper] Successfully subscribed to pattern [" + channel + "]"); + }); + + this.redisCli.on("pmessage", this._onMessage.bind(this)); + + if (!this.subpattern) { + throw new Error("[RedisWrapper] No subscriber pattern"); + } + + this.redisCli.psubscribe(this.subpattern); + + console.log(" [RedisWrapper] Started Redis client at " + options.host + ":" + options.port + + " for subscription pattern: " + this.subpattern); + + return ; + } + + stopRedis (callback) { + if (this.redisCli){ + this.redisCli.quit(); + } + callback(false); + } + + publishToChannel (_message, channel) { + let message = _message; + if(this.redisPub) { + this.redisPub.publish(channel, message); + } + } + + /* Private members */ + + _onMessage (pattern, channel, _message) { + let message = (typeof _message !== 'object')?JSON.parse(_message):_message; + // use event emitter to throw new message + this.emit(Constants.REDIS_MESSAGE, message); + } + + static _redisRetry (options) { + // if (options.error && options.error.code === 'ECONNREFUSED') { + // return new Error('The server refused the connection'); + // } + if (options.total_retry_time > RedisWrapper._retryThreshold) { + return new Error('Retry time exhausted'); + } + if (options.times_connected > RedisWrapper._maxRetries) { + return undefined; + } + return Math.max(options.attempt * 100, 3000); + } +} diff --git a/labs/bbb-webrtc-sfu/lib/bbb/pubsub/bbb-gw.js b/labs/bbb-webrtc-sfu/lib/bbb/pubsub/bbb-gw.js new file mode 100644 index 0000000000000000000000000000000000000000..b99b9b855539ba1b7f3d600da522b7e89308f372 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/bbb/pubsub/bbb-gw.js @@ -0,0 +1,117 @@ +/** + * @classdesc + * BigBlueButton redis gateway for bbb-screenshare node app + */ + +'use strict'; + +/* Modules */ + +const C = require('../messages/Constants.js'); +const RedisWrapper = require('./RedisWrapper.js'); +const config = require('config'); +const util = require('util'); +const EventEmitter = require('events').EventEmitter; + +let instance = null; + +module.exports = class BigBlueButtonGW extends EventEmitter { + constructor() { + if(!instance){ + super(); + this.subscribers = {}; + this.publisher = null; + instance = this; + } + + return instance; + } + + addSubscribeChannel (channel) { + if (this.subscribers[channel]) { + return this.subscribers[channel]; + } + + let wrobj = new RedisWrapper(channel); + this.subscribers[channel] = {}; + this.subscribers[channel] = wrobj; + try { + wrobj.startSubscriber(); + wrobj.on(C.REDIS_MESSAGE, this.incomingMessage.bind(this)); + console.log(" [BigBlueButtonGW] Added redis client to this.subscribers[" + channel + "]"); + return Promise.resolve(wrobj); + } + catch (error) { + return Promise.reject(" [BigBlueButtonGW] Could not start redis client for channel " + channel); + } + } + + /** + * Capture messages from subscribed channels and emit an event with it's + * identifier and payload. Check Constants.js for the identifiers. + * + * @param {Object} message Redis message + */ + incomingMessage (message) { + let header; + let payload; + let msg = (typeof message !== 'object')?JSON.parse(message):message; + + // Trying to parse both message types, 1x and 2x + if (msg.header) { + header = msg.header; + payload = msg.payload; + } + else if (msg.core) { + header = msg.core.header; + payload = msg.core.body; + } + + if (header){ + switch (header.name) { + // interoperability with 1.1 + case C.START_TRANSCODER_REPLY: + this.emit(C.START_TRANSCODER_REPLY, payload); + break; + case C.STOP_TRANSCODER_REPLY: + this.emit(C.STOP_TRANSCODER_REPLY, payload); + break; + // 2x messages + case C.START_TRANSCODER_RESP_2x: + payload[C.MEETING_ID_2x] = header[C.MEETING_ID_2x]; + this.emit(C.START_TRANSCODER_RESP_2x, payload); + break; + case C.STOP_TRANSCODER_RESP_2x: + payload[C.MEETING_ID_2x] = header[C.MEETING_ID_2x]; + this.emit(C.STOP_TRANSCODER_RESP_2x, payload); + break; + + default: + this.emit(C.GATEWAY_MESSAGE, msg); + } + } + else { + this.emit(C.GATEWAY_MESSAGE, msg); + } + } + + publish (message, channel) { + if (!this.publisher) { + this.publisher = new RedisWrapper(); + this.publisher.startPublisher(); + } + + if (typeof this.publisher.publishToChannel === 'function') { + this.publisher.publishToChannel(message, channel); + } + } + + setEventEmitter (emitter) { + this.emitter = emitter; + } + + _onServerResponse(data) { + // Here this is the 'ws' instance + this.sendMessage(data); + } +} diff --git a/labs/bbb-webrtc-sfu/lib/connection-manager/ConnectionManager.js b/labs/bbb-webrtc-sfu/lib/connection-manager/ConnectionManager.js new file mode 100644 index 0000000000000000000000000000000000000000..653aada87fa2f5483643880c0e3fc6226ccccf80 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/connection-manager/ConnectionManager.js @@ -0,0 +1,101 @@ +/* + * Lucas Fialho Zawacki + * Paulo Renato Lanzarin + * (C) Copyright 2017 Bigbluebutton + * + */ + +'use strict'; + +// const express = require('express'); +// const session = require('express-session') +// const wsModule = require('./websocket'); + +const http = require('http'); +const fs = require('fs'); +const EventEmitter = require('events'); +const BigBlueButtonGW = require('../bbb/pubsub/bbb-gw'); +const C = require('../bbb/messages/Constants'); + +// Global variables +module.exports = class ConnectionManager { + + constructor (settings, logger) { + this._logger = logger; + this._screenshareSessions = {}; + + this._setupBBB(); + + this._emitter = this._setupEventEmitter(); + this._adapters = []; + } + + setHttpServer(httpServer) { + this.httpServer = httpServer; + } + + listen(callback) { + this.httpServer.listen(callback); + } + + addAdapter(adapter) { + adapter.setEventEmitter(this._emitter); + this._adapters.push(adapter); + } + + _setupEventEmitter() { + let self = this; + let emitter = new EventEmitter(); + + emitter.on(C.WEBSOCKET_MESSAGE, (data) => { + switch (data.type) { + case "screenshare": + self._bbbGW.publish(JSON.stringify(data), C.TO_SCREENSHARE); + break; + + case "video": + self._bbbGW.publish(JSON.stringify(data), C.TO_VIDEO); + break; + + case "audio": + self._bbbGW.publish(JSON.stringify(data), C.TO_AUDIO); + break; + + case "default": + // TODO handle API error message; + } + }); + + return emitter; + } + + async _setupBBB() { + this._bbbGW = new BigBlueButtonGW(); + + try { + const screenshare = await this._bbbGW.addSubscribeChannel(C.FROM_SCREENSHARE); + const video = await this._bbbGW.addSubscribeChannel(C.FROM_VIDEO); + const audio = await this._bbbGW.addSubscribeChannel(C.FROM_AUDIO); + + screenshare.on(C.REDIS_MESSAGE, (data) => { + this._emitter.emit('response', data); + }); + + video.on(C.REDIS_MESSAGE, (data) => { + this._emitter.emit('response', data); + }); + + console.log(' [ConnectionManager] Successfully subscribed to processes redis channels'); + } + catch (err) { + console.log(' [ConnectionManager] ' + err); + this._stopAll; + } + } + + _stopSession(sessionId) { + } + + _stopAll() { + } +} diff --git a/labs/bbb-webrtc-sfu/lib/connection-manager/HttpServer.js b/labs/bbb-webrtc-sfu/lib/connection-manager/HttpServer.js new file mode 100644 index 0000000000000000000000000000000000000000..8ec5a30fac3abeb8eda002809665d17662757929 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/connection-manager/HttpServer.js @@ -0,0 +1,30 @@ +"use strict"; + +const http = require("http"); +const fs = require("fs"); +const config = require('config'); + +module.exports = class HttpServer { + + constructor() { + //const privateKey = fs.readFileSync('sslcert/server.key', 'utf8'); + //const certificate = fs.readFileSync('sslcert/server.crt', 'utf8'); + //const credentials = {key: privateKey, cert: certificate}; + + this.port = config.get('clientPort'); + + this.server = http.createServer((req,res) => { + // + }); + } + + getServerObject() { + return this.server; + } + + listen(callback) { + console.log(' [HttpServer] Listening in port ' + this.port); + this.server.listen(this.port, callback); + } + +} diff --git a/labs/bbb-webrtc-sfu/lib/connection-manager/MessageValidator.js b/labs/bbb-webrtc-sfu/lib/connection-manager/MessageValidator.js new file mode 100644 index 0000000000000000000000000000000000000000..84022e268838c571893d3bf0c2b6f5d092584dbf --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/connection-manager/MessageValidator.js @@ -0,0 +1,81 @@ +const Joi = require('joi'); + +let instance = null; + +module.exports = class MessageParser { + constructor() { + if(!instance){ + instance = this; + } + return instance; + } + + static const schema { + startScreenshare: Joi.object().keys({ + sdpOffer : Joi.string().required(), + vh: Joi.number().required(), + vw: Joi.number().required() + }), + + startVideo: Joi.object().keys({ + internalMeetingId: joi.string().required(), + callerName : Joi.string().required(), + }), + + startAudio: Joi.object().keys({ + internalMeetingId: joi.string().required(), + callerName : Joi.string().required(), + }), + + playStart: Joi.object().keys({ + }), + + playStop: Joi.object().keys.({ + }), + + stop: Joi.object().keys({ + }), + + onIceCandidate: Joi.object().keys({ + internalMeetingId: joi.string().required(), + candidate: Joi.object().required(), + }), + } + + static const messageTemplate Joi.object().keys({ + id: Joi.string().required(), + type: joi.string().required(), + role: joi.string().required(), + }) + + static const validateMessage (msg) { + let res = Joi.validate(msg, messageTemplate, {allowUnknown: true}); + + if (!res.error) { + res = Joi.validate(msg, schema[msg.id]); + } + + return res; + } + + _parse (message) { + let parsed = { id: '' }; + + try { + parsed = JSON.parse(message); + } catch (e) { + console.error(e); + } + + let res = validateMessage(parsed); + + if (res.error) { + parsed.validMessage = false; + parsed.errors = res.error; + } else { + parsed.validMessage = true; + } + + return parsed; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/connection-manager/RedisConnectionManager.js b/labs/bbb-webrtc-sfu/lib/connection-manager/RedisConnectionManager.js new file mode 100644 index 0000000000000000000000000000000000000000..6c109baf75ac71b9c54a12f1ccca3f988a46ff90 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/connection-manager/RedisConnectionManager.js @@ -0,0 +1,34 @@ +'use strict'; + +// incomplete + +module.exports = class RedisConnectionManager { + + constructor(options) { + + this._client = redis.createClient({options}); + this._pubchannel = options.pubchannel; + this._subchannel = optiosn.subchannel; + + if (options.pubchannel) { + this._client.on() + } + + if (options.subchannel) { + this._client.on() + } + + this._client.on() + // pub + + } + + setEventEmitter(emitter) { + this.emitter = emitter; + } + + _onMessage() { + + } + +} diff --git a/labs/bbb-webrtc-sfu/lib/connection-manager/WebsocketConnectionManager.js b/labs/bbb-webrtc-sfu/lib/connection-manager/WebsocketConnectionManager.js new file mode 100644 index 0000000000000000000000000000000000000000..17ea6c3a1d0b672b48600fec053361eeb056bdc7 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/connection-manager/WebsocketConnectionManager.js @@ -0,0 +1,170 @@ +'use strict'; + +const ws = require('ws'); +const C = require('../bbb/messages/Constants'); + +// initialization +let connectionIDCounter = 0; + +// when handling a new connection + + +ws.prototype.setErrorCallback = function(callback) { + + this._errorCallback = callback; +}; + +ws.prototype.sendMessage = function(json) { + + let websocket = this; + + if (this._closeCode === 1000) { + console.log(" [WebsocketConnectionManager] Websocket closed, not sending"); + this._errorCallback("Error: not opened"); + } + + return this.send(JSON.stringify(json), function(error) { + if(error) { + console.log(' [WebsocketConnectionManager] server: Websocket error "' + error + '" on message "' + json.id + '"'); + + websocket._errorCallback(error); + } + }); + +}; + +module.exports = class WebsocketConnectionManager { + constructor (server, path) { + this.wss = new ws.Server({ + server, + path + }); + + this.wss.on ('connection', (ws) => { + let self = this; + + ws.id = connectionIDCounter++; + + console.log(" [WebsocketConnectionManager] New connection with id [ " + ws.id + " ]"); + + ws.on('message', (data) => { + let message = {}; + + try { + message = JSON.parse(data); + message.connectionId = ws.id; + + if (!ws.sessionId) { + ws.sessionId = message.voiceBridge; + } + + if (!ws.route) { + ws.route = message.type; + } + + if (!ws.role) { + ws.role = message.role; + } + } catch(e) { + console.error(" [WebsocketConnectionManager] JSON message parse error " + e); + message = {}; + } + + // Test for empty or invalid JSON + if (Object.getOwnPropertyNames(message).length !== 0) { + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + } + }); + + //ws.on('message', this._onMessage.bind(this)); + ws.setErrorCallback(this._onError.bind(this)); + + ws.on('close', (ev) => { + console.log(' [WebsocketConnectionManager] Closed connection on [' + ws.id + ']'); + let message = { + id: 'close', + type: ws.route, + role: ws.role, + voiceBridge: ws.sessionId, + connectionId: ws.id + } + + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + + ws = null; + }); + + ws.on('error', (err) => { + console.log(' [WebsocketConnectionManager] Connection error [' + ws.id + ']'); + let message = { + id: 'error', + type: ws.route, + role: ws.role, + voiceBridge: ws.sessionId, + connectionId: ws.id + } + + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + + ws = null; + }); + + // TODO: should we delete this listener after websocket dies? + this.emitter.on('response', (data) => { + if (ws && ws.id == data.connectionId) { + ws.sendMessage(data); + } + }); + }); + } + + setEventEmitter (emitter) { + this.emitter = emitter; + } + + _onServerResponse (data) { + // Here this is the 'ws' instance + this.sendMessage(data); + } + + _onMessage (data) { + + let message = {}; + + try { + message = JSON.parse(data); + } catch(e) { + console.error(" [WebsocketConnectionManager] JSON message parse error " + e); + message = {}; + } + + // Test for empty or invalid JSON + if (Object.getOwnPropertyNames(message).length !== 0) { + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + } + } + + _onError (err) { + console.log(' [WebsocketConnectionManager] Connection error'); + let message = { + id: 'error', + voiceBridge: ws.sessionId, + connectionId: ws.id + } + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + } + + _onClose (err) { + console.log(' [WebsocketConnectionManager] Closed connection [' + this.id + ']'); + let message = { + id: 'close', + voiceBridge: this.sessionId, + connectionId: this.id + } + + this.emitter.emit(C.WEBSOCKET_MESSAGE, message); + } + + _stop () { + } +} diff --git a/labs/kurento-screenshare/lib/h264-sdp.js b/labs/bbb-webrtc-sfu/lib/h264-sdp.js similarity index 100% rename from labs/kurento-screenshare/lib/h264-sdp.js rename to labs/bbb-webrtc-sfu/lib/h264-sdp.js diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/CoreProcess.js b/labs/bbb-webrtc-sfu/lib/mcs-core/CoreProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..ee03958e42a0d3d54b74e7c76a2a1fef19234b7a --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/CoreProcess.js @@ -0,0 +1,12 @@ +const MCSApiStub = require('./media/MCSApiStub'); + +process.on('uncaughtException', function (error) { + console.log(error.stack); +}); + +process.on('disconnect',function() { + console.log("Parent exited!"); + process.kill(); +}); + +core = new MCSApiStub(); diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/constants/Constants.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/constants/Constants.js new file mode 100644 index 0000000000000000000000000000000000000000..94f7acc9dc9f89aa14094232af1bb300e47468e7 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/constants/Constants.js @@ -0,0 +1,86 @@ +/* + * (C) Copyright 2016 Mconf Tecnologia (http://mconf.com/) + */ + +/** + * @classdesc + * Message constants for the communication with BigBlueButton + * @constructor + */ + +'use strict' + +exports.ALL = 'ALL' + +exports.LOG_LEVEL = {} +exports.LOG_LEVEL.DEBUG = 0 +exports.LOG_LEVEL.INFO = 1 +exports.LOG_LEVEL.WARN = 2 +exports.LOG_LEVEL.ERROR = 3 +exports.LOG_LEVEL.OFF = 100 + +exports.STATUS = {} +exports.STATUS.STARTED = "STARTED" +exports.STATUS.STOPPED = "STOPPED" +exports.STATUS.RUNNING = "RUNNING'" +exports.STATUS.STARTING = "STARTING" +exports.STATUS.STOPPING = "STOPPING" +exports.STATUS.RESTARTING = "RESTARTING" + +exports.USERS = {} +exports.USERS.SFU = "SFU" +exports.USERS.MCU = "MCU" + +exports.MEDIA_TYPE = {} +exports.MEDIA_TYPE.WEBRTC = "WebRtcEndpoint" +exports.MEDIA_TYPE.RTP= "RtpEndpoint" +exports.MEDIA_TYPE.URI = "PlayerEndpoint" + +// Observer Constants +exports.EVENT = {} +exports.EVENT.DIAL_EVENT = "BRIDGE_DIAL" +exports.EVENT.HANGUP_EVENT = "BRIDGE_HANGUP" +exports.EVENT.SESSION_ID_EVENT = "SESSION_ID" +exports.EVENT.AUDIO_SESSION_TERMINATED = "AUDIO_SESSION_TERMINATED" + +// Media server state changes +exports.EVENT.NEW_SESSION = "NewSession" +exports.EVENT.MEDIA_STATE = {}; +exports.EVENT.MEDIA_STATE.MEDIA_EVENT = "MediaEvent" +exports.EVENT.MEDIA_STATE.CHANGED = "MediaStateChanged" +exports.EVENT.MEDIA_STATE.FLOW_OUT = "MediaFlowOutStateChange" +exports.EVENT.MEDIA_STATE.FLOW_IN = "MediaFlowInStateChange" +exports.EVENT.MEDIA_STATE.ENDOFSTREAM = "EndOfStream" +exports.EVENT.MEDIA_STATE.ICE = "OnIceCandidate" + + + +// RTP params +exports.SDP = {}; +exports.SDP.PARAMS = "params" +exports.SDP.MEDIA_DESCRIPTION = "media_description" +exports.SDP.LOCAL_IP_ADDRESS = "local_ip_address" +exports.SDP.LOCAL_VIDEO_PORT = "local_video_port" +exports.SDP.DESTINATION_IP_ADDRESS = "destination_ip_address" +exports.SDP.DESTINATION_VIDEO_PORT = "destination_video_port" +exports.SDP.REMOTE_VIDEO_PORT = "remote_video_port" +exports.SDP.CODEC_NAME = "codec_name" +exports.SDP.CODEC_ID = "codec_id" +exports.SDP.CODEC_RATE = "codec_rate" +exports.SDP.RTP_PROFILE = "rtp_profile" +exports.SDP.SEND_RECEIVE = "send_receive" +exports.SDP.FRAME_RATE = "frame_rate" + +// Strings +exports.STRING = {} +exports.STRING.ANONYMOUS = "ANONYMOUS" +exports.STRING.FS_USER_AGENT_STRING = "Freeswitch_User_Agent" +exports.STRING.XML_MEDIA_FAST_UPDATE = '<?xml version=\"1.0\" encoding=\"utf-8\" ?>' + + '<media_control>' + + '<vc_primitive>' + + '<to_encoder>' + + '<picture_fast_update>' + + '</picture_fast_update>' + + '</to_encoder>' + + '</vc_primitive>' + + '</media_control>' diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MCSApiStub.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MCSApiStub.js new file mode 100644 index 0000000000000000000000000000000000000000..9c42ec7efe33f34cbba1536c409fd0943408d4c3 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MCSApiStub.js @@ -0,0 +1,143 @@ +'use strict' + +var config = require('config'); +var C = require('../constants/Constants'); +// EventEmitter +var util = require('util'); +var EventEmitter = require('events').EventEmitter; +var MediaController = require('./MediaController.js'); + +let instance = null; + +module.exports = class MCSApiStub extends EventEmitter{ + constructor() { + if(!instance) { + super(); + this.listener = new EventEmitter(); + this._mediaController = new MediaController(this.listener); + instance = this; + } + + return instance; + } + + async join (room, type, params) { + try { + const answer = await this._mediaController.join(room, type, params); + return Promise.resolve(answer); + } + catch (err) { + console.log(err); + Promise.reject(err); + } + } + + async leave (roomId, userId) { + try { + const answer = await this._mediaController.leave(roomId, userId); + return Promise.resolve(answer); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async publishnsubscribe (user, sourceId, sdp, params) { + try { + const answer = await this._mediaController.publishnsubscribe(user, sourceId, sdp, params); + return Promise.resolve(answer); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async publish (user, room, type, params) { + try { + this.listener.once(C.EVENT.NEW_SESSION+user, (event) => { + let sessionId = event; + this.listener.on(C.EVENT.MEDIA_STATE.MEDIA_EVENT+sessionId, (event) => { + this.emit(C.EVENT.MEDIA_STATE.MEDIA_EVENT+sessionId, event); + }); + }); + const answer = await this._mediaController.publish(user, room, type, params); + return Promise.resolve(answer); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async unpublish (user, mediaId) { + try { + await this._mediaController.unpublish(mediaId); + return Promise.resolve(); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async subscribe (user, sourceId, type, params) { + try { + this.listener.once(C.EVENT.NEW_SESSION+user, (event) => { + let sessionId = event; + this.listener.on(C.EVENT.MEDIA_STATE.MEDIA_EVENT+sessionId, (event) => { + this.emit(C.EVENT.MEDIA_STATE.MEDIA_EVENT+sessionId, event); + }); + }); + + const answer = await this._mediaController.subscribe(user, sourceId, type, params); + + return Promise.resolve(answer); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async unsubscribe (user, mediaId) { + try { + await this._mediaController.unsubscribe(user, mediaId); + return Promise.resolve(); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + async onEvent (eventName, mediaId) { + try { + const eventTag = this._mediaController.onEvent(eventName, mediaId); + this._mediaController.on(eventTag, (event) => { + this.emit(eventTag, event); + }); + + return Promise.resolve(eventTag); + } + catch (err) { + console.log(err); + return Promise.reject(); + } + } + + async addIceCandidate (mediaId, candidate) { + try { + const ack = await this._mediaController.addIceCandidate(mediaId, candidate); + return Promise.resolve(ack); + } + catch (err) { + console.log(err); + Promise.reject(); + } + } + setStrategy (strategy) { + // TODO + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MediaController.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MediaController.js new file mode 100644 index 0000000000000000000000000000000000000000..b446aa2d8ebd1433568a10a934dad0f7988dc92f --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/MediaController.js @@ -0,0 +1,360 @@ +'use strict' + +const config = require('config'); +const C = require('../constants/Constants'); + +// Model +const SfuUser = require('../model/SfuUser'); +const Room = require('../model/Room.js'); + +const EventEmitter = require('events').EventEmitter; + +/* PRIVATE ELEMENTS */ +/** + * Deep copy a javascript Object + * @param {Object} object The object to be copied + * @return {Object} A deep copy of the given object + */ +function copy(object) { + return JSON.parse(JSON.stringify(object)); +} + +function getPort(min_port, max_port) { + return Math.floor((Math.random()*(max_port - min_port +1)+ min_port)); +} + +function getVideoPort() { + return getPort(config.get('sip.min_video_port'), config.get('sip.max_video_port')); +} + +/* PUBLIC ELEMENTS */ + +let instance = null; + + +module.exports = class MediaController { + constructor(emitter) { + if (!instance) { + this.emitter = emitter; + this._rooms = {}; + this._users = {}; + this._mediaSessions = {}; + instance = this; + } + + return instance; + } + + start (_kurentoClient, _kurentoToken, callback) { + var self = this; + return callback(null); + } + + stop (callback) { + var self = this; + self.stopAllMedias(function (e) { + if (e) { + callback(e); + } + self._rooms = {}; + }); + } + + getVideoPort () { + return getPort(config.get('sip.min_video_port'), config.get('sip.max_video_port')); + } + + getRoom (roomId) { + return this._rooms[roomId]; + } + + async join (roomId, type, params) { + console.log("[mcs] Join room => " + roomId + ' as ' + type); + try { + let session; + const room = await this.createRoomMCS(roomId); + this._rooms[roomId] = room; + const user = await this.createUserMCS(roomId, type, params); + room.setUser(user.id); + this._users[user.id] = user; + if (params.sdp) { + session = user.addSdp(params.sdp); + } + if (params.uri) { + session = user.addUri(params.sdp); + } + + console.log("[mcs] Resolving user " + user.id); + return Promise.resolve(user.id); + } + catch (err) { + console.log("[mcs] JOIN ERROR " + err); + return Promise.reject(new Error(err)); + } + } + + async leave (roomId, userId) { + try { + console.log(" [mcs] User => " + userId + " wants to leave "); + const room = this.getRoom(roomId); + const user = this.getUserMCS(userId); + + if (!user || !room) { + return Promise.resolve(); + } + + const killedSessions = await user.leave(); + + for (var session in killedSessions) { + this._mediaSessions[killedSessions[session]] = null; + } + + room.destroyUser(user.id); + this._users[user.id] = null; + + + return Promise.resolve(); + } + catch (err) { + return Promise.reject(new Error(err)); + } + } + + async publishnsubscribe (userId, sourceId, sdp, params) { + console.log("[mcs] pns"); + let type = params.type; + try { + user = this.getUserMCS(userId); + let userId = user.id; + let session = user.addSdp(sdp, type); + let sessionId = session.id; + + if (typeof this._mediaSessions[session.id] == 'undefined' || + !this._mediaSessions[session.id]) { + this._mediaSessions[session.id] = {}; + } + + this._mediaSessions[session.id] = session; + + const answer = await user.startSession(session.id); + await user.connect(sourceId, session.id); + + console.log("[mcs] user with sdp session " + session.id); + return Promise.resolve({userId, sessionId}); + } + catch (err) { + console.log("[mcs] PUBLISHNSUBSCRIBE ERROR " + err); + return Promise.reject(new Error(err)); + } + } + + async publish (userId, roomId, type, params) { + console.log("[mcs] publish"); + let session; + // TODO handle mediaType + let mediaType = params.mediaType; + let answer; + + try { + console.log(" [mcs] Fetching user => " + userId); + + const user = await this.getUserMCS(userId); + + console.log(" [mcs] Fetched user => " + user); + + switch (type) { + case "RtpEndpoint": + case "WebRtcEndpoint": + session = user.addSdp(params.descriptor, type); + session.on('SESSION_STOPPED', (pubId) => { + console.log(" [mcs] SESSION ", session.id, " STOPPED "); + if(pubId === session.id) { + for (var sub in session.subscribedSessions) { + console.log(" [mcs] Unsubscribing session ", sub); + let subSession = this._mediaSessions[sub]; + if (subSession) { + subSession.stop(); + this._mediaSessions[sub] = null; + } + } + } + }); + + answer = await user.startSession(session.id); + break; + case "URI": + session = user.addUri(params.descriptor, type); + + answer = await user.startSession(session.id); + break; + + default: return Promise.reject(new Error("[mcs] Invalid media type")); + } + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + + if (typeof this._mediaSessions[session.id] == 'undefined' || + !this._mediaSessions[session.id]) { + this._mediaSessions[session.id] = {}; + } + + this._mediaSessions[session.id] = session; + let sessionId = session.id; + + return Promise.resolve({answer, sessionId}); + } + + async subscribe (userId, sourceId, type, params) { + console.log(" [mcs] subscribe"); + + let session; + // TODO handle mediaType + let mediaType = params.mediaType; + let answer; + let sourceSession = this._mediaSessions[sourceId]; + + if (typeof sourceSession === 'undefined') { + return Promise.reject(new Error(" [mcs] Media session " + sourceId + " was not found")); + } + + try { + console.log(" [mcs] Fetching user => " + userId); + + const user = await this.getUserMCS(userId); + + console.log(" [mcs] Fetched user => " + user); + + switch (type) { + case "RtpEndpoint": + case "WebRtcEndpoint": + session = user.addSdp(params.descriptor, type); + + answer = await user.startSession(session.id); + await sourceSession.connect(session._mediaElement); + sourceSession.subscribedSessions.push(session.id); + console.log(" [mcs] ", sourceSession.id, " subscribers list ", sourceSession.subscribedSessions); + break; + case "URI": + session = user.addUri(params.descriptor, type); + answer = await user.startSession(session.id); + await sourceSession.connect(session._mediaElement); + + break; + + default: return Promise.reject(new Error("[mcs] Invalid media type")); + } + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + + if (typeof this._mediaSessions[session.id] == 'undefined' || + !this._mediaSessions[session.id]) { + this._mediaSessions[session.id] = {}; + } + + this._mediaSessions[session.id] = session; + let sessionId = session.id; + + return Promise.resolve({answer, sessionId}); + } + + async unpublish (userId, mediaId) { + try { + const session = this._mediaSessions[mediaId]; + const user = this.getUserMCS(userId); + + if(typeof session === 'undefined' || !session) { + return Promise.resolve(); + } + + + const answer = await user.unpublish(mediaId); + this._mediaSessions[mediaId] = null; + return Promise.resolve(answer); + } + catch (err) { + return Promise.reject(new Error(err)); + } + } + + async unsubscribe (userId, mediaId) { + try { + const user = this.getUserMCS(userId); + if (user) { + const answer = await user.unsubscribe(mediaId); + this._mediaSessions[mediaId] = null; + } + return Promise.resolve(); + } + catch (err) { + return Promise.reject(new Error(err)); + } + } + + async addIceCandidate (mediaId, candidate) { + let session = this._mediaSessions[mediaId]; + if (typeof session === 'undefined') { + return Promise.reject(new Error(" [mcs] Media session " + mediaId + " was not found")); + } + try { + const ack = await session.addIceCandidate(candidate); + return Promise.resolve(ack); + } + catch (err) { + console.log(err); + return Promise.reject(err); + } + } + + /** + * Creates an empty {Room} room and indexes it + * @param {String} roomId + */ + async createRoomMCS (roomId) { + let self = this; + + console.log(" [media] Creating new room with ID " + roomId); + + if(!self._rooms[roomId]) { + self._rooms[roomId] = new Room(roomId); + } + + return Promise.resolve(self._rooms[roomId]); + } + + /** + * Creates an {User} of type @type + * @param {String} roomId + */ + createUserMCS (roomId, type, params) { + let self = this; + let user; + console.log(" [media] Creating a new user[" + type + "]"); + + switch (type) { + case C.USERS.SFU: + user = new SfuUser(roomId, type, this.emitter, params.userAgentString, params.sdp); + break; + case C.USERS.MCU: + console.log(" [media] createUserMCS MCU TODO"); + break; + default: + console.log(" [controller] Unrecognized user type"); + } + + if(!self._users[user.id]) { + self._users[user.id] = user; + } + + return Promise.resolve(user); + } + + getUserMCS (userId) { + return this._users[userId]; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/media-server.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/media-server.js new file mode 100644 index 0000000000000000000000000000000000000000..6693beb97e4df4f160bc1b3beee78edb17bf532c --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/media/media-server.js @@ -0,0 +1,272 @@ +'use strict' + +const C = require('../constants/Constants.js'); +const config = require('config'); +const mediaServerClient = require('kurento-client'); +const util = require('util'); +const EventEmitter = require('events').EventEmitter; + +let instance = null; + +/* Public members */ +module.exports = class MediaServer extends EventEmitter { + constructor(serverUri) { + if(!instance){ + super(); + this._serverUri = serverUri; + this._mediaPipelines = {}; + this._mediaElements= {}; + this._mediaServer; + instance = this; + } + + return instance; + } + + async init () { + if (typeof this._mediaServer === 'undefined' || !this._mediaServer) { + this._mediaServer = await this._getMediaServerClient(this._serverUri); + } + } + + _getMediaServerClient (serverUri) { + return new Promise((resolve, reject) => { + mediaServerClient(serverUri, (error, client) => { + if (error) { + reject(error); + } + console.log(" [media] Retrieved media server client => " + client); + resolve(client); + }); + }); + } + + _getMediaPipeline (conference) { + return new Promise((resolve, reject) => { + if (this._mediaPipelines[conference]) { + console.log(' [media] Pipeline already exists. ' + JSON.stringify(this._mediaPipelines, null, 2)); + resolve(this._mediaPipelines[conference]); + } + else { + this._mediaServer.create('MediaPipeline', (error, pipeline) => { + if (error) { + console.log(error); + reject(error); + } + this._mediaPipelines[conference] = pipeline; + resolve(pipeline); + }); + } + }); + } + + _releasePipeline (pipelineId) { + let mediaPipeline = this._mediaPipelines[pipelineId]; + + if (typeof mediaPipeline !== 'undefined' && typeof mediaPipeline.release === 'function') { + mediaElement.release(); + } + } + + _createElement (pipeline, type) { + return new Promise((resolve, reject) => { + pipeline.create(type, (error, mediaElement) => { + if (error) { + return reject(error); + } + console.log(" [MediaController] Created [" + type + "] media element: " + mediaElement.id); + this._mediaElements[mediaElement.id] = mediaElement; + return resolve(mediaElement); + }); + }); + } + + + async createMediaElement (conference, type) { + try { + const pipeline = await this._getMediaPipeline(conference); + const mediaElement = await this._createElement(pipeline, type); + return Promise.resolve(mediaElement.id); + } + catch (err) { + return Promise.reject(new Error(err)); + } + } + + async connect (sourceId, sinkId, type) { + let source = this._mediaElements[sourceId]; + let sink = this._mediaElements[sinkId]; + + if (source && sink) { + return new Promise((resolve, reject) => { + switch (type) { + case 'ALL': + source.connect(sink, (error) => { + if (error) { + return reject(error); + } + return resolve(); + }); + break; + + + case 'AUDIO': + case 'VIDEO': + source.connect(sink, (error) => { + if (error) { + return reject(error); + } + return resolve(); + }); + break; + + default: return reject(" [media] Invalid connect type"); + } + }); + } + else { + return Promise.reject(" [media] Failed to connect " + type + ": " + sourceId + " to " + sinkId); + } + } + + stop (elementId) { + let mediaElement = this._mediaElements[elementId]; + if (typeof mediaElement !== 'undefined' && typeof mediaElement.release === 'function') { + console.log(" [media] Releasing endpoint => " + elementId); + mediaElement.release(); + this._mediaElements[elementId] = null; + } + } + + + addIceCandidate (elementId, candidate) { + let mediaElement = this._mediaElements[elementId]; + let kurentoCandidate = mediaServerClient.getComplexType('IceCandidate')(candidate); + + if (typeof mediaElement !== 'undefined' && typeof mediaElement.addIceCandidate === 'function' && + typeof candidate !== 'undefined') { + mediaElement.addIceCandidate(candidate); + console.log(" [media] Added ICE candidate for => " + elementId); + return Promise.resolve(); + } + else { + return Promise.reject(new Error("Candidate could not be parsed or media element does not exist")); + } + } + + gatherCandidates (elementId) { + console.log(' [media] Gathering ICE candidates for ' + elementId); + let mediaElement = this._mediaElements[elementId]; + + return new Promise((resolve, reject) => { + if (typeof mediaElement !== 'undefined' && typeof mediaElement.gatherCandidates === 'function') { + mediaElement.gatherCandidates((error) => { + if (error) { + return reject(new Error(error)); + } + console.log(' [media] Triggered ICE gathering for ' + elementId); + return resolve(); + }); + } + else { + return reject(" [MediaController/gatherCandidates] There is no element " + elementId); + } + }); + } + + setInputBandwidth (elementId, min, max) { + let mediaElement = this._mediaElements[elementId]; + + if (typeof mediaElement !== 'undefined') { + endpoint.setMinVideoRecvBandwidth(min); + endpoint.setMaxVideoRecvBandwidth(max); + } else { + return (" [MediaController/setInputBandwidth] There is no element " + elementId); + } + } + + setOutputBandwidth (endpoint, min, max) { + let mediaElement = this._mediaElements[elementId]; + + if (typeof mediaElement !== 'undefined') { + endpoint.setMinVideoSendBandwidth(min); + endpoint.setMaxVideoSendBandwidth(max); + } else { + return (" [MediaController/setOutputBandwidth] There is no element " + elementId ); + } + } + + setOutputBitrate (endpoint, min, max) { + let mediaElement = this._mediaElements[elementId]; + + if (typeof mediaElement !== 'undefined') { + endpoint.setMinOutputBitrate(min); + endpoint.setMaxOutputBitrate(max); + } else { + return (" [MediaController/setOutputBitrate] There is no element " + elementId); + } + } + + processOffer (elementId, sdpOffer) { + let mediaElement = this._mediaElements[elementId]; + + return new Promise((resolve, reject) => { + if (typeof mediaElement !== 'undefined' && typeof mediaElement.processOffer === 'function') { + mediaElement.processOffer(sdpOffer, (error, answer) => { + if (error) { + return reject(error); + } + return resolve(answer); + }); + } + else { + return reject(" [MediaController/processOffer] There is no element " + elementId); + } + }); + } + + trackMediaState (elementId, type) { + switch (type) { + case C.MEDIA_TYPE.URI: + this.addMediaEventListener(C.EVENT.MEDIA_STATE.ENDOFSTREAM, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.CHANGED, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_IN, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_OUT, elementId); + break; + + case C.MEDIA_TYPE.WEBRTC: + this.addMediaEventListener(C.EVENT.MEDIA_STATE.CHANGED, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_IN, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_OUT, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.ICE, elementId); + break; + + case C.MEDIA_TYPE.RTP: + this.addMediaEventListener(C.EVENT.MEDIA_STATE.CHANGED, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_IN, elementId); + this.addMediaEventListener(C.EVENT.MEDIA_STATE.FLOW_OUT, elementId); + break; + + default: return; + } + return; + } + + addMediaEventListener (eventTag, elementId) { + let mediaElement = this._mediaElements[elementId]; + // TODO event type validator + if (typeof mediaElement !== 'undefined' && mediaElement) { + console.log(' [media] Adding media state listener [' + eventTag + '] for ' + elementId); + mediaElement.on(eventTag, (event) => { + if (eventTag === C.EVENT.MEDIA_STATE.ICE) { + event.candidate = mediaServerClient.getComplexType('IceCandidate')(event.candidate); + } + this.emit(C.EVENT.MEDIA_STATE.MEDIA_EVENT+elementId , {eventTag, event}); + }); + } + } + + notifyMediaState (elementId, eventTag, event) { + this.emit(C.MEDIA_STATE.MEDIA_EVENT , {elementId, eventTag, event}); + } +}; diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/Room.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/Room.js new file mode 100644 index 0000000000000000000000000000000000000000..1b9eb77cbea7e652595f8d8ff023f6b997ad5b1c --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/Room.js @@ -0,0 +1,30 @@ +/** + * @classdesc + * Model class for rooms + */ + +'use strict' + +module.exports = class Room { + constructor(id) { + this._id = id; + this._users = {}; + this._mcuUsers = {}; + } + + getUser (id) { + return this._users[id]; + } + + setUser (user) { + if (typeof this._users[user.id] == 'undefined' || + !this._users[user.id]) { + this._users[user.id] = {}; + } + this._users[user.id] = user; + } + + destroyUser(userId) { + this._users[userId] = null;; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SdpSession.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SdpSession.js new file mode 100644 index 0000000000000000000000000000000000000000..e532a3d7089e2dfafe12f1842bd7d3da10e31a03 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SdpSession.js @@ -0,0 +1,119 @@ +/** + * @classdesc + * Model class for external devices + */ + +'use strict' + +const C = require('../constants/Constants'); +const SdpWrapper = require('../utils/SdpWrapper'); +const rid = require('readable-id'); +const EventEmitter = require('events').EventEmitter; +const MediaServer = require('../media/media-server'); +const config = require('config'); +const kurentoUrl = config.get('kurentoUrl'); + +module.exports = class SdpSession extends EventEmitter { + constructor(emitter, sdp = null, room, type = 'WebRtcEndpoint') { + super(); + this.id = rid(); + this.room = room; + this.emitter = emitter; + this._status = C.STATUS.STOPPED; + this._type = type; + // {SdpWrapper} SdpWrapper + this._sdp; + if (sdp && type) { + this.setSdp(sdp, type); + } + this._MediaServer = new MediaServer(kurentoUrl); + this._mediaElement; + this.subscribedSessions = []; + } + + async setSdp (sdp, type) { + this._sdp = new SdpWrapper(sdp, type); + await this._sdp.processSdp(); + } + + async start (sdpId) { + this._status = C.STATUS.STARTING; + try { + const client = await this._MediaServer.init(); + + console.log("[SdpSession] start/cme"); + this._mediaElement = await this._MediaServer.createMediaElement(this.room, this._type); + console.log("[SdpSession] start/po " + this._mediaElement); + + this._MediaServer.trackMediaState(this._mediaElement, this._type); + this._MediaServer.on(C.EVENT.MEDIA_STATE.MEDIA_EVENT+this._mediaElement, (event) => { + setTimeout(() => { + event.id = this.id; + this.emitter.emit(C.EVENT.MEDIA_STATE.MEDIA_EVENT+this.id, event); + }, 50); + }); + + const answer = await this._MediaServer.processOffer(this._mediaElement, this._sdp.getPlainSdp()); + + if (this._type === 'WebRtcEndpoint') { + this._MediaServer.gatherCandidates(this._mediaElement); + } + + return Promise.resolve(answer); + } + catch (err) { + this.handleError(err); + return Promise.reject(err); + } + } + + // TODO move to parent Session + async stop () { + this._status = C.STATUS.STOPPING; + try { + await this._MediaServer.stop(this._mediaElement); + this._status = C.STATUS.STOPPED; + console.log(" [SdpSession] Session ", this.id, " is going to stop..."); + this.emit('SESSION_STOPPED', this.id); + Promise.resolve(); + } + catch (err) { + this.handleError(err); + Promise.reject(err); + } + } + + + // TODO move to parent Session + // TODO handle connection type + async connect (sinkId) { + try { + console.log(" [SdpSession] Connecting " + this._mediaElement + " => " + sinkId); + await this._MediaServer.connect(this._mediaElement, sinkId, 'ALL'); + return Promise.resolve(); + } + catch (err) { + this.handleError(err); + return Promise.reject(err); + } + } + + async addIceCandidate (candidate) { + try { + await this._MediaServer.addIceCandidate(this._mediaElement, candidate); + Promise.resolve(); + } + catch (err) { + Promise.reject(err); + } + } + + addMediaEventListener (type, mediaId) { + this._MediaServer.addMediaEventListener (type, mediaId); + } + + handleError (err) { + console.log(err); + this._status = C.STATUS.STOPPED; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SfuUser.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SfuUser.js new file mode 100644 index 0000000000000000000000000000000000000000..86cced861c78564e0ac7789395a7e599593a503d --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/SfuUser.js @@ -0,0 +1,187 @@ +/** + * @classdesc + * Model class for external devices + */ + +'use strict' + +const User = require('./User'); +const C = require('../constants/Constants'); +const SdpWrapper = require('../utils/SdpWrapper'); +const SdpSession = require('../model/SdpSession'); +const UriSession = require('../model/UriSession'); + +module.exports = class SfuUser extends User { + constructor(_roomId, type, emitter, userAgentString = C.STRING.ANONYMOUS, sdp = null, uri = null) { + super(_roomId); + // {SdpWrapper} SdpWrapper + this._sdp; + // {Object} hasAudio, hasVideo, hasContent + this._mediaSessions = {} + this.userAgentString; + this.emitter = emitter; + if (sdp) { + this.addSdp(sdp); + } + if (uri) { + this.addUri(uri); + } + } + + async addUri (uri, type) { + // TODO switch from type to children UriSessions (RTSP|HTTP|etc) + let session = new UriSession(uri, type); + + if (typeof this._mediaSessions[session.id] == 'undefined' || + !this._mediaSessions[session.id]) { + this._mediaSessions[session.id] = {}; + } + this._mediaSessions[session.id] = session; + try { + await this.startSession(session.id); + Promise.resolve(session.id); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + addSdp (sdp, type) { + // TODO switch from type to children SdpSessions (WebRTC|SDP) + let session = new SdpSession(this.emitter, sdp, this.roomId, type); + this.emitter.emit(C.EVENT.NEW_SESSION+this.id, session.id); + session.on("SESSION_STOPPED", (sessId) => { + console.log(" [SfuUser] Session ", sessId, "stopped, cleaning it..."); + if (sessId === session.id) { + this._mediaSessions[sessId] = null; + } + }); + + if (typeof this._mediaSessions[session.id] == 'undefined' || + !this._mediaSessions[session.id]) { + this._mediaSessions[session.id] = {}; + } + this._mediaSessions[session.id] = session; + console.log("[SfuUser] Added SDP " + session.id); + + return session; + } + + async startSession (sessionId) { + console.log("[SfuUser] starting session " + sessionId); + let session = this._mediaSessions[sessionId]; + + try { + const answer = await session.start(); + return Promise.resolve(answer); + } + catch (err) { + this.handleError(err); + return Promise.reject(new Error(err)); + } + } + + async subscribe (sdp, type, mediaId) { + try { + const session = await this.addSdp(sdp, type); + await this.startSession(session.id); + await this.connect(session.id, mediaId); + Promise.resolve(session); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + async publish (sdp, mediaId) { + let session = await this.addSdp(sdp); + try { + await this.startSession(session.id); + Promise.resolve(); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + async unsubscribe (mediaId) { + try { + await this.stopSession(mediaId); + Promise.resolve(); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + async unpublish (mediaId) { + try { + await this.stopSession(mediaId); + Promise.resolve(); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + async stopSession (sessionId) { + console.log(" [SfuUser] Stopping session => " + sessionId); + let session = this._mediaSessions[sessionId]; + + try { + await session.stop(); + this._mediaSessions[sessionId] = null; + return Promise.resolve(); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + async connect (sourceId, sinkId) { + let session = this._mediaSessions[sourceId]; + if(session) { + try { + console.log(" [SfuUser] Connecting sessions " + sourceId + "=>" + sinkId); + await session.connect(sinkId); + return Promise.resolve(); + } + catch (err) { + this.handleError(err); + return Promise.reject(new Error(err)); + } + } + else { + return Promise.reject(new Error(" [SfuUser] Source session " + sourceId + " not found")); + } + } + + async leave () { + let sessions = Object.keys(this._mediaSessions); + console.log(" [SfuUser] User sessions will be killed"); + console.log(sessions); + + try { + for (var session in sessions) { + await this.stopSession(sessions[session]); + } + + return Promise.resolve(sessions); + } + catch (err) { + this.handleError(err); + Promise.reject(new Error(err)); + } + } + + handleError (err) { + console.log(err); + this._status = C.STATUS.STOPPED; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/UriSession.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/UriSession.js new file mode 100644 index 0000000000000000000000000000000000000000..8193a56524e10a0958248e3abb95a0106e6312c2 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/UriSession.js @@ -0,0 +1,73 @@ +/** + * @classdesc + * Model class for external devices + */ + +'use strict' + +const C = require('../constants/Constants'); +const rid = require('readable-id'); +const EventEmitter = require('events').EventEmitter; +const MediaServer = require('../media/media-server'); + +module.exports = class UriSession extends EventEmitter { + constructor(uri = null) { + super(); + this.id = rid(); + this._status = C.STATUS.STOPPED; + this._uri; + if (uri) { + this.setUri(uri); + } + } + + setUri (uri) { + this._uri = uri; + } + + async start () { + this._status = C.STATUS.STARTING; + try { + const mediaElement = await MediaServer.createMediaElement(this.id, C.MEDIA_TYPE.URI); + console.log("start/cme"); + await MediaServer.play(this.id); + this._status = C.STATUS.STARTED; + return Promise.resolve(); + } + catch (err) { + this.handleError(err); + return Promise.reject(new Error(err)); + } + } + + // TODO move to parent Session + async stop () { + this._status = C.STATUS.STOPPING; + try { + await MediaServer.stop(this.id); + this._status = C.STATUS.STOPPED; + return Promise.resolve(); + } + catch (err) { + this.handleError(err); + return Promise.reject(new Error(err)); + } + } + + // TODO move to parent Session + async connect (sinkId) { + try { + await MediaServer.connect(this.id, sinkId); + return Promise.resolve() + } + catch (err) { + this.handleError(err); + return Promise.reject(new Error(err)); + } + } + + handleError (err) { + console.log(err); + this._status = C.STATUS.STOPPED; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/User.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/User.js new file mode 100644 index 0000000000000000000000000000000000000000..919a505189bcbe977d9e0801310ff6382a351bd5 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/model/User.js @@ -0,0 +1,18 @@ +/** + * @classdesc + * Model class for external devices + */ + +'use strict' + +const rid = require('readable-id'); +const User = require('./User'); +const C = require('../constants/Constants.js'); + +module.exports = class User { + constructor(roomId, type, userAgentString = C.STRING.ANONYMOUS) { + this.roomId = roomId; + this.id = rid(); + this.userAgentString = userAgentString; + } +} diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/SdpWrapper.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/SdpWrapper.js new file mode 100644 index 0000000000000000000000000000000000000000..eea0d58895e7424e145df30a93d7a20fe6db1a29 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/SdpWrapper.js @@ -0,0 +1,256 @@ +/** + * @classdesc + * Utils class for manipulating SDP + */ + +'use strict' + +var config = require('config'); +var transform = require('sdp-transform'); + +module.exports = class SdpWrapper { + constructor(sdp) { + this._plainSdp = sdp; + this._jsonSdp = transform.parse(sdp); + this._mediaLines = {}; + this._mediaCapabilities = {}; + this._profileThreshold = "ffffff"; + } + + setSdp (sdp) { + this._plainSdp = sdp; + this._jsonSdp = transform.parse(sdp); + } + + getPlainSdp () { + return this._plainSdp; + } + + getJsonSdp () { + return this._jsonSdp; + } + + removeFmtp () { + return this._plainSdp.replace(/(a=fmtp:).*/g, ''); + } + + replaceServerIpv4 (ipv4) { + return this._plainSdp.replace(/(IP4\s[0-9.]*)/g, 'IP4 ' + ipv4); + } + + getCallId () { + return this._plainSdp.match(/(call-id|i):\s(.*)/i)[2]; + } + + /** + * Given a SDP, test if there is more than on video description + * @param {string} sdp The Session Descriptor + * @return {boolean} true if there is more than one video description, else false + */ + hasAudio () { + return /(m=audio)/i.test(this._plainSdp); + } + + /** + * Given a SDP, test if there is a video description in it + * @param {string} sdp The Session Descriptor + * @return {boolean} true if there is a video description, else false + */ + hasVideo (sdp) { + return /(m=video)/i.test(sdp); + } + + /** + * Given a SDP, test if there is more than on video description + * @param {string} sdp The Session Descriptor + * @return {boolean} true if there is more than one video description, else false + */ + hasMultipleVideo (sdp) { + return /(m=video)([\s\S]*\1){1,}/i.test(sdp); + } + + /** + * Given a SDP, return its Session Description + * @param {string} sdp The Session Descriptor + * @return {string} Session description (SDP until the first media line) + */ + getSessionDescription (sdp) { + return sdp.match(/[\s\S]+?(?=m=audio|m=video)/i); + } + + removeSessionDescription (sdp) { + return sdp.match(/(?=[\s\S]+?)(m=audio[\s\S]+|m=video[\s\S]+)/i)[1]; + } + + getVideoParameters (sdp) { + var res = transform.parse(sdp); + console.log(" [sdp] getVideoParameters => " + JSON.stringify(res, null, 2)); + var params = {}; + params.fmtp = ""; + params.codecId = 96; + var pt = 0; + for(var ml of res.media) { + if(ml.type == 'video') { + if (typeof ml.fmtp[0] != 'undefined' && ml.fmtp) { + params.codecId = ml.fmtp[0].payload; + params.fmtp = ml.fmtp[0].config; + console.log(" [sdp] getVideoParameters fmtp => " + JSON.stringify(params)); + return params; + } + } + } + return params; + } + + /** + * Given a SDP, return its Content Description + * @param {string} sdp The Session Descriptor + * @return {string} Content Description (SDP after first media description) + */ + getContentDescription (sdp) { + var res = transform.parse(sdp); + res.media = res.media.filter(function (ml) { return ml.type == "video" }); + var mangledSdp = transform.write(res); + if(typeof mangledSdp != undefined && mangledSdp && mangledSdp != "") { + return mangledSdp; + } + else + return sdp; + } + + /** + * Given a SDP, return its first Media Description + * @param {string} sdp The Session Descriptor + * @return {string} Content Description (SDP after first media description) + */ + getAudioDescription (sdp) { + var res = transform.parse(sdp); + res.media = res.media.filter(function (ml) { return ml.type == "audio" }); + // Hack: Some devices (Snom, Pexip) send crypto with RTP/AVP + // That is forbidden according to RFC3711 and FreeSWITCH rebukes it + res = this.removeTransformCrypto(res); + var mangledSdp = transform.write(res); + this.getSessionDescription(mangledSdp); + if(typeof mangledSdp != undefined && mangledSdp && mangledSdp != "") { + return mangledSdp; + } + else { + return sdp; + } + } + + /** + * Given a SDP, return its first Media Description + * @param {string} sdp The Session Descriptor + * @return {string} Content Description (SDP after first media description) + */ + getMainDescription () { + var res = transform.parse(this._plainSdp); + // Filter should also carry && ml.invalid[0].value != 'content:slides'; + // when content is enabled + res.media = res.media.filter(function (ml) { return ml.type == "video"}); //&& ml.invalid[0].value != 'content:slides'}); + var mangledSdp = transform.write(res); + if (typeof mangledSdp != undefined && mangledSdp && mangledSdp != "") { + console.log(" [sdp] MAIN VIDEO SDP => " + mangledSdp); + return mangledSdp; + } + else { + return sdp; + } + } + + /** + * Given a JSON SDP, remove associated crypto 'a=' lines from media lines + * WARNING: HACK MADE FOR FreeSWITCH ~1.4 COMPATIBILITY + * @param {Object} sdp The Session Descriptor JSON + * @return {Object} JSON SDP without crypto lines + */ + removeTransformCrypto (sdp) { + for(var ml of sdp.media) { + delete ml['crypto']; + } + return sdp; + } + + removeHighQualityFmtps (sdp) { + let res = transform.parse(sdp); + let maxProfileLevel = config.get('kurento.maximum_profile_level_hex'); + let pt = 0; + let idx = 0; + for(var ml of res.media) { + if(ml.type == 'video') { + for(var fmtp of ml.fmtp) { + let fmtpConfig = transform.parseParams(fmtp.config); + let profileId = fmtpConfig['profile-level-id']; + if(typeof profileId !== 'undefined' && parseInt(profileId, 16) > parseInt(maxProfileLevel, 16)) { + console.log(" [sdp] Filtering profile " + parseInt(profileId, 16) + ". Higher than max "+ parseInt(maxProfileLevel, 16)); + pt = fmtp.payload; + delete ml.fmtp[idx]; + ml.rtp = ml.rtp.filter((rtp) => { return rtp.payload != pt}); + } + else { + // Remove fmtp further specifications + //let configProfile = "profile-level-id="+profileId; + //fmtp.config = configProfile; + } + idx++; + } + } + } + var mangledSdp = transform.write(res); + return mangledSdp; + } + + async processSdp () { + let description = this._plainSdp; + //if(config.get('kurento.force_low_resolution')) { + // description = this.removeFmtp(description); + //} + + description = description.toString().replace(/telephone-event/, "TELEPHONE-EVENT"); + + this._mediaCapabilities.hasVideo = this.hasVideo(description); + this._mediaCapabilities.hasAudio = this.hasAudio(description); + this._mediaCapabilities.hasContent = this.hasMultipleVideo(description); + this.sdpSessionDescription = this.getSessionDescription(description); + this.audioSdp = this.getAudioDescription(description); + this.mainVideoSdp = this.getMainDescription(description); + //this.mainVideoSdp = this.removeHighQualityFmtps(this.mainVideoSdp); + this.contentVideoSdp = this.getContentDescription(description); + + return; + } + + /* DEVELOPMENT METHODS */ + _disableMedia (sdp) { + return sdp.replace(/(m=application\s)\d*/g, "$10"); + }; + + /** + * Given a SDP, add Floor Control response + * @param {string} sdp The Session Descriptor + * @return {string} A new Session Descriptor with Floor Control + */ + _addFloorControl (sdp) { + return sdp.replace(/a=inactive/i, 'a=sendrecv\r\na=floorctrl:c-only\r\na=setup:active\r\na=connection:new'); + } + + /** + * Given a SDP, add Floor Control response to reinvite + * @param {string} sdp The Session Descriptor + * @return {string} A new Session Descriptor with Floor Control Id + */ + _addFloorId (sdp) { + sdp = sdp.replace(/(a=floorctrl:c-only)/i, '$1\r\na=floorid:1 m-stream:3'); + return sdp.replace(/(m=video.*)([\s\S]*?m=video.*)([\s\S]*)/i, '$1\r\na=content:main\r\na=label:1$2\r\na=content:slides\r\na=label:3$3'); + } + + /** + * Given the string representation of a Session Descriptor, remove it's video + * @param {string} sdp The Session Descriptor + * @return {string} A new Session Descriptor without the video + */ + _removeVideoSdp (sdp) { + return sdp.replace(/(m=video[\s\S]+)/g,''); + }; +}; diff --git a/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/sdp-utils.js b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/sdp-utils.js new file mode 100644 index 0000000000000000000000000000000000000000..11b06b0bcf49d721be79203de85fe307962b74a7 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/mcs-core/lib/utils/sdp-utils.js @@ -0,0 +1,37 @@ +/** + * @classdesc + * Utils class for SDP generation + */ + +module.exports.generateSdp = function(remote_ip_address, remote_video_port) { + return "v=0\r\n" + + "o=- 0 0 IN IP4 " + remote_ip_address + "\r\n" + + "s=No Name\r\n" + + "c=IN IP4 " + remote_ip_address + "\r\n" + + "t=0 0\r\n" + + "m=video " + remote_video_port + " RTP/AVP 96\r\n" + + "a=rtpmap:96 H264/90000\r\n" + + "a=ftmp:96 packetization-mode=0\r\n"; +} + +/** + * Generates a video SDP given the media specs + * @param {string} sourceIpAddress The source IP address of the media + * @param {string} sourceVideoPort The source video port of the media + * @param {string} codecId The ID of the codec + * @param {string} sendReceive The SDP flag of the media flow + * direction, 'sendonly', 'recvonly' or 'sendrecv' + * @param {String} rtpProfile The RTP profile of the RTP Endpoint + * @param {String} codecName The name of the codec used for the RTP + * Endpoint + * @param {String} codecRate The codec rate + * @return {string} The Session Descriptor for the media + */ +module.exports.generateVideoSdp = function (sourceIpAddress, sourceVideoPort, codecId, sendReceive, rtpProfile, codecName, codecRate, fmtp) { + return 'm=video ' + sourceVideoPort + ' ' + rtpProfile + ' ' + codecId + '\r\n' + + 'a=' + sendReceive + '\r\n' + + 'c=IN IP4 ' + sourceIpAddress + '\r\n' + + 'a=rtpmap:' + codecId + ' ' + codecName + '/' + codecRate + '\r\n' + + 'a=fmtp:' + codecId + ' ' + fmtp + '\r\n'; +}; + diff --git a/labs/kurento-screenshare/lib/media-handler.js b/labs/bbb-webrtc-sfu/lib/media-handler.js similarity index 69% rename from labs/kurento-screenshare/lib/media-handler.js rename to labs/bbb-webrtc-sfu/lib/media-handler.js index 2d1ab3815cb3d583be7a115c12ab6a1c6626fa92..5c611ec395d7a994c162f5e1b0e11088f5e6b233 100644 --- a/labs/kurento-screenshare/lib/media-handler.js +++ b/labs/bbb-webrtc-sfu/lib/media-handler.js @@ -1,42 +1,6 @@ var config = require('config'); -var kurento = require('kurento-client'); var Constants = require('./bbb/messages/Constants'); -var kurentoClient = null; -var mediaPipelines = {}; - -module.exports.getKurentoClient = function(kurentoUrl, callback) { - if (kurentoClient !== null) { - return callback(null, kurentoClient); - } - - kurento(kurentoUrl, function(error, _kurentoClient) { - if (error) { - console.log("Could not find media server at address " + kurentoUrl); - return callback("Could not find media server at address" + kurentoUrl + ". Exiting with error " + error); - } - - console.log(" [MediaHandler] Initiating kurento client. Connecting to: " + kurentoUrl); - - kurentoClient = _kurentoClient; - callback(null, kurentoClient); - }); -} - -module.exports.getMediaPipeline = function(id, callback) { - console.log(' [MediaHandler] Creating media pipeline for ' + id); - - if (mediaPipelines[id]) { - console.log(' [media] Pipeline already exists.'); - callback(null, mediaPipelines[id]); - } else { - kurentoClient.create('MediaPipeline', function(err, pipeline) { - mediaPipelines[id] = pipeline; - return callback(err, pipeline); - }); - } -} - module.exports.generateSdp = function(remote_ip_address, remote_video_port) { return "v=0\r\n" + "o=- 0 0 IN IP4 " + remote_ip_address + "\r\n" @@ -76,7 +40,7 @@ module.exports.generateStreamUrl = function (address, meeting, path) { return "rtmp://" + address + "/video-broadcast/" + meeting + "/" + path; } -module.exports.generateTranscoderParams = function (localIp, destIp, sendPort, recvPort, input, streamType, transcoderType, codec, callername) { +module.exports.generateTranscoderParams = function (localIp, destIp, sendPort, recvPort, input, streamType, transcoderType, codec, callername, voiceConf) { var rtpParams = {}; rtpParams[Constants.LOCAL_IP_ADDRESS] = localIp; rtpParams[Constants.LOCAL_VIDEO_PORT] = sendPort; @@ -87,6 +51,7 @@ module.exports.generateTranscoderParams = function (localIp, destIp, sendPort, r rtpParams[Constants.TRANSCODER_TYPE] = transcoderType; rtpParams[Constants.TRANSCODER_CODEC] = codec; rtpParams[Constants.CALLERNAME] = callername; + rtpParams[Constants.VOICE_CONF] = voiceConf; return rtpParams; } diff --git a/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareManager.js b/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareManager.js new file mode 100644 index 0000000000000000000000000000000000000000..024bb7bf4e9eaf5a1ff8dcf5a7a888bcf9f6e27b --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareManager.js @@ -0,0 +1,190 @@ +/* + * Lucas Fialho Zawacki + * Paulo Renato Lanzarin + * (C) Copyright 2017 Bigbluebutton + * + */ + +"use strict"; + +const BigBlueButtonGW = require('../bbb/pubsub/bbb-gw'); +const Screenshare = require('./screenshare'); +const C = require('../bbb/messages/Constants'); +// Global variables + +module.exports = class ScreenshareManager { + constructor (logger) { + this._logger = logger; + this._clientId = 0; + + this._sessions = {}; + this._screenshareSessions = {}; + + this._bbbGW = new BigBlueButtonGW("MANAGER"); + this._redisGateway; + } + + async start() { + try { + this._redisGateway = await this._bbbGW.addSubscribeChannel(C.TO_SCREENSHARE); + const transcode = await this._bbbGW.addSubscribeChannel(C.FROM_BBB_TRANSCODE_SYSTEM_CHAN); + this._redisGateway.on(C.REDIS_MESSAGE, this._onMessage.bind(this)); + console.log(' [ScreenshareManager] Successfully subscribed to redis channel'); + } + catch (error) { + console.log(' [ScreenshareManager] Could not connect to transcoder redis channel, finishing app...'); + console.log(error); + this.stopAll(); + } + } + + _onMessage(_message) { + console.log(' [ScreenshareManager] Received message => '); + let session; + let message = _message; + + let sessionId = message.voiceBridge; + let connectionId = message.connectionId; + + if(this._screenshareSessions[sessionId]) { + session = this._screenshareSessions[sessionId]; + } + + switch (message.id) { + + case 'presenter': + + // Checking if there's already a Screenshare session started + // because we shouldn't overwrite it + + if (!this._screenshareSessions[message.voiceBridge]) { + this._screenshareSessions[message.voiceBridge] = {} + this._screenshareSessions[message.voiceBridge] = session; + } + + if(session) { + break; + } + + session = new Screenshare(connectionId, this._bbbGW, + sessionId, connectionId, message.vh, message.vw, + message.internalMeetingId); + + this._screenshareSessions[sessionId] = {} + this._screenshareSessions[sessionId] = session; + + // starts presenter by sending sessionID, websocket and sdpoffer + session._startPresenter(sessionId, message.sdpOffer, (error, sdpAnswer) => { + console.log(" [ScreenshareManager] Started presenter " + sessionId); + if (error) { + this._bbbGW.publish(JSON.stringify({ + connectionId: session._id, + id : 'presenterResponse', + response : 'rejected', + message : error + }), C.FROM_SCREENSHARE); + return error; + } + + this._bbbGW.publish(JSON.stringify({ + connectionId: session._id, + id : 'presenterResponse', + response : 'accepted', + sdpAnswer : sdpAnswer + }), C.FROM_SCREENSHARE); + + console.log(" [ScreenshareManager] [websocket] Sending presenterResponse \n" + sdpAnswer); + }); + break; + + case 'viewer': + console.log(" [ScreenshareManager][viewer] Session output \n " + session); + if (message.sdpOffer && message.voiceBridge) { + if (session) { + session._startViewer(message.connectionId, message.voiceBridge, message.sdpOffer, connectionId, + this._screenshareSessions[message.voiceBridge]._presenterEndpoint); + } else { + // TODO ERROR HANDLING + } + } + break; + + case 'stop': + console.log('[' + message.id + '] connection ' + sessionId); + + if (session) { + session._stop(sessionId); + } else { + console.log(" [stop] Why is there no session on STOP?"); + } + break; + + case 'onIceCandidate': + if (session) { + session.onIceCandidate(message.candidate); + } else { + console.log(" [iceCandidate] Why is there no session on ICE CANDIDATE?"); + } + break; + + case 'viewerIceCandidate': + console.log("[viewerIceCandidate] Session output => " + session); + if (session) { + session.onViewerIceCandidate(message.candidate, connectionId); + } else { + console.log("[iceCandidate] Why is there no session on ICE CANDIDATE?"); + } + break; + + case 'close': + console.log(' [ScreenshareManager] Connection ' + connectionId + ' closed'); + + if (message.role === 'presenter' && this._screenshareSessions[sessionId]) { + console.log(" [ScreenshareManager] Stopping presenter " + sessionId); + this._stopSession(sessionId); + } + if (message.role === 'viewer' && typeof session !== 'undefined') { + console.log(" [ScreenshareManager] Stopping viewer " + sessionId); + session.stopViewer(message.connectionId); + } + break; + + default: + this._bbbGW.publish(JSON.stringify({ + connectionId: session._id? session._id : 'none', + id : 'error', + message: 'Invald message ' + message + }), C.FROM_SCREENSHARE); + break; + } + } + + _stopSession(sessionId) { + console.log(' [>] Stopping session ' + sessionId); + + if (typeof this._screenshareSessions === 'undefined' || typeof sessionId === 'undefined') { + return; + } + + let session = this._screenshareSessions[sessionId]; + if(typeof session !== 'undefined' && typeof session._stop === 'function') { + session._stop(); + } + + delete this._screenshareSessions[sessionId]; + } + + stopAll() { + console.log('\n [x] Stopping everything! '); + + if (typeof this._screenshareSessions === 'undefined') { + return; + } + + let sessionIds = Object.keys(this._screenshareSessions); + + for (let i = 0; i < sessionIds.length; i++) { + this._stopSession(sessionIds[i]); + } + } +}; diff --git a/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareProcess.js b/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..223bde09dfb129381ca98bb591e1ecb83291af16 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/screenshare/ScreenshareProcess.js @@ -0,0 +1,10 @@ +const ScreenshareManager = require('./ScreenshareManager'); + +let c = new ScreenshareManager(); +c.start(); + +process.on('uncaughtException', function (error) { + console.log(error.stack); +}); + +process.on('disconnect', c.stopAll); diff --git a/labs/bbb-webrtc-sfu/lib/screenshare/screenshare.js b/labs/bbb-webrtc-sfu/lib/screenshare/screenshare.js new file mode 100644 index 0000000000000000000000000000000000000000..df3df06f1c5470a449e64c899ea9995f8e1d4ae8 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/screenshare/screenshare.js @@ -0,0 +1,357 @@ +/* +* Lucas Fialho Zawacki + * Paulo Renato Lanzarin + * (C) Copyright 2017 Bigbluebutton + * + */ + +'use strict' + +// Imports +const C = require('../bbb/messages/Constants'); +const MediaHandler = require('../media-handler'); +const Messaging = require('../bbb/messages/Messaging'); +const moment = require('moment'); +const h264_sdp = require('../h264-sdp'); +const now = moment(); +const MCSApi = require('../mcs-core/lib/media/MCSApiStub'); +const config = require('config'); +const kurentoIp = config.get('kurentoIp'); +const localIpAddress = config.get('localIpAddress'); + +// Global stuff +var sharedScreens = {}; +var rtpEndpoints = {}; + +if (config.get('acceptSelfSignedCertificate')) { + process.env.NODE_TLS_REJECT_UNAUTHORIZED=0; +} + +module.exports = class Screenshare { + constructor(id, bbbgw, voiceBridge, caller = 'caller', vh, vw, meetingId) { + this.mcs = new MCSApi(); + this._id = id; + this._BigBlueButtonGW = bbbgw; + this._presenterEndpoint = null; + this._ffmpegEndpoint = null; + this._voiceBridge = voiceBridge; + this._meetingId = meetingId; + this._caller = caller; + this._streamUrl = ""; + this._vw = vw; + this._vh = vh; + this._presenterCandidatesQueue = []; + this._viewersEndpoint = []; + this._viewersCandidatesQueue = []; + } + + onIceCandidate (_candidate) { + if (this._presenterEndpoint) { + try { + this.flushCandidatesQueue(this._presenterEndpoint, this._presenterCandidatesQueue); + this.mcs.addIceCandidate(this._presenterEndpoint, _candidate); + } + catch (err) { + console.log(err); + } + } + else { + this._presenterCandidatesQueue.push(_candidate); + } + }; + + flushCandidatesQueue (mediaId, queue) { + if (this.mediaId) { + try { + while(queue.length) { + let candidate = queue.shift(); + this.mcs.addIceCandidate(mediaId, candidate); + } + } + catch (err) { + console.log(err); + } + } + } + + mediaStateRtp (event) { + let msEvent = event.event; + + console.log(' [screenshare] ' + msEvent.type + '[' + msEvent.state + ']' + ' for endpoint ' + this._id); + + switch (event.eventTag) { + case "MediaStateChanged": + break; + + case "MediaFlowOutStateChange": + break; + + case "MediaFlowInStateChange": + if (msEvent.state === 'FLOWING') { + this._onRtpMediaFlowing(); + } + else { + this._onRtpMediaNotFlowing(); + } + break; + + default: console.log(" [video] Unrecognized event"); + } + } + + mediaStateWebRtc (event, id) { + let msEvent = event.event; + + console.log(' [screenshare] ' + msEvent.type + '[' + msEvent.state + ']' + ' for endpoint ' + this._id); + + switch (event.eventTag) { + case "OnIceCandidate": + let candidate = msEvent.candidate; + this._BigBlueButtonGW.publish(JSON.stringify({ + connectionId: id, + id : 'iceCandidate', + cameraId: this._id, + candidate : candidate + }), C.FROM_SCREENSHARE); + + break; + + case "MediaStateChanged": + break; + + case "MediaFlowOutStateChange": + break; + + case "MediaFlowInStateChange": + break; + + default: console.log(" [video] Unrecognized event"); + } + } + + async _startPresenter(id, sdpOffer, callback) { + let presenterSdpAnswer, rtpSdpAnswer; + let _callback = callback; + + // Force H264 on Firefox and Chrome + sdpOffer = h264_sdp.transform(sdpOffer); + console.log(" [screenshare] Starting presenter " + id + " at voiceBridge " + this._voiceBridge); + + try { + this.userId = await this.mcs.join(this._meetingId, 'SFU', {}); + console.log(" [video] Join returned => " + this.userId); + } + catch (err) { + console.log(" [video] MCS join returned error => " + err); + return callback(err); + } + + try { + const retSource = await this.mcs.publish(this.userId, this._meetingId, 'WebRtcEndpoint', {descriptor: sdpOffer}); + + this._presenterEndpoint = retSource.sessionId; + sharedScreens[id] = this._presenterEndpoint; + presenterSdpAnswer = retSource.answer; + this.flushCandidatesQueue(this._presenterEndpoint, this._presenterCandidatesQueue); + + this.mcs.on('MediaEvent' + this._presenterEndpoint, (event) => { + this.mediaStateWebRtc(event, this._id) + }); + + console.log(" [video] Publish returned => " + this._presenterEndpoint); + + } + catch (err) { + console.log(" [video] MCS publish returned error => " + err); + return callback(err); + } + + try { + let sendVideoPort = MediaHandler.getVideoPort(); + let rtpSdpOffer = MediaHandler.generateVideoSdp(localIpAddress, sendVideoPort); + + const retRtp = await this.mcs.subscribe(this.userId, sharedScreens[id], 'RtpEndpoint', {descriptor: rtpSdpOffer}); + + this._ffmpegEndpoint = retRtp.sessionId; + rtpEndpoints[id] = this._ffmpegEndpoint; + + let recvVideoPort = retRtp.answer.match(/m=video\s(\d*)/)[1]; + this._rtpParams = MediaHandler.generateTranscoderParams(kurentoIp, localIpAddress, + sendVideoPort, recvVideoPort, this._meetingId, "stream_type_video", C.RTP_TO_RTMP, "copy", this._caller, this._voiceBridge); + + this.mcs.on('MediaEvent' + this._ffmpegEndpoint, this.mediaStateRtp.bind(this)); + + console.log(" [video] Subscribe returned => " + this._ffmpegEndpoint); + + return callback(null, presenterSdpAnswer); + } + catch (err) { + console.log(" [video] MCS subscribe returned error => " + err); + return callback(err); + } + } + + onViewerIceCandidate(candidate, callerName) { + if (this._viewersEndpoint[callerName]) { + try { + this.flushCandidatesQueue(this._viewersEndpoint[callerName], this._viewersCandidatesQueue[callerName]); + this.mcs.addIceCandidate(this._viewersEndpoint[callerName], candidate); + } + catch (err) { + console.log(err); + } + } + else { + if (!this._viewersCandidatesQueue[callerName]) { + this._viewersCandidatesQueue[callerName] = []; + } + this._viewersCandidatesQueue[callerName].push(candidate); + } + } + + async _startViewer(connectionId, voiceBridge, sdp, callerName, presenterEndpoint, callback) { + let _callback = function(){}; + let sdpAnswer, sdpOffer; + console.log(" [screenshare] Starting viewer " + callerName + " for voiceBridge " + this._voiceBridge); + + sdpOffer = h264_sdp.transform(sdp); + sdpOffer = sdp; + + this._viewersCandidatesQueue[callerName] = []; + + + try { + const retSource = await this.mcs.subscribe(this.userId, sharedScreens[voiceBridge], 'WebRtcEndpoint', {descriptor: sdpOffer}); + + this._viewersEndpoint[callerName] = retSource.sessionId; + sdpAnswer = retSource.answer; + this.flushCandidatesQueue(this._viewersEndpoint[callerName], this._viewersCandidatesQueue[callerName]); + this.mcs.on('MediaEvent' + this._viewersEndpoint[callerName], (event) => { + this.mediaStateWebRtc(event, connectionId); + }); + + this._BigBlueButtonGW.publish(JSON.stringify({ + connectionId: connectionId, + id: "viewerResponse", + sdpAnswer: sdpAnswer, + response: "accepted" + }), C.FROM_SCREENSHARE); + + console.log(" Sent sdp message to client with callerName:" + callerName); + console.log(" [screenshare] Subscribe returned => " + this._viewersEndpoint[callerName]); + } + catch (err) { + console.log(" [screenshare] MCS publish returned error => " + err); + return _callback(err); + } + } + + async _stop() { + console.log(' [stop] Releasing endpoints for ' + this.userId); + + this._stopScreensharing(); + + if (this._presenterEndpoint) { + try { + await this.mcs.leave(this._meetingId, this.userId); + sharedScreens[this._presenterEndpoint] = null; + this._candidatesQueue = null; + this._presenterEndpoint = null; + this._ffmpegEndpoint = null; + return; + } + catch (err) { + console.log(err); + return; + } + } + return; + } + + _stopScreensharing() { + let strm = Messaging.generateStopTranscoderRequestMessage(this._meetingId, this._meetingId); + + this._BigBlueButtonGW.publish(strm, C.TO_BBB_TRANSCODE_SYSTEM_CHAN, function(error) {}); + + // Interoperability: capturing 1.1 stop_transcoder_reply messages + this._BigBlueButtonGW.once(C.STOP_TRANSCODER_REPLY, (payload) => { + let meetingId = payload[C.MEETING_ID]; + this._stopRtmpBroadcast(meetingId); + }); + + // Capturing stop transcoder responses from the 2x model + this._BigBlueButtonGW.once(C.STOP_TRANSCODER_RESP_2x, (payload) => { + let meetingId = payload[C.MEETING_ID_2x]; + this._stopRtmpBroadcast(meetingId); + }); + + } + + _onRtpMediaFlowing() { + console.log(" [screenshare] Media FLOWING for meeting => " + this._meetingId); + let strm = Messaging.generateStartTranscoderRequestMessage(this._meetingId, this._meetingId, this._rtpParams); + + // Interoperability: capturing 1.1 start_transcoder_reply messages + this._BigBlueButtonGW.once(C.START_TRANSCODER_REPLY, (payload) => { + let meetingId = payload[C.MEETING_ID]; + let output = payload["params"].output; + this._startRtmpBroadcast(meetingId, output); + }); + + // Capturing stop transcoder responses from the 2x model + this._BigBlueButtonGW.once(C.START_TRANSCODER_RESP_2x, (payload) => { + let meetingId = payload[C.MEETING_ID_2x]; + let output = payload["params"].output; + this._startRtmpBroadcast(meetingId, output); + }); + + + this._BigBlueButtonGW.publish(strm, C.TO_BBB_TRANSCODE_SYSTEM_CHAN, function(error) {}); + }; + + _stopRtmpBroadcast (meetingId) { + console.log(" [screenshare] _stopRtmpBroadcast for meeting => " + meetingId); + if(this._meetingId === meetingId) { + // TODO correctly assemble this timestamp + let timestamp = now.format('hhmmss'); + let dsrstom = Messaging.generateScreenshareRTMPBroadcastStoppedEvent2x(this._voiceBridge, + this._voiceBridge, this._streamUrl, this._vw, this._vh, timestamp); + this._BigBlueButtonGW.publish(dsrstom, C.FROM_VOICE_CONF_SYSTEM_CHAN, function(error) {}); + } + } + + _startRtmpBroadcast (meetingId, output) { + console.log(" [screenshare] _startRtmpBroadcast for meeting => " + meetingId); + if(this._meetingId === meetingId) { + // TODO correctly assemble this timestamp + let timestamp = now.format('hhmmss'); + this._streamUrl = MediaHandler.generateStreamUrl(localIpAddress, meetingId, output); + let dsrbstam = Messaging.generateScreenshareRTMPBroadcastStartedEvent2x(this._voiceBridge, + this._voiceBridge, this._streamUrl, this._vw, this._vh, timestamp); + + this._BigBlueButtonGW.publish(dsrbstam, C.FROM_VOICE_CONF_SYSTEM_CHAN, function(error) {}); + } + } + + _onRtpMediaNotFlowing() { + console.log(" [screenshare] TODO RTP NOT_FLOWING"); + } + + async stopViewer(id) { + let viewer = this._viewersEndpoint[id]; + console.log(' [stop] Releasing endpoints for ' + viewer); + + if (viewer) { + try { + await this.mcs.unsubscribe(this.userId, this.viewer); + this._viewersCandidatesQueue[id] = null; + this._viewersEndpoint[id] = null; + return; + } + catch (err) { + console.log(err); + return; + } + } + } +}; diff --git a/labs/bbb-webrtc-sfu/lib/video/VideoManager.js b/labs/bbb-webrtc-sfu/lib/video/VideoManager.js new file mode 100755 index 0000000000000000000000000000000000000000..7796972786f18ac247d14f751ab5a85ac235ec05 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/video/VideoManager.js @@ -0,0 +1,225 @@ +/* + * Lucas Fialho Zawacki + * (C) Copyright 2017 Bigbluebutton + * + */ + +'use strict'; + +const BigBlueButtonGW = require('../bbb/pubsub/bbb-gw'); +const Video = require('./video'); +const C = require('../bbb/messages/Constants'); + +let sessions = {}; + +var clientId = 0; + +let bbbGW = new BigBlueButtonGW("MANAGER"); +let redisGateway; + +bbbGW.addSubscribeChannel(C.TO_VIDEO).then((gw) => { + redisGateway = gw; + redisGateway.on(C.REDIS_MESSAGE, _onMessage); + console.log(' [VideoManager] Successfully subscribed to redis channel ' + C.TO_VIDEO); + +}); + +var _onMessage = function (_message) { + let message = _message; + let sessionId = message.connectionId; + let video; + let role = message.role? message.role : 'any'; + let cameraId = message.cameraId; + let shared = false; + let iceQueue = {}; + + if (message.role == 'share') { + shared = true; + } + + if (!sessions[sessionId]) { + sessions[sessionId] = {}; + } + + switch (role) { + case 'share': + if (message.cameraId && typeof sessions[sessionId][message.cameraId+'-shared'] !== 'undefined' && sessions[sessionId][message.cameraId+'-shared']) { + video = sessions[sessionId][message.cameraId+'-shared']; + } + break; + case 'viewer': + if (message.cameraId && sessions[sessionId][message.cameraId]) { + video = sessions[sessionId][message.cameraId]; + } + case 'any': + if (message.cameraId && typeof sessions[sessionId][message.cameraId+'-shared'] !== 'undefined' && sessions[sessionId][message.cameraId+'-shared']) { + video = sessions[sessionId][message.cameraId+'-shared']; + } + else if (message.cameraId && sessions[sessionId][message.cameraId]) { + video = sessions[sessionId][message.cameraId]; + } + + break; + } + + switch (message.id) { + case 'start': + console.log('[' + message.id + '] connection ' + sessionId + " message => " + JSON.stringify(message, null, 2)); + + video = new Video(bbbGW, message.cameraId, shared, message.connectionId); + + // Empty ice queue after starting video + if (iceQueue[message.cameraId]) { + let candidate; + while(candidate = iceQueue[message.cameraId].pop()) { + video.onIceCandidate(cand); + } + } + + switch (role) { + case 'share': + sessions[sessionId][message.cameraId+'-shared']= video; + break; + case 'viewer': + sessions[sessionId][message.cameraId] = video; + break; + default: console.log(" [VideoManager] Unknown role? ", role); + } + + video.start(message.sdpOffer, (error, sdpAnswer) => { + if (error) { + return bbbGW.publish(JSON.stringify({ + connectionId: sessionId, + type: 'video', + role: role, + id : 'error', + response : 'rejected', + cameraId : message.cameraId, + message : error + }), C.FROM_VIDEO); + } + + bbbGW.publish(JSON.stringify({ + connectionId: sessionId, + type: 'video', + role: role, + id : 'startResponse', + cameraId: message.cameraId, + sdpAnswer : sdpAnswer + }), C.FROM_VIDEO); + }); + break; + + case 'stop': + + console.log('[' + message.id + '] connection ' + sessionId + " with message => " + JSON.stringify(message, null, 2)); + + if (video) { + stopVideo(sessionId, role, cameraId); + } else { + console.log(" [stop] Why is there no video on STOP?"); + } + break; + + case 'onIceCandidate': + + if (video) { + video.onIceCandidate(message.candidate); + } else { + console.log(" [iceCandidate] Queueing ice candidate for later in video " + message.cameraId); + + if (!iceQueue[message.cameraId]) { + iceQueue[message.cameraId] = []; + } + iceQueue[message.cameraId].push(message.candidate); + } + break; + + case 'close': + console.log(" [vide] Closing session for sessionId: " + sessionId); + + stopSession(sessionId); + + break; + + default: + bbbGW.publish(JSON.stringify({ + connectionId: sessionId, + type: 'video', + id : 'error', + response : 'rejected', + message : 'Invalid message ' + JSON.stringify(message) + }), C.FROM_VIDEO); + break; + } +}; + +let stopSession = async function(sessionId) { + + let videoIds = Object.keys(sessions[sessionId]); + + for (let i=0; i < videoIds.length; i++) { + let camId = videoIds[i].split('-')[0], role = videoIds[i].split('-')[1]; + await stopVideo(sessionId, role ? 'share' : 'viewer', camId); + } + + delete sessions[sessionId]; + logAvailableSessions(); +} + +let stopVideo = async function(sessionId, role, cameraId) { + console.log(' [VideoManager/x] Stopping session ' + sessionId + " with role " + role + " for camera " + cameraId); + + try { + if (role === 'share') { + var sharedVideo = sessions[sessionId][cameraId+'-shared']; + if (sharedVideo) { + console.log(' [VideoManager] Stopping sharer [', sessionId, '][', cameraId,']'); + await sharedVideo.stop(); + delete sessions[sessionId][cameraId+'-shared']; + } + } + else if (role === 'viewer') { + var video = sessions[sessionId][cameraId]; + if (video) { + console.log(' [VideoManager] Stopping viewer [', sessionId, '][', cameraId,']'); + await video.stop(); + delete sessions[sessionId][cameraId]; + } + } + } + catch (err) { + console.log(" [VideoManager] Stop error => ", err); + } +} + +let stopAll = function() { + console.log(' [Video/x] Stopping everything! '); + + if (sessions == null) { + return; + } + + let sessionIds = Object.keys(sessions); + + for (var i = 0; i < sessionIds.length; i++) { + stopSession(sessionIds[i]); + } + + setTimeout(process.exit, 100); +} + +let logAvailableSessions = function() { + if(typeof sessions !== 'undefined' && sessions) { + console.log(" [VideoManager] Available sessions are =>"); + let sessionMainKeys = Object.keys(sessions); + for (var k in sessions) { + if(typeof sessions[k] !== 'undefined' && sessions[k]) { + console.log(' [VideoManager] Session[', k,'] => ', Object.keys(sessions[k])); + } + } + } +} + +process.on('SIGTERM', stopAll); +process.on('SIGINT', stopAll); diff --git a/labs/bbb-webrtc-sfu/lib/video/VideoProcess.js b/labs/bbb-webrtc-sfu/lib/video/VideoProcess.js new file mode 100644 index 0000000000000000000000000000000000000000..b6add57d4fbd68c5ce2de4cf12a4fd710016be06 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/video/VideoProcess.js @@ -0,0 +1,9 @@ +const VideoManager = require('./VideoManager'); + +process.on('uncaughtException', function (error) { + console.log(error.stack); +}); + +process.on('disconnect',function() { + console.log("Parent exited!"); +}); diff --git a/labs/bbb-webrtc-sfu/lib/video/video.js b/labs/bbb-webrtc-sfu/lib/video/video.js new file mode 100644 index 0000000000000000000000000000000000000000..b99077321b18855d86db5ecc5301aa09af7cc744 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/video/video.js @@ -0,0 +1,166 @@ +'use strict'; +// Global stuff +var sharedWebcams = {}; + +const kurento = require('kurento-client'); +const config = require('config'); +const kurentoUrl = config.get('kurentoUrl'); +const MCSApi = require('../mcs-core/lib/media/MCSApiStub'); +const C = require('../bbb/messages/Constants'); + +if (config.get('acceptSelfSignedCertificate')) { + process.env.NODE_TLS_REJECT_UNAUTHORIZED=0; +} + +module.exports = class Video { + constructor(_bbbGW, _id, _shared, _sessionId) { + this.mcs = new MCSApi(); + this.bbbGW = _bbbGW; + this.id = _id; + this.sessionId = _sessionId; + this.meetingId = _id; + this.shared = _shared; + this.role = this.shared? 'share' : 'view' + this.webRtcEndpoint = null; + this.mediaId = null; + + this.candidatesQueue = []; + } + + onIceCandidate (_candidate) { + if (this.mediaId) { + try { + this.flushCandidatesQueue(); + this.mcs.addIceCandidate(this.mediaId, _candidate); + } + catch (err) { + console.log(err); + } + } + else { + this.candidatesQueue.push(_candidate); + } + }; + + flushCandidatesQueue () { + if (this.mediaId) { + try { + while(this.candidatesQueue.length) { + let candidate = this.candidatesQueue.shift(); + this.mcs.addIceCandidate(this.mediaId, candidate); + } + } + catch (err) { + console.log(err); + } + } + } + + mediaState (event) { + let msEvent = event.event; + + switch (event.eventTag) { + + case "OnIceCandidate": + //console.log(" [video] Sending ICE candidate to user => " + this.id); + let candidate = msEvent.candidate; + this.bbbGW.publish(JSON.stringify({ + connectionId: this.sessionId, + type: 'video', + role: this.role, + id : 'iceCandidate', + cameraId: this.id, + candidate: candidate + }), C.FROM_VIDEO); + break; + + case "MediaStateChanged": + break; + + case "MediaFlowOutStateChange": + case "MediaFlowInStateChange": + console.log(' [video] ' + msEvent.type + '[' + msEvent.state + ']' + ' for endpoint ' + this.id); + + if (msEvent.state === 'NOT_FLOWING') { + this.bbbGW.publish(JSON.stringify({ + connectionId: this.sessionId, + type: 'video', + role: this.role, + id : 'playStop', + cameraId: this.id, + }), C.FROM_VIDEO); + } + else if (msEvent.state === 'FLOWING') { + this.bbbGW.publish(JSON.stringify({ + connectionId: this.sessionId, + type: 'video', + role: this.role, + id : 'playStart', + cameraId: this.id, + }), C.FROM_VIDEO); + } + + break; + + default: console.log(" [video] Unrecognized event"); + } + } + + async start (sdpOffer, callback) { + console.log(" [video] start"); + let sdpAnswer; + + try { + this.userId = await this.mcs.join(this.meetingId, 'SFU', {}); + console.log(" [video] Join returned => " + this.userId); + + if (this.shared) { + const ret = await this.mcs.publish(this.userId, this.meetingId, 'WebRtcEndpoint', {descriptor: sdpOffer}); + + this.mediaId = ret.sessionId; + sharedWebcams[this.id] = this.mediaId; + sdpAnswer = ret.answer; + this.flushCandidatesQueue(); + this.mcs.on('MediaEvent' + this.mediaId, this.mediaState.bind(this)); + + console.log(" [video] Publish returned => " + this.mediaId); + + return callback(null, sdpAnswer); + } + else { + const ret = await this.mcs.subscribe(this.userId, sharedWebcams[this.id], 'WebRtcEndpoint', {descriptor: sdpOffer}); + + this.mediaId = ret.sessionId; + sdpAnswer = ret.answer; + this.flushCandidatesQueue(); + this.mcs.on('MediaEvent' + this.mediaId, this.mediaState.bind(this)); + + console.log(" [video] Subscribe for user ", this.userId, " returned => " + this.mediaId); + + return callback(null, sdpAnswer); + } + } + catch (err) { + console.log(" [video] MCS returned error => " + err); + return callback(err); + } + }; + + async stop () { + console.log(' [stop] Releasing endpoints for user ' + this.userId + ' at room ' + this.meetingId); + + try { + await this.mcs.leave(this.meetingId, this.userId); + if (this.shared) { + sharedWebcams[this.id] = null; + } + this._candidatesQueue = null; + Promise.resolve(); + } + catch (err) { + // TODO error handling + Promise.reject(); + } + return; + }; +}; diff --git a/labs/kurento-screenshare/lib/websocket.js b/labs/bbb-webrtc-sfu/lib/video/websocket.js similarity index 100% rename from labs/kurento-screenshare/lib/websocket.js rename to labs/bbb-webrtc-sfu/lib/video/websocket.js diff --git a/labs/bbb-webrtc-sfu/lib/websocket.js b/labs/bbb-webrtc-sfu/lib/websocket.js new file mode 100644 index 0000000000000000000000000000000000000000..c4fe9f6f18b220e8b4c43be58ec75004a6430124 --- /dev/null +++ b/labs/bbb-webrtc-sfu/lib/websocket.js @@ -0,0 +1,18 @@ +/* + * Simple wrapper around the ws library + * + */ + +var ws = require('ws'); + +ws.prototype.sendMessage = function(json) { + + return this.send(JSON.stringify(json), function(error) { + if(error) + console.log(' [server] Websocket error "' + error + '" on message "' + json.id + '"'); + }); + +}; + + +module.exports = ws; \ No newline at end of file diff --git a/labs/bbb-webrtc-sfu/package-lock.json b/labs/bbb-webrtc-sfu/package-lock.json new file mode 100644 index 0000000000000000000000000000000000000000..8fbfe4227510eb9e880d5bf83dc0de9fa24fb80e --- /dev/null +++ b/labs/bbb-webrtc-sfu/package-lock.json @@ -0,0 +1,371 @@ +{ + "name": "bbb-webrtc-sfu", + "version": "0.0.2", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "argparse": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", + "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", + "requires": { + "sprintf-js": "1.0.3" + } + }, + "asap": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" + }, + "async": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/async/-/async-2.0.1.tgz", + "integrity": "sha1-twnMAoCpw28J9FNr6CPIOKkEniU=", + "requires": { + "lodash": "4.17.4" + } + }, + "async-limiter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", + "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" + }, + "backoff": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/backoff/-/backoff-2.3.0.tgz", + "integrity": "sha1-7nx+OAk/kuRyhZ22NedlJFT8Ieo=" + }, + "bindings": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.2.1.tgz", + "integrity": "sha1-FK1hE4EtLTfXLme0ystLtyZQXxE=" + }, + "bufferutil": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/bufferutil/-/bufferutil-1.2.1.tgz", + "integrity": "sha1-N75dNuHgZJIiHmjUdLGsWOUQy9c=", + "requires": { + "bindings": "1.2.1", + "nan": "2.7.0" + } + }, + "commander": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz", + "integrity": "sha1-0SG7roYNmZKj1Re6lvVliOR8Z4E=" + }, + "config": { + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/config/-/config-1.28.1.tgz", + "integrity": "sha1-diXSoeTJDxMdinM0eYLZPDhzKC0=", + "requires": { + "json5": "0.4.0", + "os-homedir": "1.0.2" + } + }, + "double-ended-queue": { + "version": "2.1.0-0", + "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", + "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=" + }, + "error-tojson": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/error-tojson/-/error-tojson-0.0.1.tgz", + "integrity": "sha1-p7GqlP/ADpB4wuuibiBL2Hzyy7k=" + }, + "es6-promise": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.1.1.tgz", + "integrity": "sha512-OaU1hHjgJf+b0NzsxCg7NdIYERD6Hy/PEmFLTjw+b65scuisG3Kt4QoTvJ66BBkPZ581gr0kpoVzKnxniM8nng==" + }, + "esprima": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" + }, + "extend": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + }, + "hoek": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/hoek/-/hoek-5.0.2.tgz", + "integrity": "sha512-NA10UYP9ufCtY2qYGkZktcQXwVyYK4zK0gkaFSB96xhtlo6V8tKXdQgx8eHolQTRemaW0uLn8BhjhwqrOU+QLQ==" + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "isbuffer": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/isbuffer/-/isbuffer-0.0.0.tgz", + "integrity": "sha1-OMFG2d9Si4v5sHAcPUPPEt8/w5s=" + }, + "isemail": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/isemail/-/isemail-3.0.0.tgz", + "integrity": "sha512-rz0ng/c+fX+zACpLgDB8fnUQ845WSU06f4hlhk4K8TJxmR6f5hyvitu9a9JdMD7aq/P4E0XdG1uaab2OiXgHlA==", + "requires": { + "punycode": "2.1.0" + } + }, + "joi": { + "version": "13.0.2", + "resolved": "https://registry.npmjs.org/joi/-/joi-13.0.2.tgz", + "integrity": "sha512-kVka3LaHQyENvcMW4WJPSepGM43oCofcKxfs9HbbKd/FrwBAAt4lNNTPKOzSMmV53GIspmNO4U3O2TzoGvxxCA==", + "requires": { + "hoek": "5.0.2", + "isemail": "3.0.0", + "topo": "3.0.0" + } + }, + "js-yaml": { + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", + "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", + "requires": { + "argparse": "1.0.9", + "esprima": "4.0.0" + } + }, + "json5": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-0.4.0.tgz", + "integrity": "sha1-BUNS5MTIDIbAkjh31EneF2pzLI0=" + }, + "kurento-client": { + "version": "git+https://github.com/Kurento/kurento-client-js.git#efb160e85a4b1f376307fe1979c9fbcb5f978393", + "requires": { + "async": "2.0.1", + "error-tojson": "0.0.1", + "es6-promise": "4.1.1", + "extend": "3.0.1", + "inherits": "2.0.3", + "kurento-client-core": "github:Kurento/kurento-client-core-js#2160f8e6938f138b52b72a5c5c354d1e5fce1ca0", + "kurento-client-elements": "github:Kurento/kurento-client-elements-js#cbd1ff67fbf0faddc9f6f266bb33e449bc9e1f81", + "kurento-client-filters": "github:Kurento/kurento-client-filters-js#51308da53e432a2db9559dcdb308d87951417bf0", + "kurento-jsonrpc": "github:Kurento/kurento-jsonrpc-js#827827bbeb557e1c1901f5a562c4c700b9a51401", + "minimist": "1.2.0", + "promise": "7.1.1", + "promisecallback": "0.0.4", + "reconnect-ws": "github:KurentoForks/reconnect-ws#f287385d75861654528c352e60221f95c9209f8a" + }, + "dependencies": { + "kurento-client-core": { + "version": "github:Kurento/kurento-client-core-js#2160f8e6938f138b52b72a5c5c354d1e5fce1ca0" + }, + "kurento-client-elements": { + "version": "github:Kurento/kurento-client-elements-js#cbd1ff67fbf0faddc9f6f266bb33e449bc9e1f81" + }, + "kurento-client-filters": { + "version": "github:Kurento/kurento-client-filters-js#51308da53e432a2db9559dcdb308d87951417bf0" + }, + "kurento-jsonrpc": { + "version": "github:Kurento/kurento-jsonrpc-js#827827bbeb557e1c1901f5a562c4c700b9a51401", + "requires": { + "bufferutil": "1.2.1", + "inherits": "2.0.3", + "utf-8-validate": "1.2.2", + "ws": "1.1.5" + } + }, + "reconnect-core": { + "version": "github:KurentoForks/reconnect-core#921d43e91578abb2fb2613f585c010c1939cf734", + "requires": { + "backoff": "2.3.0" + } + }, + "reconnect-ws": { + "version": "github:KurentoForks/reconnect-ws#f287385d75861654528c352e60221f95c9209f8a", + "requires": { + "reconnect-core": "github:KurentoForks/reconnect-core#921d43e91578abb2fb2613f585c010c1939cf734", + "websocket-stream": "0.5.1" + } + }, + "ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "requires": { + "options": "0.0.6", + "ultron": "1.0.2" + } + } + } + }, + "lodash": { + "version": "4.17.4", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.4.tgz", + "integrity": "sha1-eCA6TRwyiuHYbcpkYONptX9AVa4=" + }, + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + }, + "moment": { + "version": "2.19.2", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.19.2.tgz", + "integrity": "sha512-Rf6jiHPEfxp9+dlzxPTmRHbvoFXsh2L/U8hOupUMpnuecHQmI6cF6lUbJl3QqKPko1u6ujO+FxtcajLVfLpAtA==" + }, + "nan": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.7.0.tgz", + "integrity": "sha1-2Vv3IeyHfgjbJ27T/G63j5CDrUY=" + }, + "options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=" + }, + "os-homedir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" + }, + "promise": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.1.1.tgz", + "integrity": "sha1-SJZUxpJha4qlWwck+oCbt9tJxb8=", + "requires": { + "asap": "2.0.6" + } + }, + "promisecallback": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/promisecallback/-/promisecallback-0.0.4.tgz", + "integrity": "sha1-uTTxPATkQ2IrTWbeTkLqX2zmbnQ=" + }, + "punycode": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", + "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=" + }, + "redis": { + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz", + "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==", + "requires": { + "double-ended-queue": "2.1.0-0", + "redis-commands": "1.3.1", + "redis-parser": "2.6.0" + } + }, + "redis-commands": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.1.tgz", + "integrity": "sha1-gdgm9F+pyLIBH0zXoP5ZfSQdRCs=" + }, + "redis-parser": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz", + "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=" + }, + "safe-buffer": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", + "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" + }, + "sdp-transform": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/sdp-transform/-/sdp-transform-2.3.0.tgz", + "integrity": "sha1-V6lXWUIEHYV3qGnXx01MOgvYiPY=" + }, + "sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "tinycolor": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz", + "integrity": "sha1-MgtaUtg6u1l42Bo+iH1K77FaYWQ=" + }, + "topo": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/topo/-/topo-3.0.0.tgz", + "integrity": "sha512-Tlu1fGlR90iCdIPURqPiufqAlCZYzLjHYVVbcFWDMcX7+tK8hdZWAfsMrD/pBul9jqHHwFjNdf1WaxA9vTRRhw==", + "requires": { + "hoek": "5.0.2" + } + }, + "ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=" + }, + "utf-8-validate": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-1.2.2.tgz", + "integrity": "sha1-i7hxpHQeCFxwSHynrNvX1tNgKes=", + "requires": { + "bindings": "1.2.1", + "nan": "2.4.0" + }, + "dependencies": { + "nan": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.4.0.tgz", + "integrity": "sha1-+zxZ1F/k7/4hXwuJD4rfbrMtIjI=" + } + } + }, + "uuid": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz", + "integrity": "sha512-DIWtzUkw04M4k3bf1IcpS2tngXEL26YUD2M0tMDUpnUrz2hgzUBlD55a4FjdLGPvfHxS6uluGWvaVEqgBcVa+g==" + }, + "websocket-stream": { + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/websocket-stream/-/websocket-stream-0.5.1.tgz", + "integrity": "sha1-YizR8FZvuEzgpNb4VFJvPcTXDkg=", + "requires": { + "isbuffer": "0.0.0", + "through": "2.3.8", + "ws": "0.4.32" + }, + "dependencies": { + "nan": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-1.0.0.tgz", + "integrity": "sha1-riT4hQgY1mL8q1rPfzuVv6oszzg=" + }, + "ws": { + "version": "0.4.32", + "resolved": "https://registry.npmjs.org/ws/-/ws-0.4.32.tgz", + "integrity": "sha1-eHphVEFPPJntg8V3IVOyD+sM7DI=", + "requires": { + "commander": "2.1.0", + "nan": "1.0.0", + "options": "0.0.6", + "tinycolor": "0.0.1" + } + } + } + }, + "ws": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.2.tgz", + "integrity": "sha512-t+WGpsNxhMR4v6EClXS8r8km5ZljKJzyGhJf7goJz9k5Ye3+b5Bvno5rjqPuIBn5mnn5GBb7o8IrIWHxX1qOLQ==", + "requires": { + "async-limiter": "1.0.0", + "safe-buffer": "5.1.1", + "ultron": "1.1.1" + }, + "dependencies": { + "ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + } + } + } + } +} diff --git a/labs/bbb-webrtc-sfu/package.json b/labs/bbb-webrtc-sfu/package.json new file mode 100644 index 0000000000000000000000000000000000000000..e34571864c335e92e9c96fee040200379f4140bf --- /dev/null +++ b/labs/bbb-webrtc-sfu/package.json @@ -0,0 +1,20 @@ +{ + "name": "bbb-webrtc-sfu", + "version": "0.0.2", + "private": true, + "scripts": { + "start": "node server.js" + }, + "dependencies": { + "joi": "^13.0.2", + "kurento-client": "git+https://github.com/Kurento/kurento-client-js.git#master", + "moment": "^2.19.2", + "redis": "^2.8.0", + "sdp-transform": "^2.3.0", + "readable-id": "^1.0.0", + "ws": "^3.3.2", + "config": "^1.26.1", + "js-yaml": "^3.8.3" + }, + "optionalDependencies": {} +} diff --git a/labs/bbb-webrtc-sfu/server.js b/labs/bbb-webrtc-sfu/server.js new file mode 100755 index 0000000000000000000000000000000000000000..3252a2b96febc93847754de12567273fafc6893f --- /dev/null +++ b/labs/bbb-webrtc-sfu/server.js @@ -0,0 +1,67 @@ +/* + * Lucas Fialho Zawacki + * Paulo Renato Lanzarin + * (C) Copyright 2017 Bigbluebutton + * + */ + +const ConnectionManager = require('./lib/connection-manager/ConnectionManager'); +const HttpServer = require('./lib/connection-manager/HttpServer'); +const server = new HttpServer(); +const WebsocketConnectionManager = require('./lib/connection-manager/WebsocketConnectionManager'); +const cp = require('child_process'); + +let screenshareProc = cp.fork('./lib/screenshare/ScreenshareProcess', { + // Pass over all of the environment. + env: process.ENV, + // Share stdout/stderr, so we can hear the inevitable errors. + silent: false +}); + +let videoProc = cp.fork('./lib/video/VideoProcess.js', { + // Pass over all of the environment. + env: process.ENV, + // Share stdout/stderr, so we can hear the inevitable errors. + silent: false +}); + +let onMessage = function (message) { + console.log('event','child message',this.pid,message); +}; + +let onError = function(e) { + console.log('event','child error',this.pid,e); +}; + +let onDisconnect = function(e) { + console.log(e); + console.log('event','child disconnect',this.pid,'killing...'); + this.kill(); +}; + +screenshareProc.on('message',onMessage); +screenshareProc.on('error',onError); +screenshareProc.on('disconnect',onDisconnect); + +videoProc.on('message',onMessage); +videoProc.on('error',onError); +videoProc.on('disconnect',onDisconnect); + +const CM = new ConnectionManager(screenshareProc, videoProc); + +let websocketManager = new WebsocketConnectionManager(server.getServerObject(), '/bbb-webrtc-sfu'); + +process.on('SIGTERM', process.exit) +process.on('SIGINT', process.exit) +process.on('uncaughtException', function (error) { + console.log(error.stack); + process.exit('1'); +}); + + +CM.setHttpServer(server); +CM.addAdapter(websocketManager); + +CM.listen(() => { + console.log(" [SERVER] Server started"); +}); diff --git a/labs/kurento-screenshare/.gitignore b/labs/kurento-screenshare/.gitignore deleted file mode 100644 index 40b878db5b1c97fc77049537a71bb2e249abe5dc..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/.gitignore +++ /dev/null @@ -1 +0,0 @@ -node_modules/ \ No newline at end of file diff --git a/labs/kurento-screenshare/config/default.yml b/labs/kurento-screenshare/config/default.yml deleted file mode 100644 index 46b6e2629ecf6e34603f5a34c1288266d0583918..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/config/default.yml +++ /dev/null @@ -1,8 +0,0 @@ -kurentoUrl: "KURENTOURL" -kurentoIp: "KURENTOIP" -localIpAddress: "HOST" -acceptSelfSignedCertificate: false -redisHost : "127.0.0.1" -redisPort : "6379" -minVideoPort: 30000 -maxVideoPort: 33000 diff --git a/labs/kurento-screenshare/keys/README.md b/labs/kurento-screenshare/keys/README.md deleted file mode 100644 index 5bc681a1c8d2ece88651b6ee63d410536eae50f6..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/keys/README.md +++ /dev/null @@ -1,2 +0,0 @@ -This folder contains a dummy self-signed certificate only for demo purposses, -**DON'T USE IT IN PRODUCTION**. diff --git a/labs/kurento-screenshare/keys/server.crt b/labs/kurento-screenshare/keys/server.crt deleted file mode 100644 index 65e608dad5d9fb19f68ac486e6189dfc67dcd2ff..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/keys/server.crt +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDBjCCAe4CCQCuf5QfyX2oDDANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJB -VTETMBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0 -cyBQdHkgTHRkMB4XDTE0MDkyOTA5NDczNVoXDTE1MDkyOTA5NDczNVowRTELMAkG -A1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUxITAfBgNVBAoMGEludGVybmV0 -IFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEB -AMJOyOHJ+rJWJEQ7P7kKoWa31ff7hKNZxF6sYE5lFi3pBYWIY6kTN/iUaxJLROFo -FhoC/M/STY76rIryix474v/6cRoG8N+GQBEn4IAP1UitWzVO6pVvBaIt5IKlhhfm -YA1IMweCd03vLcaHTddNmFDBTks7QDwfenTaR5VjKYc3OtEhcG8dgLAnOjbbk2Hr -8wter2IeNgkhya3zyoXnTLT8m8IMg2mQaJs62Xlo9gs56urvVDWG4rhdGybj1uwU -ZiDYyP4CFCUHS6UVt12vADP8vjbwmss2ScGsIf0NjaU+MpSdEbB82z4b2NiN8Wq+ -rFA/JbvyeoWWHMoa7wkVs1MCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEAYLRwV9fo -AOhJfeK199Tv6oXoNSSSe10pVLnYxPcczCVQ4b9SomKFJFbmwtPVGi6w3m+8mV7F -9I2WKyeBHzmzfW2utZNupVybxgzEjuFLOVytSPdsB+DcJomOi8W/Cf2Vk8Wykb/t -Ctr1gfOcI8rwEGKxm279spBs0u1snzoLyoimbMbiXbC82j1IiN3Jus08U07m/j7N -hRBCpeHjUHT3CRpvYyTRnt+AyBd8BiyJB7nWmcNI1DksXPfehd62MAFS9e1ZE+dH -Aavg/U8VpS7pcCQcPJvIJ2hehrt8L6kUk3YUYqZ0OeRZK27f2R5+wFlDF33esm3N -dCSsLJlXyqAQFg== ------END CERTIFICATE----- diff --git a/labs/kurento-screenshare/keys/server.csr b/labs/kurento-screenshare/keys/server.csr deleted file mode 100644 index 6615b130471ce23cf8d980df5a308694ed06695b..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/keys/server.csr +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN CERTIFICATE REQUEST----- -MIICijCCAXICAQAwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgMClNvbWUtU3RhdGUx -ITAfBgNVBAoMGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZDCCASIwDQYJKoZIhvcN -AQEBBQADggEPADCCAQoCggEBAMJOyOHJ+rJWJEQ7P7kKoWa31ff7hKNZxF6sYE5l -Fi3pBYWIY6kTN/iUaxJLROFoFhoC/M/STY76rIryix474v/6cRoG8N+GQBEn4IAP -1UitWzVO6pVvBaIt5IKlhhfmYA1IMweCd03vLcaHTddNmFDBTks7QDwfenTaR5Vj -KYc3OtEhcG8dgLAnOjbbk2Hr8wter2IeNgkhya3zyoXnTLT8m8IMg2mQaJs62Xlo -9gs56urvVDWG4rhdGybj1uwUZiDYyP4CFCUHS6UVt12vADP8vjbwmss2ScGsIf0N -jaU+MpSdEbB82z4b2NiN8Wq+rFA/JbvyeoWWHMoa7wkVs1MCAwEAAaAAMA0GCSqG -SIb3DQEBCwUAA4IBAQBMszYHMpklgTF/3h1zAzKXUD9NrtZp8eWhL06nwVjQX8Ai -EaCUiW0ypstokWcH9+30chd2OD++67NbxYUEucH8HrKpOoy6gs5L/mqgQ9Npz3OT -TB1HI4kGtpVuUQ5D7L0596tKzMX/CgW/hRcHWl+PDkwGhQs1qZcJ8QN+YP6AkRrO -5sDdDB/BLrB9PtBQbPrYIQcHQ7ooYWz/G+goqRxzZ6rt0aU2uAB6l7c82ADLAqFJ -qlw+xqVzEETVfqM5TXKK/wV3hgm4oSX5Q4SHLKF94ODOkWcnV4nfIKz7y+5XcQ3p -PrGimI1br07okC5rO9cgLCR0Ks20PPFcM0FvInW/ ------END CERTIFICATE REQUEST----- diff --git a/labs/kurento-screenshare/keys/server.key b/labs/kurento-screenshare/keys/server.key deleted file mode 100644 index a69a0a279daf6a68b9eff057204cd05af1b27a5a..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/keys/server.key +++ /dev/null @@ -1,27 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIEogIBAAKCAQEAwk7I4cn6slYkRDs/uQqhZrfV9/uEo1nEXqxgTmUWLekFhYhj -qRM3+JRrEktE4WgWGgL8z9JNjvqsivKLHjvi//pxGgbw34ZAESfggA/VSK1bNU7q -lW8Foi3kgqWGF+ZgDUgzB4J3Te8txodN102YUMFOSztAPB96dNpHlWMphzc60SFw -bx2AsCc6NtuTYevzC16vYh42CSHJrfPKhedMtPybwgyDaZBomzrZeWj2Cznq6u9U -NYbiuF0bJuPW7BRmINjI/gIUJQdLpRW3Xa8AM/y+NvCayzZJwawh/Q2NpT4ylJ0R -sHzbPhvY2I3xar6sUD8lu/J6hZYcyhrvCRWzUwIDAQABAoIBACwt56TW3MZxqZtN -8WYsUZheUispJ/ZQMcLo5JjOiSV1Jwk+gpJtyTse291z+bxagzP02/CQu4u32UVa -cmE0cp+LHO4zB8964dREwdm8P91fdS6Au/uwG5LNZniCFCQZAFvkv52Ef4XbzQen -uf4rKWerHBck6K0C5z/sZXxE6KtScE2ZLUmkhO0nkHM6MA6gFk2OMnB+oDTOWWPt -1mlreQlzuMYG/D4axviRYrOSYCE5Qu1SOw/DEOLQqqeBjQrKtAyOlFHZsIR6lBfe -KHMChPUcYIwaowt2DcqH/A+AFXRtaifa6DvH8Yul+2vAp47UEpaenVfM5bpN33XV -EzerjtECgYEA+xiXzblek67iQgRpc9eHSoqs4iRLhae8s8kpAG51Jz46Je+Dmium -XV769oiUGUxBeoUb7ryW+4MOzHJaA1BfGejQSvwLIB9e4cnikqnAArcqbcAcOCL1 -aYYDiSmSmN/AokNZlPKEBFXP9bzXrU9smQJWNTHlcRl7JXfnwF+jwNsCgYEAxhpE -SBr9vlUVHNh/S6C5i80NIYg6jCy2FgsmuzEqmcqV0pTyzegmq8bru+QmuvoUj2o4 -nVv4J9d1fLF6ECUVk9aK8UdJOOB6hAfurOdJCArgrsY/9t4uDzXfbPCdfSNQITE0 -XgeNGQX1EzvwwkBmyZKk0kLIr3syP8ZCWfXDROkCgYBR+dF1pJMv++R6UR5sZ20P -9P5ERj0xwXVl7MKqFWXCDhrFz9BTQPTrftrIKgbPy4mFCnf4FTHlov/t11dzxYWG -2+9Ey8yGDDfZ1yNVZn39ZPdBJXsRCLi+XrZAzYXCyyoEz6ArdJGNKMbgH2r6dfeq -bIzgiQ2zQvJlZSQQNiksCQKBgCgwzAmU8EXdHRttEOZXBU3HnBJhgP9PUuHGAWWY -4/uvjhXbAiekIbRX9xt3fiQQ+HrgIfxK3F246K0TlKAR5f7IWAf7Xm+bmz+OHG4X -vklTa6IJtpBvIwkS9PE1H75zm54gTW+GOKoK+12bm4zNZA0hIy9FPVHcvKUTpAJ8 -SdGBAoGAHLtJnB1NO4EgO6WtLQMXt7HrIbup8eZi8/82gC3422C+ooKIrYQ07qSw -nBOO/G0OB4yd6vCE2x5+TWSSCYGgG5A8aIv5qP76RP4hovGHxG/y2tfotw5UuOrh -nFWlTP4Urs8PeykvK9ao8r/T8BnPIC16U6ENYvAc0mRlFA2j1GA= ------END RSA PRIVATE KEY----- diff --git a/labs/kurento-screenshare/lib/ConnectionManager.js b/labs/kurento-screenshare/lib/ConnectionManager.js deleted file mode 100644 index 2dbef1e75d32f7759337ef0f56a3b11ced7d4ed6..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/lib/ConnectionManager.js +++ /dev/null @@ -1,206 +0,0 @@ -/* - * Lucas Fialho Zawacki - * Paulo Renato Lanzarin - * (C) Copyright 2017 Bigbluebutton - * - */ - -'use strict' - -const cookieParser = require('cookie-parser') -const express = require('express'); -const session = require('express-session') -const wsModule = require('./websocket'); -const http = require('http'); -const fs = require('fs'); -const BigBlueButtonGW = require('./bbb/pubsub/bbb-gw'); -var Screenshare = require('./screenshare'); -var C = require('./bbb/messages/Constants'); - -// Global variables - -module.exports = class ConnectionManager { - - constructor (settings, logger) { - this._logger = logger; - this._clientId = 0; - this._app = express(); - this._screenshareSessions = {}; - - this._setupExpressSession(); - this._setupHttpServer(); - } - - _setupExpressSession() { - this._app.use(cookieParser()); - - this._sessionHandler = session({ - secret : 'Shawarma', rolling : true, resave : true, saveUninitialized : true - }); - - this._app.use(this._sessionHandler); - } - - _setupHttpServer() { - let self = this; - /* - * Server startup - */ - this._httpServer = http.createServer(this._app).listen(3008, function() { - console.log(' [*] Running node-apps connection manager.'); - }); - - /* - * Management of sessions - */ - this._wss = new wsModule.Server({ - server : this._httpServer, - path : '/kurento-screenshare' - }); - - - // TODO isolate this - this._bbbGW = new BigBlueButtonGW(); - - this._bbbGW.addSubscribeChannel(C.FROM_BBB_TRANSCODE_SYSTEM_CHAN, function(error, redisWrapper) { - if(error) { - console.log(' Could not connect to transcoder redis channel, finishing app...'); - self._stopAll(); - } - console.log(' [server] Successfully subscribed to redis channel'); - }); - - - this._wss.on('connection', self._onNewConnection.bind(self)); - } - - _onNewConnection(webSocket) { - let self = this; - let connectionId; - let request = webSocket.upgradeReq; - let sessionId; - let response = { - writeHead : {} - }; - - this._sessionHandler(request, response, function(err) { - connectionId = request.session.id + "_" + self._clientId++; - console.log('Connection received with connectionId ' + connectionId); - }); - - webSocket.on('error', function(error) { - console.log('Connection ' + connectionId + ' error'); - self._stopSession(sessionId); - }); - - webSocket.on('close', function() { - console.log('Connection ' + connectionId + ' closed'); - self._stopSession(sessionId); - }); - - webSocket.on('message', function(_message) { - let message = JSON.parse(_message); - let session; - // The sessionId is voiceBridge for screensharing sessions - sessionId = message.voiceBridge; - - if(self._screenshareSessions[sessionId]) { - session = self._screenshareSessions[sessionId]; - } - - switch (message.id) { - - case 'presenter': - - // Checking if there's already a Screenshare session started - // because we shouldn't overwrite it - - if(session) { - break; - } - - session = new Screenshare(webSocket, connectionId, self._bbbGW, - sessionId, message.callerName, message.vh, message.vw, - message.internalMeetingId); - - self._screenshareSessions[sessionId] = {} - self._screenshareSessions[sessionId] = session; - - // starts presenter by sending sessionID, websocket and sdpoffer - session._startPresenter(connectionId, webSocket, message.sdpOffer, function(error, sdpAnswer) { - console.log(" Started presenter " + connectionId); - if (error) { - return webSocket.send(JSON.stringify({ - id : 'presenterResponse', - response : 'rejected', - message : error - })); - } - - webSocket.send(JSON.stringify({ - id : 'presenterResponse', - response : 'accepted', - sdpAnswer : sdpAnswer - })); - console.log(" [websocket] Sending presenterResponse \n" + sdpAnswer); - }); - break; - - case 'viewer': - console.log('Viewer message => [' + message.id + '] connection [' + connectionId + '][' + message.presenterId + '][' + message.sessionId + '][' + message.callerName + ']'); - - break; - case 'stop': - - console.log('[' + message.id + '] connection ' + connectionId); - - if (session) { - session._stop(sessionId); - } else { - console.log(" [stop] Why is there no session on STOP?"); - } - break; - - case 'onIceCandidate': - if (session) { - session._onIceCandidate(message.candidate); - } else { - console.log(" [iceCandidate] Why is there no session on ICE CANDIDATE?"); - } - break; - - case 'ping': - webSocket.send(JSON.stringify({ - id : 'pong', - response : 'accepted' - })); - break; - - default: - webSocket.sendMessage({ id : 'error', message : 'Invalid message ' + message }); - break; - } - }); - } - - _stopSession(sessionId) { - console.log(' [>] Stopping session ' + sessionId); - let session = this._screenshareSessions[sessionId]; - if(typeof session !== 'undefined' && typeof session._stop === 'function') { - session._stop(); - } - - delete this._screenshareSessions[sessionId]; - } - - _stopAll() { - console.log('\n [x] Stopping everything! '); - let sessionIds = Object.keys(this._screenshareSessions); - - for (let i = 0; i < sessionIds.length; i++) { - this._stopSession(sessionIds[i]); - } - - setTimeout(process.exit, 1000); - } -} diff --git a/labs/kurento-screenshare/lib/bbb/pubsub/RedisWrapper.js b/labs/kurento-screenshare/lib/bbb/pubsub/RedisWrapper.js deleted file mode 100644 index da92167e4169e8a03ee3d3cb3e03b78405c1049f..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/lib/bbb/pubsub/RedisWrapper.js +++ /dev/null @@ -1,97 +0,0 @@ -/** - * @classdesc - * Redis wrapper class for connecting to Redis channels - */ - -/* Modules */ - -var redis = require('redis'); -var config = require('config'); -var Constants = require('../messages/Constants.js'); -var util = require('util'); -const EventEmitter = require('events').EventEmitter; -const _retryThreshold = 1000 * 60 * 60; -const _maxRetries = 10; - - -/* Public members */ - -var RedisWrapper = function(subpattern) { - // Redis PubSub client holders - this.redisCli = null; - this.redisPub = null; - // Pub and Sub channels/patterns - this.subpattern = subpattern; - EventEmitter.call(this); -} - -util.inherits(RedisWrapper, EventEmitter); - -RedisWrapper.prototype.startRedis = function(callback) { - var self = this; - if (this.redisCli) { - console.log(" [RedisWrapper] Redis Client already exists"); - callback(false, this); - } - - var options = { - host : config.get('redisHost'), - port : config.get('redisPort'), - //password: config.get('redis.password') - retry_strategy: redisRetry - }; - - this.redisCli = redis.createClient(options); - this.redisPub = redis.createClient(options); - - console.log(" [RedisWrapper] Trying to subscribe to redis channel"); - - this.redisCli.on("psubscribe", function (channel, count) { - console.log(" [RedisWrapper] Successfully subscribed to pattern [" + channel + "]"); - }); - - this.redisCli.on("pmessage", self.onMessage.bind(self)); - this.redisCli.psubscribe(this.subpattern); - - console.log(" [RedisWrapper] Started Redis client at " + options.host + ":" + options.port + - " for subscription pattern: " + this.subpattern); - - callback(false, this); -}; - -RedisWrapper.prototype.stopRedis = function(callback) { - if (this.redisCli){ - this.redisCli.quit(); - } - callback(false); -}; - -RedisWrapper.prototype.publishToChannel = function(message, channel) { - if(this.redisPub) { - console.log(" [RedisWrapper] Sending message to channel [" + channel + "]: " + message); - this.redisPub.publish(channel, message); - } -}; - -RedisWrapper.prototype.onMessage = function(pattern, channel, message) { - console.log(" [RedisWrapper] Message received from channel [" + channel + "] : " + message); - // use event emitter to throw new message - this.emit(Constants.REDIS_MESSAGE, message); -} - -/* Private members */ - -function redisRetry(options) { - if (options.error && options.error.code === 'ECONNREFUSED') { - return new Error('The server refused the connection'); - } - if (options.total_retry_time > _retryThreshold) { - return new Error('Retry time exhausted'); - } - if (options.times_connected > _maxRetries) { - return undefined; - } - return Math.max(options.attempt * 100, 3000); -}; - -module.exports = RedisWrapper; diff --git a/labs/kurento-screenshare/lib/bbb/pubsub/bbb-gw.js b/labs/kurento-screenshare/lib/bbb/pubsub/bbb-gw.js deleted file mode 100644 index 1abbb25aa010d9dc2a18d09edb2064c8516d9463..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/lib/bbb/pubsub/bbb-gw.js +++ /dev/null @@ -1,105 +0,0 @@ -/** - * @classdesc - * BigBlueButton redis gateway for bbb-screenshare node app - */ - -/* Modules */ - -var C = require('../messages/Constants.js'); -var RedisWrapper = require('./RedisWrapper.js'); -var config = require('config'); -var util = require('util'); -var EventEmitter = require('events').EventEmitter; - -/* Public members */ - -var BigBlueButtonGW = function () { - this.redisClients = null - EventEmitter.call(this); -}; - -util.inherits(BigBlueButtonGW, EventEmitter); - -BigBlueButtonGW.prototype.addSubscribeChannel = function (channel, callback) { - var self = this; - - if (this.redisClients === null) { - this.redisClients = {}; - } - - if (this.redisClients[channel]) { - return callback(null, this.redisClients[channel]); - } - - var wrobj = new RedisWrapper(channel); - this.redisClients[channel] = {}; - this.redisClients[channel] = wrobj; - wrobj.startRedis(function(error, redisCli) { - if(error) { - console.log(" [BigBlueButtonGW] Could not start redis client for channel " + channel); - return callback(error); - } - - console.log(" [BigBlueButtonGW] Added redis client to this.redisClients[" + channel + "]"); - wrobj.on(C.REDIS_MESSAGE, self.incomingMessage.bind(self)); - - return callback(null, wrobj); - }); -}; - -/** - * Capture messages from subscribed channels and emit an event with it's - * identifier and payload. Check Constants.js for the identifiers. - * - * @param {Object} message Redis message - */ -BigBlueButtonGW.prototype.incomingMessage = function (message) { - var msg = JSON.parse(message); - - // Trying to parse both message types, 1x and 2x - if (msg.header) { - var header = msg.header; - var payload = msg.payload; - } - else if (msg.core) { - var header = msg.core.header; - var payload = msg.core.body; - } - - if (header){ - switch (header.name) { - // interoperability with 1.1 - case C.START_TRANSCODER_REPLY: - this.emit(C.START_TRANSCODER_REPLY, payload); - break; - case C.STOP_TRANSCODER_REPLY: - this.emit(C.STOP_TRANSCODER_REPLY, payload); - break; - // 2x messages - case C.START_TRANSCODER_RESP_2x: - payload[C.MEETING_ID_2x] = header[C.MEETING_ID_2x]; - - this.emit(C.START_TRANSCODER_RESP_2x, payload); - break; - case C.STOP_TRANSCODER_RESP_2x: - payload[C.MEETING_ID_2x] = header[C.MEETING_ID_2x]; - this.emit(C.STOP_TRANSCODER_RESP_2x, payload); - break; - - default: - console.log(" [BigBlueButtonGW] Unknown Redis message with ID =>" + header.name); - } - } -}; - -BigBlueButtonGW.prototype.publish = function (message, channel, callback) { - for(var client in this.redisClients) { - if(typeof this.redisClients[client].publishToChannel === 'function') { - this.redisClients[client].publishToChannel(message, channel); - return callback(null); - } - } - return callback("Client not found"); -}; - -module.exports = BigBlueButtonGW; diff --git a/labs/kurento-screenshare/lib/media-controller.js b/labs/kurento-screenshare/lib/media-controller.js deleted file mode 100644 index df9697ec6984deb5f425fbb7c210fba4b6ce62e6..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/lib/media-controller.js +++ /dev/null @@ -1,141 +0,0 @@ -'use strict' - -const Constants = require('./bbb/messages/Constants.js'); -const config = require('config'); -const kurento = require('kurento-client'); -const mediaServerClient = null; - -var _mediaPipelines = {}; -var _mediaElements= {}; - -function createMediaPipeline(id, callback) { - console.log(' [media] Creating media pipeline for ' + id); - getMediaServerClient(function (error, mediaServerClient) { - mediaServerClient.create('MediaPipeline', function(err, pipeline) { - if (error) { - console.log("Could not find media server at address " + kurentoUrl); - return callback(error); - } - return callback(null , pipeline); - }); - }); -}; - -function getMediaServerClient (callback) { - let kurentoUrl = config.get('kurentoUrl'); - if (mediaServerClient) { - callback(null, mediaServerClient); - } - else { - kurento(kurentoUrl, function(error, _mediaServerClient) { - if (error) { - console.log("Could not find media server at address " + kurentoUrl); - return callback(error, null); - } - - console.log(" [server] Initiating kurento client. Connecting to: " + kurentoUrl); - return callback(null, _mediaServerClient); - }); - } -}; - -/* Public members */ -module.exports = { - - createMediaElement : function (conference, type, callback) { - let self = this; - self.getMediaPipeline(conference, function(error, pipeline) { - - pipeline.create(type, function(error, mediaElement) { - if (error) { - return callback(error, null); - } - console.log(" [MediaController] Created [" + type + "] media element: " + mediaElement.id); - _mediaElements[mediaElement.id] = mediaElement; - return callback(null, mediaElement); - }); - }); - }, - - connectMediaElements : function (sourceId, sinkId, type, callback) { - let source = _mediaElements[sourceId]; - let sink = _mediaElements[sinkId]; - - if (source && sink) { - if (type === 'ALL') { - source.connect(sink, function (error) { - return callback (error); - }); - } else { - console.log(typeof source.connect); - source.connect(sink, type, function (error) { - return callback (error); - }); - } - } else { - return callback ("Failed to connect " + type + ": " + sourceId + " to " + sinkId); - } - }, - - releaseMediaElement : function (elementId) { - let mediaElement = _mediaElements[elementId]; - - if (typeof mediaElement !== 'undefined' && typeof mediaElement.release === 'function') { - mediaElement.release(); - } - }, - - releasePipeline: function (pipelineId) { - let MediaPipeline = _mediaPipelines[pipelineId]; - - if (typeof mediaElement !== 'undefined' && typeof mediaElement.release === 'function') { - mediaElement.release(); - } - }, - - processOffer : function (elementId, sdpOffer, callback) { - let mediaElement = _mediaElements[elementId]; - - if (typeof mediaElement !== 'undefined' && typeof mediaElement.processOffer === 'function') { - mediaElement.processOffer (sdpOffer, function (error, sdpAnswer) { - return callback (error, sdpAnswer); - }); - } else { - return callback (" [MediaController/processOffer] There is no element " + elementId, null); - } - }, - - getMediaPipeline : function(conference, callback) { - let self = this; - - if (_mediaPipelines[conference]) { - console.log(' [media] Pipeline already exists. ' + JSON.stringify(_mediaPipelines, null, 2)); - return callback(null, _mediaPipelines[conference]); - } else { - createMediaPipeline(conference, function(error, pipeline) { - _mediaPipelines[conference] = pipeline; - return callback(error, pipeline); - }); - } - }, - - addIceCandidate : function (elementId, candidate) { - let mediaElement = _mediaElements[elementId]; - - if (typeof mediaElement !== 'undefined' && typeof mediaElement.addIceCandidate === 'function') { - mediaElement.addIceCandidate(candidate); - } - }, - - gatherCandidates : function (elementId, callback) { - let mediaElement = _mediaElements[elementId]; - - if (typeof mediaElement !== 'undefined' && typeof mediaElement.gatherCandidates === 'function') { - mediaElement.gatherCandidates(function (error) { - return callback(error); - }); - } else { - return callback (" [MediaController/gatherCandidates] There is no element " + elementId, null); - } - }, -}; diff --git a/labs/kurento-screenshare/lib/screenshare.js b/labs/kurento-screenshare/lib/screenshare.js deleted file mode 100644 index 411fbd54a9ac3cf994f7e0f703ed7c3f32f8718e..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/lib/screenshare.js +++ /dev/null @@ -1,249 +0,0 @@ -/* - * Lucas Fialho Zawacki - * Paulo Renato Lanzarin - * (C) Copyright 2017 Bigbluebutton - * - */ - -'use strict' - -// Imports -const C = require('./bbb/messages/Constants'); -const MediaHandler = require('./media-handler'); -const Messaging = require('./bbb/messages/Messaging'); -const moment = require('moment'); -const h264_sdp = require('./h264-sdp'); -const now = moment(); -const MediaController = require('./media-controller'); - -// Global stuff -var sharedScreens = {}; -var rtpEndpoints = {}; - -const kurento = require('kurento-client'); -const config = require('config'); -const kurentoUrl = config.get('kurentoUrl'); -const kurentoIp = config.get('kurentoIp'); -const localIpAddress = config.get('localIpAddress'); - -if (config.get('acceptSelfSignedCertificate')) { - process.env.NODE_TLS_REJECT_UNAUTHORIZED=0; -} - -module.exports = class Screenshare { - constructor(ws, id, bbbgw, voiceBridge, caller, vh, vw, meetingId) { - this._ws = ws; - this._id = id; - this._BigBlueButtonGW = bbbgw; - this._presenterEndpoint = null; - this._ffmpegRtpEndpoint = null; - this._voiceBridge = voiceBridge; - this._meetingId = meetingId; - this._caller = caller; - this._streamUrl = ""; - this._vw = vw; - this._vh = vh; - this._candidatesQueue = []; - } - - // TODO isolate ICE - _onIceCandidate(_candidate) { - let candidate = kurento.getComplexType('IceCandidate')(_candidate); - - if (this._presenterEndpoint) { - this._presenterEndpoint.addIceCandidate(candidate); - } - else { - this._candidatesQueue.push(candidate); - } - }; - - _startPresenter(id, ws, sdpOffer, callback) { - let self = this; - let _callback = callback; - - // Force H264 on Firefox and Chrome - sdpOffer = h264_sdp.transform(sdpOffer); - console.log("Starting presenter for " + sdpOffer); - MediaController.createMediaElement(self._voiceBridge, C.WebRTC, function(error, webRtcEndpoint) { - if (error) { - console.log("Media elements error" + error); - return _callback(error); - } - MediaController.createMediaElement(self._voiceBridge, C.RTP, function(error, rtpEndpoint) { - if (error) { - console.log("Media elements error" + error); - return _callback(error); - } - - - while(self._candidatesQueue.length) { - let candidate = self._candidatesQueue.shift(); - MediaController.addIceCandidate(webRtcEndpoint.id, candidate); - } - - MediaController.connectMediaElements(webRtcEndpoint.id, rtpEndpoint.id, C.VIDEO, function(error) { - if (error) { - console.log("Media elements CONNECT error " + error); - //pipeline.release(); - return _callback(error); - } - - // It's a user sharing a Screen - sharedScreens[id] = webRtcEndpoint; - rtpEndpoints[id] = rtpEndpoint; - - // Store our endpoint - self._presenterEndpoint = webRtcEndpoint; - self._ffmpegRtpEndpoint = rtpEndpoint; - - self._presenterEndpoint.on('OnIceCandidate', function(event) { - let candidate = kurento.getComplexType('IceCandidate')(event.candidate); - ws.sendMessage({ id : 'iceCandidate', cameraId: id, candidate : candidate }); - }); - - MediaController.processOffer(webRtcEndpoint.id, sdpOffer, function(error, webRtcSdpAnswer) { - if (error) { - console.log(" [webrtc] processOffer error => " + error + " for SDP " + sdpOffer); - //pipeline.release(); - return _callback(error); - } - - let sendVideoPort = MediaHandler.getVideoPort(); - - let rtpSdpOffer = MediaHandler.generateVideoSdp(localIpAddress, sendVideoPort); - console.log(" [rtpendpoint] RtpEndpoint processing => " + rtpSdpOffer); - - MediaController.gatherCandidates(webRtcEndpoint.id, function(error) { - if (error) { - return _callback(error); - } - - MediaController.processOffer(rtpEndpoint.id, rtpSdpOffer, function(error, rtpSdpAnswer) { - if (error) { - console.log(" [rtpendpoint] processOffer error => " + error + " for SDP " + rtpSdpOffer); - //pipeline.release(); - return _callback(error); - } - - console.log(" [rtpendpoint] KMS answer SDP => " + rtpSdpAnswer); - let recvVideoPort = rtpSdpAnswer.match(/m=video\s(\d*)/)[1]; - let rtpParams = MediaHandler.generateTranscoderParams(kurentoIp, localIpAddress, - sendVideoPort, recvVideoPort, self._meetingId, "stream_type_video", C.RTP_TO_RTMP, "copy", "caller"); - - self._ffmpegRtpEndpoint.on('MediaFlowInStateChange', function(event) { - if (event.state === 'NOT_FLOWING') { - self._onRtpMediaNotFlowing(); - } - else if (event.state === 'FLOWING') { - self._onRtpMediaFlowing(self._meetingId, rtpParams); - } - }); - return _callback(null, webRtcSdpAnswer); - }); - }); - }); - }); - }); - }); - }; - - _stop() { - - console.log(' [stop] Releasing endpoints for ' + this._id); - - this._stopScreensharing(); - - if (this._presenterEndpoint) { - MediaController.releaseMediaElement(this._presenterEndpoint.id); - this._presenterEndpoint = null; - } else { - console.log(" [webRtcEndpoint] PLEASE DONT TRY STOPPING THINGS TWICE"); - } - - if (this._ffmpegRtpEndpoint) { - MediaController.releaseMediaElement(this._ffmpegRtpEndpoint.id); - this._ffmpegRtpEndpoint = null; - } else { - console.log(" [rtpEndpoint] PLEASE DONT TRY STOPPING THINGS TWICE"); - } - - console.log(' [stop] Screen is shared, releasing ' + this._id); - - delete sharedScreens[this._id]; - - delete this._candidatesQueue; - }; - - _stopScreensharing() { - let self = this; - let strm = Messaging.generateStopTranscoderRequestMessage(this._meetingId, this._meetingId); - - self._BigBlueButtonGW.publish(strm, C.TO_BBB_TRANSCODE_SYSTEM_CHAN, function(error) {}); - - // Interoperability: capturing 1.1 stop_transcoder_reply messages - self._BigBlueButtonGW.once(C.STOP_TRANSCODER_REPLY, function(payload) { - let meetingId = payload[C.MEETING_ID]; - self._stopRtmpBroadcast(meetingId); - }); - - // Capturing stop transcoder responses from the 2x model - self._BigBlueButtonGW.once(C.STOP_TRANSCODER_RESP_2x, function(payload) { - let meetingId = payload[C.MEETING_ID_2x]; - self._stopRtmpBroadcast(meetingId); - }); - - } - - _onRtpMediaFlowing(meetingId, rtpParams) { - let self = this; - let strm = Messaging.generateStartTranscoderRequestMessage(meetingId, meetingId, rtpParams); - - // Interoperability: capturing 1.1 start_transcoder_reply messages - self._BigBlueButtonGW.once(C.START_TRANSCODER_REPLY, function(payload) { - let meetingId = payload[C.MEETING_ID]; - let output = payload["params"].output; - self._startRtmpBroadcast(meetingId, output); - }); - - // Capturing stop transcoder responses from the 2x model - self._BigBlueButtonGW.once(C.START_TRANSCODER_RESP_2x, function(payload) { - let meetingId = payload[C.MEETING_ID_2x]; - let output = payload["params"].output; - self._startRtmpBroadcast(meetingId, output); - }); - - - self._BigBlueButtonGW.publish(strm, C.TO_BBB_TRANSCODE_SYSTEM_CHAN, function(error) {}); - }; - - _stopRtmpBroadcast (meetingId) { - var self = this; - if(self._meetingId === meetingId) { - // TODO correctly assemble this timestamp - let timestamp = now.format('hhmmss'); - let dsrstom = Messaging.generateScreenshareRTMPBroadcastStoppedEvent2x(self._voiceBridge, - self._voiceBridge, self._streamUrl, self._vw, self._vh, timestamp); - self._BigBlueButtonGW.publish(dsrstom, C.FROM_VOICE_CONF_SYSTEM_CHAN, function(error) {}); - } - } - - _startRtmpBroadcast (meetingId, output) { - var self = this; - if(self._meetingId === meetingId) { - // TODO correctly assemble this timestamp - let timestamp = now.format('hhmmss'); - self._streamUrl = MediaHandler.generateStreamUrl(localIpAddress, meetingId, output); - let dsrbstam = Messaging.generateScreenshareRTMPBroadcastStartedEvent2x(self._voiceBridge, - self._voiceBridge, self._streamUrl, self._vw, self._vh, timestamp); - - self._BigBlueButtonGW.publish(dsrbstam, C.FROM_VOICE_CONF_SYSTEM_CHAN, function(error) {}); - } - } - - _onRtpMediaNotFlowing() { - console.log(" [screenshare] TODO RTP NOT_FLOWING"); - }; - - -}; diff --git a/labs/kurento-screenshare/package.json b/labs/kurento-screenshare/package.json deleted file mode 100644 index 187a3ab8a3f2e70c689e740178834ba1fadb5146..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/package.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "bbb-screenshare-video-kurento-bridge", - "version": "1.0.0", - "private": true, - "scripts": { - "start": "nodejs server.js", - "postinstall": "npm start" - }, - "dependencies": { - "cookie-parser": "^1.3.5", - "express": "~4.12.4", - "express-session": "~1.10.3", - "ws": "~1.0.1", - "kurento-client": "6.6.0", - "redis": "^2.6.2", - "sdp-transform": "*", - "moment": "*" - }, - "devDependencies": { - "config": "^1.26.1", - "js-yaml": "^3.8.3" - } -} diff --git a/labs/kurento-screenshare/server.js b/labs/kurento-screenshare/server.js deleted file mode 100755 index f645ac88a52ffa328944f6f775b868bda3b0ae34..0000000000000000000000000000000000000000 --- a/labs/kurento-screenshare/server.js +++ /dev/null @@ -1,11 +0,0 @@ -/* - * Paulo Renato Lanzarin - * (C) Copyright 2017 Bigbluebutton - * - */ - -const ConnectionManager = require('./lib/ConnectionManager'); -const CM = new ConnectionManager(); - -process.on('SIGTERM', CM._stopAll.bind(CM)); -process.on('SIGINT', CM._stopAll.bind(CM));